Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/plugin.xml_gen646
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/ConfigExecutableExtensionFactory.java58
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/AbstractConfigProposalProvider.java39
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/ConfigParser.java31
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g1513
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.tokens89
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigLexer.java1437
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigParser.java11894
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/internal/ConfigActivator.java190
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/ConfigUiModule.java4
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/contentassist/ConfigProposalProvider.java129
-rw-r--r--plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/linking/ConfigHyperlinkHelper.java60
-rw-r--r--plugins/org.eclipse.etrice.core.config/plugin.xml_gen34
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/AbstractConfigRuntimeModule.java324
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.ecore27
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.genmodel18
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.xmi185
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/ConfigStandaloneSetupGenerated.java86
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrClassConfig.java18
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrInstanceConfig.java77
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigFactory.java18
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigModel.java9
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigPackage.java396
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/DynamicConfig.java132
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/IntLiteral.java6
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/SubSystemConfig.java78
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrClassConfigImpl.java46
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrInstanceConfigImpl.java252
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigFactoryImpl.java24
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigModelImpl.java15
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigPackageImpl.java169
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/DynamicConfigImpl.java345
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/IntLiteralImpl.java12
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/SubSystemConfigImpl.java260
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigAdapterFactory.java40
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigSwitch.java47
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g484
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.tokens89
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigLexer.java1426
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigParser.java3274
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSemanticSequencer.java47
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSyntacticSequencer.java12
-rw-r--r--plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/services/ConfigGrammarAccess.java3558
-rw-r--r--plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/Config.xtext70
-rw-r--r--plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/ConfigPostprocessor.ext9
-rw-r--r--plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/config/util/ConfigUtil.java49
-rw-r--r--plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/converter/ConfigValueConverterService.java33
-rw-r--r--plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/formatting/ConfigFormatter.java2
-rw-r--r--plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/scoping/ConfigScopeProvider.java33
-rw-r--r--plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/validation/ConfigJavaValidator.java247
-rw-r--r--plugins/org.eclipse.etrice.core.config/xtend-gen/org/eclipse/etrice/core/generator/ConfigGenerator.java22
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/linking/ImportAwareHyperlinkHelper.java4
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/012-Working-with-Tutorials.textile4
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/013-Setting-up-the-Workspace.textile2
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/015-getting-started.textile2
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/032-Setting-up-the-Workspace_C.textile6
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/034-getting-started_C.textile296
-rw-r--r--plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/CExtensions.xtend4
-rw-r--r--plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ActorClassGen.java1562
-rw-r--r--plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/CExtensions.java486
-rw-r--r--plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/DataClassGen.java494
-rw-r--r--plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/MainGen.java120
-rw-r--r--plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ProtocolClassGen.java2370
-rw-r--r--plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/StateMachineGen.java234
-rw-r--r--plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemClassGen.java61
-rw-r--r--plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemRunnerGen.java342
-rw-r--r--plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/DocGen.java2106
-rw-r--r--plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/InstanceDiagramGen.java346
-rw-r--r--plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/MainGen.java82
-rw-r--r--plugins/org.eclipse.etrice.generator.fsmtest/xtend-gen/org/eclipse/etrice/generator/generator/.FSMtestGenerator.java._tracebin880 -> 0 bytes
-rw-r--r--plugins/org.eclipse.etrice.generator.fsmtest/xtend-gen/org/eclipse/etrice/generator/generator/FSMtestGenerator.java22
-rw-r--r--plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/ActorClassGen.xtend51
-rw-r--r--plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/ConfigGenAddon.xtend121
-rw-r--r--plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/JavaExtensions.xtend40
-rw-r--r--plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.xtend119
-rw-r--r--plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/VariableServiceGen.xtend283
-rw-r--r--plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/setup/GeneratorModule.java2
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ActorClassGen.java1307
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ConfigGenAddon.java444
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/DataClassGen.java920
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/JavaExtensions.java384
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/MainGen.java120
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ProtocolClassGen.java1580
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/StateMachineGen.java162
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.java1727
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemRunnerGen.java302
-rw-r--r--plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/VariableServiceGen.java972
-rw-r--r--plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/ConfigHelper.java83
-rw-r--r--plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ConfigExtension.xtend310
-rw-r--r--plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ILanguageExtension.java11
-rw-r--r--plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ProcedureHelpers.xtend54
-rw-r--r--plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/RoomExtensions.xtend12
-rw-r--r--plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/TypeHelpers.xtend20
-rw-r--r--plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ConfigExtension.java753
-rw-r--r--plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericActorClassGenerator.java180
-rw-r--r--plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericProtocolClassGenerator.java238
-rw-r--r--plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericStateMachineGenerator.java2784
-rw-r--r--plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/PrepareFileSystem.java162
-rw-r--r--plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ProcedureHelpers.java1692
-rw-r--r--plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/RoomExtensions.java1930
-rw-r--r--plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/TypeHelpers.java143
-rw-r--r--plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.c.zipbin16271 -> 15521 bytes
-rw-r--r--plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.java.zipbin41262 -> 41268 bytes
-rw-r--r--plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.c.zipbin126908 -> 127214 bytes
-rw-r--r--plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.java.zipbin30056 -> 36835 bytes
-rw-r--r--plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.tutorials.zipbin101307 -> 102806 bytes
106 files changed, 33194 insertions, 20318 deletions
diff --git a/plugins/org.eclipse.etrice.core.config.ui/plugin.xml_gen b/plugins/org.eclipse.etrice.core.config.ui/plugin.xml_gen
index dd4224394..b8d0938cc 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/plugin.xml_gen
+++ b/plugins/org.eclipse.etrice.core.config.ui/plugin.xml_gen
@@ -1,323 +1,323 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
- <extension
- point="org.eclipse.ui.editors">
- <editor
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
- contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
- default="true"
- extensions="config"
- id="org.eclipse.etrice.core.Config"
- name="Config Editor">
- </editor>
- </extension>
- <extension
- point="org.eclipse.ui.handlers">
- <handler
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
- commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
- <activeWhen>
- <reference
- definitionId="org.eclipse.etrice.core.Config.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- <handler
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
- commandId="org.eclipse.etrice.core.Config.validate">
- <activeWhen>
- <reference
- definitionId="org.eclipse.etrice.core.Config.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- </extension>
- <extension point="org.eclipse.core.expressions.definitions">
- <definition id="org.eclipse.etrice.core.Config.Editor.opened">
- <and>
- <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
- <with variable="activeEditor">
- <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
- value="org.eclipse.etrice.core.Config"
- forcePluginActivation="true"/>
- </with>
- </and>
- </definition>
- </extension>
- <extension
- point="org.eclipse.ui.preferencePages">
- <page
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
- id="org.eclipse.etrice.core.Config"
- name="Config">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
- </page>
- <page
- category="org.eclipse.etrice.core.Config"
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
- id="org.eclipse.etrice.core.Config.coloring"
- name="Syntax Coloring">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
- </page>
- <page
- category="org.eclipse.etrice.core.Config"
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
- id="org.eclipse.etrice.core.Config.templates"
- name="Templates">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
- </page>
- </extension>
- <extension
- point="org.eclipse.ui.propertyPages">
- <page
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
- id="org.eclipse.etrice.core.Config"
- name="Config">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
- <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.ui.keyword_Config"
- label="Config"/>
- </extension>
- <extension
- point="org.eclipse.ui.commands">
- <command
- description="Trigger expensive validation"
- id="org.eclipse.etrice.core.Config.validate"
- name="Validate">
- </command>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution
- locationURI="popup:#TextEditorContext?after=group.edit">
- <command
- commandId="org.eclipse.etrice.core.Config.validate"
- style="push"
- tooltip="Trigger expensive validation">
- <visibleWhen checkEnabled="false">
- <reference
- definitionId="org.eclipse.etrice.core.Config.Editor.opened">
- </reference>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
- <command commandId="org.eclipse.xtext.ui.editor.FindReferences">
- <visibleWhen checkEnabled="false">
- <reference definitionId="org.eclipse.etrice.core.Config.Editor.opened">
- </reference>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension point="org.eclipse.ui.handlers">
- <handler
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
- commandId="org.eclipse.xtext.ui.editor.FindReferences">
- <activeWhen>
- <reference
- definitionId="org.eclipse.etrice.core.Config.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- </extension>
-
-<!-- adding resource factories -->
-
- <extension
- point="org.eclipse.emf.ecore.extension_parser">
- <parser
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
- type="config">
- </parser>
- </extension>
- <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
- <resourceServiceProvider
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
- uriExtension="config">
- </resourceServiceProvider>
- </extension>
-
-
- <!-- marker definitions for org.eclipse.etrice.core.Config -->
- <extension
- id="config.check.fast"
- name="Config Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.fast"/>
- <persistent value="true"/>
- </extension>
- <extension
- id="config.check.normal"
- name="Config Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.normal"/>
- <persistent value="true"/>
- </extension>
- <extension
- id="config.check.expensive"
- name="Config 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.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant">
- </participant>
- </extension>
- <extension
- point="org.eclipse.ui.preferencePages">
- <page
- category="org.eclipse.etrice.core.Config"
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
- id="org.eclipse.etrice.core.Config.compiler.preferencePage"
- name="Compiler">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
- </page>
- </extension>
- <extension
- point="org.eclipse.ui.propertyPages">
- <page
- category="org.eclipse.etrice.core.Config"
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
- id="org.eclipse.etrice.core.Config.compiler.propertyPage"
- name="Compiler">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
- <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.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
- commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
- <activeWhen>
- <reference
- definitionId="org.eclipse.etrice.core.Config.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.Config.Editor.opened"/>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <!-- quickfix marker resolution generator for org.eclipse.etrice.core.Config -->
- <extension
- point="org.eclipse.ui.ide.markerResolution">
- <markerResolutionGenerator
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.etrice.core.ui.config.check.fast">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.etrice.core.ui.config.check.normal">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.eclipse.etrice.core.ui.config.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.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.IRenameElementHandler"
- commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
- <activeWhen>
- <reference
- definitionId="org.eclipse.etrice.core.Config.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.Config.Editor.opened">
- </reference>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension point="org.eclipse.ui.preferencePages">
- <page
- category="org.eclipse.etrice.core.Config"
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
- id="org.eclipse.etrice.core.Config.refactoring"
- name="Refactoring">
- <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
- </page>
- </extension>
-
- <extension point="org.eclipse.compare.contentViewers">
- <viewer id="org.eclipse.etrice.core.Config.compare.contentViewers"
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
- extensions="config">
- </viewer>
- </extension>
- <extension point="org.eclipse.compare.contentMergeViewers">
- <viewer id="org.eclipse.etrice.core.Config.compare.contentMergeViewers"
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
- extensions="config" label="Config Compare">
- </viewer>
- </extension>
- <extension point="org.eclipse.ui.editors.documentProviders">
- <provider id="org.eclipse.etrice.core.Config.editors.documentProviders"
- class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
- extensions="config">
- </provider>
- </extension>
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<plugin>
+
+ <extension
+ point="org.eclipse.ui.editors">
+ <editor
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
+ contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
+ default="true"
+ extensions="config"
+ id="org.eclipse.etrice.core.Config"
+ name="Config Editor">
+ </editor>
+ </extension>
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
+ commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.Config.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
+ commandId="org.eclipse.etrice.core.Config.validate">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.Config.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension point="org.eclipse.core.expressions.definitions">
+ <definition id="org.eclipse.etrice.core.Config.Editor.opened">
+ <and>
+ <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
+ <with variable="activeEditor">
+ <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
+ value="org.eclipse.etrice.core.Config"
+ forcePluginActivation="true"/>
+ </with>
+ </and>
+ </definition>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+ id="org.eclipse.etrice.core.Config"
+ name="Config">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
+ </page>
+ <page
+ category="org.eclipse.etrice.core.Config"
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
+ id="org.eclipse.etrice.core.Config.coloring"
+ name="Syntax Coloring">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
+ </page>
+ <page
+ category="org.eclipse.etrice.core.Config"
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
+ id="org.eclipse.etrice.core.Config.templates"
+ name="Templates">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.propertyPages">
+ <page
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+ id="org.eclipse.etrice.core.Config"
+ name="Config">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
+ <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.ui.keyword_Config"
+ label="Config"/>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ description="Trigger expensive validation"
+ id="org.eclipse.etrice.core.Config.validate"
+ name="Validate">
+ </command>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.edit">
+ <command
+ commandId="org.eclipse.etrice.core.Config.validate"
+ style="push"
+ tooltip="Trigger expensive validation">
+ <visibleWhen checkEnabled="false">
+ <reference
+ definitionId="org.eclipse.etrice.core.Config.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
+ <command commandId="org.eclipse.xtext.ui.editor.FindReferences">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.eclipse.etrice.core.Config.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
+ commandId="org.eclipse.xtext.ui.editor.FindReferences">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.Config.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+
+<!-- adding resource factories -->
+
+ <extension
+ point="org.eclipse.emf.ecore.extension_parser">
+ <parser
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
+ type="config">
+ </parser>
+ </extension>
+ <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
+ <resourceServiceProvider
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
+ uriExtension="config">
+ </resourceServiceProvider>
+ </extension>
+
+
+ <!-- marker definitions for org.eclipse.etrice.core.Config -->
+ <extension
+ id="config.check.fast"
+ name="Config Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.fast"/>
+ <persistent value="true"/>
+ </extension>
+ <extension
+ id="config.check.normal"
+ name="Config Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.normal"/>
+ <persistent value="true"/>
+ </extension>
+ <extension
+ id="config.check.expensive"
+ name="Config 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.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant">
+ </participant>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.eclipse.etrice.core.Config"
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
+ id="org.eclipse.etrice.core.Config.compiler.preferencePage"
+ name="Compiler">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.propertyPages">
+ <page
+ category="org.eclipse.etrice.core.Config"
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
+ id="org.eclipse.etrice.core.Config.compiler.propertyPage"
+ name="Compiler">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
+ <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.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
+ commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.Config.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.Config.Editor.opened"/>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <!-- quickfix marker resolution generator for org.eclipse.etrice.core.Config -->
+ <extension
+ point="org.eclipse.ui.ide.markerResolution">
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.eclipse.etrice.core.ui.config.check.fast">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.eclipse.etrice.core.ui.config.check.normal">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ <markerResolutionGenerator
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.eclipse.etrice.core.ui.config.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.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.IRenameElementHandler"
+ commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.etrice.core.Config.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.Config.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.eclipse.etrice.core.Config"
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
+ id="org.eclipse.etrice.core.Config.refactoring"
+ name="Refactoring">
+ <keywordReference id="org.eclipse.etrice.core.ui.keyword_Config"/>
+ </page>
+ </extension>
+
+ <extension point="org.eclipse.compare.contentViewers">
+ <viewer id="org.eclipse.etrice.core.Config.compare.contentViewers"
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
+ extensions="config">
+ </viewer>
+ </extension>
+ <extension point="org.eclipse.compare.contentMergeViewers">
+ <viewer id="org.eclipse.etrice.core.Config.compare.contentMergeViewers"
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
+ extensions="config" label="Config Compare">
+ </viewer>
+ </extension>
+ <extension point="org.eclipse.ui.editors.documentProviders">
+ <provider id="org.eclipse.etrice.core.Config.editors.documentProviders"
+ class="org.eclipse.etrice.core.ui.ConfigExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
+ extensions="config">
+ </provider>
+ </extension>
+
+</plugin>
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/ConfigExecutableExtensionFactory.java b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/ConfigExecutableExtensionFactory.java
index 6695a3260..24bd98894 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/ConfigExecutableExtensionFactory.java
+++ b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/ConfigExecutableExtensionFactory.java
@@ -1,29 +1,29 @@
-/*
- * generated by Xtext
- */
-package org.eclipse.etrice.core.ui;
-
-import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory;
-import org.osgi.framework.Bundle;
-
-import com.google.inject.Injector;
-
-import org.eclipse.etrice.core.ui.internal.ConfigActivator;
-
-/**
- * This class was generated. Customizations should only happen in a newly
- * introduced subclass.
- */
-public class ConfigExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
-
- @Override
- protected Bundle getBundle() {
- return ConfigActivator.getInstance().getBundle();
- }
-
- @Override
- protected Injector getInjector() {
- return ConfigActivator.getInstance().getInjector(ConfigActivator.ORG_ECLIPSE_ETRICE_CORE_CONFIG);
- }
-
-}
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.ui;
+
+import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory;
+import org.osgi.framework.Bundle;
+
+import com.google.inject.Injector;
+
+import org.eclipse.etrice.core.ui.internal.ConfigActivator;
+
+/**
+ * This class was generated. Customizations should only happen in a newly
+ * introduced subclass.
+ */
+public class ConfigExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
+
+ @Override
+ protected Bundle getBundle() {
+ return ConfigActivator.getInstance().getBundle();
+ }
+
+ @Override
+ protected Injector getInjector() {
+ return ConfigActivator.getInstance().getInjector(ConfigActivator.ORG_ECLIPSE_ETRICE_CORE_CONFIG);
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/AbstractConfigProposalProvider.java b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/AbstractConfigProposalProvider.java
index d817ef1bd..68d44716f 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/AbstractConfigProposalProvider.java
+++ b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/AbstractConfigProposalProvider.java
@@ -23,6 +23,24 @@ public class AbstractConfigProposalProvider extends TerminalsProposalProvider {
public void completeConfigModel_ConfigElements(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
}
+ public void completeSubSystemConfig_SubSystem(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
+ }
+ public void completeSubSystemConfig_DynConfig(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+ }
+ public void completeDynamicConfig_FilePath(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+ }
+ public void completeDynamicConfig_UserCode1(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+ }
+ public void completeDynamicConfig_UserCode2(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+ }
+ public void completeDynamicConfig_Polling(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+ }
public void completeActorClassConfig_Actor(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
}
@@ -71,12 +89,24 @@ public class AbstractConfigProposalProvider extends TerminalsProposalProvider {
public void completeAttrClassConfig_Max(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
}
+ public void completeAttrClassConfig_Attributes(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+ }
public void completeAttrInstanceConfig_Attribute(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
}
public void completeAttrInstanceConfig_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
}
+ public void completeAttrInstanceConfig_DynConfig(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ // subclasses may override
+ }
+ public void completeAttrInstanceConfig_ReadOnly(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ // subclasses may override
+ }
+ public void completeAttrInstanceConfig_Attributes(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+ }
public void completeRefPath_Refs(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
}
@@ -108,6 +138,12 @@ public class AbstractConfigProposalProvider extends TerminalsProposalProvider {
public void complete_ConfigElement(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
// subclasses may override
}
+ public void complete_SubSystemConfig(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ // subclasses may override
+ }
+ public void complete_DynamicConfig(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ // subclasses may override
+ }
public void complete_ActorClassConfig(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
// subclasses may override
}
@@ -189,6 +225,9 @@ public class AbstractConfigProposalProvider extends TerminalsProposalProvider {
public void complete_DecimalExp(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
// subclasses may override
}
+ public void complete_EXP(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ // subclasses may override
+ }
public void complete_HEX(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
// subclasses may override
}
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/ConfigParser.java b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/ConfigParser.java
index 2c625849c..5457f00db 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/ConfigParser.java
+++ b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/ConfigParser.java
@@ -38,7 +38,9 @@ public class ConfigParser extends AbstractContentAssistParser {
private static final long serialVersionUID = 1L;
{
put(grammarAccess.getConfigElementAccess().getAlternatives(), "rule__ConfigElement__Alternatives");
+ put(grammarAccess.getDynamicConfigAccess().getAlternatives_2_0(), "rule__DynamicConfig__Alternatives_2_0");
put(grammarAccess.getAttrConfigAccess().getAlternatives(), "rule__AttrConfig__Alternatives");
+ put(grammarAccess.getAttrInstanceConfigAccess().getAlternatives_3_1_0_1(), "rule__AttrInstanceConfig__Alternatives_3_1_0_1");
put(grammarAccess.getImportAccess().getAlternatives_1(), "rule__Import__Alternatives_1");
put(grammarAccess.getLiteralAccess().getAlternatives(), "rule__Literal__Alternatives");
put(grammarAccess.getBooleanLiteralAccess().getAlternatives_1(), "rule__BooleanLiteral__Alternatives_1");
@@ -50,8 +52,14 @@ public class ConfigParser extends AbstractContentAssistParser {
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.getDecimalExpAccess().getAlternatives_5(), "rule__DecimalExp__Alternatives_5");
put(grammarAccess.getConfigModelAccess().getGroup(), "rule__ConfigModel__Group__0");
+ put(grammarAccess.getSubSystemConfigAccess().getGroup(), "rule__SubSystemConfig__Group__0");
+ put(grammarAccess.getDynamicConfigAccess().getGroup(), "rule__DynamicConfig__Group__0");
+ put(grammarAccess.getDynamicConfigAccess().getGroup_2_0_0(), "rule__DynamicConfig__Group_2_0_0__0");
+ put(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1(), "rule__DynamicConfig__Group_2_0_1__0");
+ put(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_0(), "rule__DynamicConfig__Group_2_0_1_0__0");
+ put(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_1(), "rule__DynamicConfig__Group_2_0_1_1__0");
+ put(grammarAccess.getDynamicConfigAccess().getGroup_2_1(), "rule__DynamicConfig__Group_2_1__0");
put(grammarAccess.getActorClassConfigAccess().getGroup(), "rule__ActorClassConfig__Group__0");
put(grammarAccess.getActorInstanceConfigAccess().getGroup(), "rule__ActorInstanceConfig__Group__0");
put(grammarAccess.getProtocolClassConfigAccess().getGroup(), "rule__ProtocolClassConfig__Group__0");
@@ -62,10 +70,14 @@ public class ConfigParser extends AbstractContentAssistParser {
put(grammarAccess.getAttrClassConfigAccess().getGroup(), "rule__AttrClassConfig__Group__0");
put(grammarAccess.getAttrClassConfigAccess().getGroup_2(), "rule__AttrClassConfig__Group_2__0");
put(grammarAccess.getAttrClassConfigAccess().getGroup_3(), "rule__AttrClassConfig__Group_3__0");
+ put(grammarAccess.getAttrClassConfigAccess().getGroup_3_1(), "rule__AttrClassConfig__Group_3_1__0");
put(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_0(), "rule__AttrClassConfig__Group_3_1_0__0");
put(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_1(), "rule__AttrClassConfig__Group_3_1_1__0");
put(grammarAccess.getAttrInstanceConfigAccess().getGroup(), "rule__AttrInstanceConfig__Group__0");
put(grammarAccess.getAttrInstanceConfigAccess().getGroup_2(), "rule__AttrInstanceConfig__Group_2__0");
+ put(grammarAccess.getAttrInstanceConfigAccess().getGroup_3(), "rule__AttrInstanceConfig__Group_3__0");
+ put(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1(), "rule__AttrInstanceConfig__Group_3_1__0");
+ put(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1_0(), "rule__AttrInstanceConfig__Group_3_1_0__0");
put(grammarAccess.getRefPathAccess().getGroup(), "rule__RefPath__Group__0");
put(grammarAccess.getRefPathAccess().getGroup_1(), "rule__RefPath__Group_1__0");
put(grammarAccess.getImportAccess().getGroup(), "rule__Import__Group__0");
@@ -86,12 +98,18 @@ public class ConfigParser extends AbstractContentAssistParser {
put(grammarAccess.getDecimalExpAccess().getGroup(), "rule__DecimalExp__Group__0");
put(grammarAccess.getConfigModelAccess().getImportsAssignment_0(), "rule__ConfigModel__ImportsAssignment_0");
put(grammarAccess.getConfigModelAccess().getConfigElementsAssignment_1(), "rule__ConfigModel__ConfigElementsAssignment_1");
+ put(grammarAccess.getSubSystemConfigAccess().getSubSystemAssignment_1(), "rule__SubSystemConfig__SubSystemAssignment_1");
+ put(grammarAccess.getSubSystemConfigAccess().getDynConfigAssignment_3(), "rule__SubSystemConfig__DynConfigAssignment_3");
+ put(grammarAccess.getDynamicConfigAccess().getFilePathAssignment_2_0_0_1(), "rule__DynamicConfig__FilePathAssignment_2_0_0_1");
+ put(grammarAccess.getDynamicConfigAccess().getUserCode1Assignment_2_0_1_0_1(), "rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1");
+ put(grammarAccess.getDynamicConfigAccess().getUserCode2Assignment_2_0_1_1_1(), "rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1");
+ put(grammarAccess.getDynamicConfigAccess().getPollingAssignment_2_1_1(), "rule__DynamicConfig__PollingAssignment_2_1_1");
put(grammarAccess.getActorClassConfigAccess().getActorAssignment_1(), "rule__ActorClassConfig__ActorAssignment_1");
put(grammarAccess.getActorClassConfigAccess().getAttributesAssignment_3(), "rule__ActorClassConfig__AttributesAssignment_3");
put(grammarAccess.getActorInstanceConfigAccess().getRootAssignment_1(), "rule__ActorInstanceConfig__RootAssignment_1");
put(grammarAccess.getActorInstanceConfigAccess().getPathAssignment_3(), "rule__ActorInstanceConfig__PathAssignment_3");
- put(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5(), "rule__ActorInstanceConfig__AttributesAssignment_5");
- put(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_6(), "rule__ActorInstanceConfig__PortsAssignment_6");
+ put(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5_0(), "rule__ActorInstanceConfig__AttributesAssignment_5_0");
+ put(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_5_1(), "rule__ActorInstanceConfig__PortsAssignment_5_1");
put(grammarAccess.getProtocolClassConfigAccess().getProtocolAssignment_1(), "rule__ProtocolClassConfig__ProtocolAssignment_1");
put(grammarAccess.getProtocolClassConfigAccess().getRegularAssignment_3_0_1(), "rule__ProtocolClassConfig__RegularAssignment_3_0_1");
put(grammarAccess.getProtocolClassConfigAccess().getConjugatedAssignment_3_1_1(), "rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1");
@@ -102,8 +120,12 @@ public class ConfigParser extends AbstractContentAssistParser {
put(grammarAccess.getAttrClassConfigAccess().getValueAssignment_2_1(), "rule__AttrClassConfig__ValueAssignment_2_1");
put(grammarAccess.getAttrClassConfigAccess().getMinAssignment_3_1_0_2(), "rule__AttrClassConfig__MinAssignment_3_1_0_2");
put(grammarAccess.getAttrClassConfigAccess().getMaxAssignment_3_1_1_2(), "rule__AttrClassConfig__MaxAssignment_3_1_1_2");
+ put(grammarAccess.getAttrClassConfigAccess().getAttributesAssignment_3_1_2(), "rule__AttrClassConfig__AttributesAssignment_3_1_2");
put(grammarAccess.getAttrInstanceConfigAccess().getAttributeAssignment_1(), "rule__AttrInstanceConfig__AttributeAssignment_1");
put(grammarAccess.getAttrInstanceConfigAccess().getValueAssignment_2_1(), "rule__AttrInstanceConfig__ValueAssignment_2_1");
+ put(grammarAccess.getAttrInstanceConfigAccess().getDynConfigAssignment_3_1_0_0(), "rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0");
+ put(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyAssignment_3_1_0_1_0(), "rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0");
+ put(grammarAccess.getAttrInstanceConfigAccess().getAttributesAssignment_3_1_1(), "rule__AttrInstanceConfig__AttributesAssignment_3_1_1");
put(grammarAccess.getRefPathAccess().getRefsAssignment_0(), "rule__RefPath__RefsAssignment_0");
put(grammarAccess.getRefPathAccess().getRefsAssignment_1_1(), "rule__RefPath__RefsAssignment_1_1");
put(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1_0_0(), "rule__Import__ImportedNamespaceAssignment_1_0_0");
@@ -114,8 +136,9 @@ public class ConfigParser extends AbstractContentAssistParser {
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");
+ put(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), "rule__DynamicConfig__UnorderedGroup_2");
+ put(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), "rule__ActorInstanceConfig__UnorderedGroup_5");
put(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), "rule__ProtocolClassConfig__UnorderedGroup_3");
- put(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), "rule__AttrClassConfig__UnorderedGroup_3_1");
}
};
}
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g
index c2b53be4c..5d0a419d7 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g
+++ b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g
@@ -112,6 +112,62 @@ finally {
+// Entry rule entryRuleSubSystemConfig
+entryRuleSubSystemConfig
+:
+{ before(grammarAccess.getSubSystemConfigRule()); }
+ ruleSubSystemConfig
+{ after(grammarAccess.getSubSystemConfigRule()); }
+ EOF
+;
+
+// Rule SubSystemConfig
+ruleSubSystemConfig
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getSubSystemConfigAccess().getGroup()); }
+(rule__SubSystemConfig__Group__0)
+{ after(grammarAccess.getSubSystemConfigAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleDynamicConfig
+entryRuleDynamicConfig
+:
+{ before(grammarAccess.getDynamicConfigRule()); }
+ ruleDynamicConfig
+{ after(grammarAccess.getDynamicConfigRule()); }
+ EOF
+;
+
+// Rule DynamicConfig
+ruleDynamicConfig
+ @init {
+ int stackSize = keepStackSize();
+ }
+ :
+(
+{ before(grammarAccess.getDynamicConfigAccess().getGroup()); }
+(rule__DynamicConfig__Group__0)
+{ after(grammarAccess.getDynamicConfigAccess().getGroup()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
// Entry rule entryRuleActorClassConfig
entryRuleActorClassConfig
:
@@ -897,21 +953,49 @@ rule__ConfigElement__Alternatives
}
:
(
-{ before(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_0()); }
+{ before(grammarAccess.getConfigElementAccess().getSubSystemConfigParserRuleCall_0()); }
+ ruleSubSystemConfig
+{ after(grammarAccess.getConfigElementAccess().getSubSystemConfigParserRuleCall_0()); }
+)
+
+ |(
+{ before(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_1()); }
ruleActorClassConfig
-{ after(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_0()); }
+{ after(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_1()); }
)
|(
-{ before(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_1()); }
+{ before(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_2()); }
ruleActorInstanceConfig
-{ after(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_1()); }
+{ after(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_2()); }
)
|(
-{ before(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_2()); }
+{ before(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_3()); }
ruleProtocolClassConfig
-{ after(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_2()); }
+{ after(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Alternatives_2_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getGroup_2_0_0()); }
+(rule__DynamicConfig__Group_2_0_0__0)
+{ after(grammarAccess.getDynamicConfigAccess().getGroup_2_0_0()); }
+)
+
+ |(
+{ before(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1()); }
+(rule__DynamicConfig__Group_2_0_1__0)
+{ after(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1()); }
)
;
@@ -920,6 +1004,30 @@ finally {
}
+rule__AttrInstanceConfig__Alternatives_3_1_0_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyAssignment_3_1_0_1_0()); }
+(rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0)
+{ after(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyAssignment_3_1_0_1_0()); }
+)
+
+ |(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getWriteKeyword_3_1_0_1_1()); }
+
+ 'write'
+
+{ after(grammarAccess.getAttrInstanceConfigAccess().getWriteKeyword_3_1_0_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
rule__Import__Alternatives_1
@init {
int stackSize = keepStackSize();
@@ -1204,25 +1312,92 @@ finally {
restoreStackSize(stackSize);
}
-rule__DecimalExp__Alternatives_5
+
+
+rule__ConfigModel__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ConfigModel__Group__0__Impl
+ rule__ConfigModel__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ConfigModel__Group__0__Impl
@init {
int stackSize = keepStackSize();
}
:
(
-{ before(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_5_0()); }
+{ before(grammarAccess.getConfigModelAccess().getImportsAssignment_0()); }
+(rule__ConfigModel__ImportsAssignment_0)*
+{ after(grammarAccess.getConfigModelAccess().getImportsAssignment_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
- '+'
-{ after(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_5_0()); }
+rule__ConfigModel__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__ConfigModel__Group__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__ConfigModel__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getConfigModelAccess().getConfigElementsAssignment_1()); }
+(rule__ConfigModel__ConfigElementsAssignment_1)*
+{ after(grammarAccess.getConfigModelAccess().getConfigElementsAssignment_1()); }
)
- |(
-{ before(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_5_1()); }
+;
+finally {
+ restoreStackSize(stackSize);
+}
- '-'
-{ after(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_5_1()); }
+
+
+
+
+rule__SubSystemConfig__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemConfig__Group__0__Impl
+ rule__SubSystemConfig__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemConfig__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemConfigAccess().getSubSystemConfigKeyword_0()); }
+
+ 'SubSystemConfig'
+
+{ after(grammarAccess.getSubSystemConfigAccess().getSubSystemConfigKeyword_0()); }
)
;
@@ -1231,28 +1406,58 @@ finally {
}
+rule__SubSystemConfig__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemConfig__Group__1__Impl
+ rule__SubSystemConfig__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
-rule__ConfigModel__Group__0
+rule__SubSystemConfig__Group__1__Impl
@init {
int stackSize = keepStackSize();
}
:
- rule__ConfigModel__Group__0__Impl
- rule__ConfigModel__Group__1
+(
+{ before(grammarAccess.getSubSystemConfigAccess().getSubSystemAssignment_1()); }
+(rule__SubSystemConfig__SubSystemAssignment_1)
+{ after(grammarAccess.getSubSystemConfigAccess().getSubSystemAssignment_1()); }
+)
+
;
finally {
restoreStackSize(stackSize);
}
-rule__ConfigModel__Group__0__Impl
+
+rule__SubSystemConfig__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemConfig__Group__2__Impl
+ rule__SubSystemConfig__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemConfig__Group__2__Impl
@init {
int stackSize = keepStackSize();
}
:
(
-{ before(grammarAccess.getConfigModelAccess().getImportsAssignment_0()); }
-(rule__ConfigModel__ImportsAssignment_0)*
-{ after(grammarAccess.getConfigModelAccess().getImportsAssignment_0()); }
+{ before(grammarAccess.getSubSystemConfigAccess().getLeftCurlyBracketKeyword_2()); }
+
+ '{'
+
+{ after(grammarAccess.getSubSystemConfigAccess().getLeftCurlyBracketKeyword_2()); }
)
;
@@ -1261,26 +1466,505 @@ finally {
}
-rule__ConfigModel__Group__1
+rule__SubSystemConfig__Group__3
@init {
int stackSize = keepStackSize();
}
:
- rule__ConfigModel__Group__1__Impl
+ rule__SubSystemConfig__Group__3__Impl
+ rule__SubSystemConfig__Group__4
;
finally {
restoreStackSize(stackSize);
}
-rule__ConfigModel__Group__1__Impl
+rule__SubSystemConfig__Group__3__Impl
@init {
int stackSize = keepStackSize();
}
:
(
-{ before(grammarAccess.getConfigModelAccess().getConfigElementsAssignment_1()); }
-(rule__ConfigModel__ConfigElementsAssignment_1)*
-{ after(grammarAccess.getConfigModelAccess().getConfigElementsAssignment_1()); }
+{ before(grammarAccess.getSubSystemConfigAccess().getDynConfigAssignment_3()); }
+(rule__SubSystemConfig__DynConfigAssignment_3)
+{ after(grammarAccess.getSubSystemConfigAccess().getDynConfigAssignment_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__SubSystemConfig__Group__4
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__SubSystemConfig__Group__4__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemConfig__Group__4__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemConfigAccess().getRightCurlyBracketKeyword_4()); }
+
+ '}'
+
+{ after(grammarAccess.getSubSystemConfigAccess().getRightCurlyBracketKeyword_4()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+rule__DynamicConfig__Group__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group__0__Impl
+ rule__DynamicConfig__Group__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getDynamicConfigurationKeyword_0()); }
+
+ 'dynamic configuration'
+
+{ after(grammarAccess.getDynamicConfigAccess().getDynamicConfigurationKeyword_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DynamicConfig__Group__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group__1__Impl
+ rule__DynamicConfig__Group__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getLeftCurlyBracketKeyword_1()); }
+
+ '{'
+
+{ after(grammarAccess.getDynamicConfigAccess().getLeftCurlyBracketKeyword_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DynamicConfig__Group__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group__2__Impl
+ rule__DynamicConfig__Group__3
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2()); }
+(rule__DynamicConfig__UnorderedGroup_2)
+{ after(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DynamicConfig__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getRightCurlyBracketKeyword_3()); }
+
+ '}'
+
+{ after(grammarAccess.getDynamicConfigAccess().getRightCurlyBracketKeyword_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+rule__DynamicConfig__Group_2_0_0__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_0_0__0__Impl
+ rule__DynamicConfig__Group_2_0_0__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_0_0__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getFilePathKeyword_2_0_0_0()); }
+
+ 'file path'
+
+{ after(grammarAccess.getDynamicConfigAccess().getFilePathKeyword_2_0_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DynamicConfig__Group_2_0_0__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_0_0__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_0_0__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getFilePathAssignment_2_0_0_1()); }
+(rule__DynamicConfig__FilePathAssignment_2_0_0_1)
+{ after(grammarAccess.getDynamicConfigAccess().getFilePathAssignment_2_0_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__DynamicConfig__Group_2_0_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_0_1__0__Impl
+ rule__DynamicConfig__Group_2_0_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_0_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_0()); }
+(rule__DynamicConfig__Group_2_0_1_0__0)
+{ after(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DynamicConfig__Group_2_0_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_0_1__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_0_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_1()); }
+(rule__DynamicConfig__Group_2_0_1_1__0)
+{ after(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__DynamicConfig__Group_2_0_1_0__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_0_1_0__0__Impl
+ rule__DynamicConfig__Group_2_0_1_0__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_0_1_0__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getUserImportKeyword_2_0_1_0_0()); }
+
+ 'user import'
+
+{ after(grammarAccess.getDynamicConfigAccess().getUserImportKeyword_2_0_1_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DynamicConfig__Group_2_0_1_0__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_0_1_0__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_0_1_0__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getUserCode1Assignment_2_0_1_0_1()); }
+(rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1)
+{ after(grammarAccess.getDynamicConfigAccess().getUserCode1Assignment_2_0_1_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__DynamicConfig__Group_2_0_1_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_0_1_1__0__Impl
+ rule__DynamicConfig__Group_2_0_1_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_0_1_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getUserConstructorKeyword_2_0_1_1_0()); }
+
+ 'user constructor'
+
+{ after(grammarAccess.getDynamicConfigAccess().getUserConstructorKeyword_2_0_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DynamicConfig__Group_2_0_1_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_0_1_1__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_0_1_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getUserCode2Assignment_2_0_1_1_1()); }
+(rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1)
+{ after(grammarAccess.getDynamicConfigAccess().getUserCode2Assignment_2_0_1_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__DynamicConfig__Group_2_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_1__0__Impl
+ rule__DynamicConfig__Group_2_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getPollingTimerMsKeyword_2_1_0()); }
+
+ 'polling timer [ms]'
+
+{ after(grammarAccess.getDynamicConfigAccess().getPollingTimerMsKeyword_2_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__DynamicConfig__Group_2_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__DynamicConfig__Group_2_1__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__Group_2_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getPollingAssignment_2_1_1()); }
+(rule__DynamicConfig__PollingAssignment_2_1_1)
+{ after(grammarAccess.getDynamicConfigAccess().getPollingAssignment_2_1_1()); }
)
;
@@ -1622,9 +2306,9 @@ rule__ActorInstanceConfig__Group__5__Impl
}
:
(
-{ before(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5()); }
-(rule__ActorInstanceConfig__AttributesAssignment_5)*
-{ after(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5()); }
+{ before(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5()); }
+(rule__ActorInstanceConfig__UnorderedGroup_5)
+{ after(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5()); }
)
;
@@ -1639,7 +2323,6 @@ rule__ActorInstanceConfig__Group__6
}
:
rule__ActorInstanceConfig__Group__6__Impl
- rule__ActorInstanceConfig__Group__7
;
finally {
restoreStackSize(stackSize);
@@ -1651,39 +2334,11 @@ rule__ActorInstanceConfig__Group__6__Impl
}
:
(
-{ before(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_6()); }
-(rule__ActorInstanceConfig__PortsAssignment_6)*
-{ after(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_6()); }
-)
-
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-
-rule__ActorInstanceConfig__Group__7
- @init {
- int stackSize = keepStackSize();
- }
-:
- rule__ActorInstanceConfig__Group__7__Impl
-;
-finally {
- restoreStackSize(stackSize);
-}
-
-rule__ActorInstanceConfig__Group__7__Impl
- @init {
- int stackSize = keepStackSize();
- }
-:
-(
-{ before(grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_7()); }
+{ before(grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_6()); }
'}'
-{ after(grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_7()); }
+{ after(grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_6()); }
)
;
@@ -1706,8 +2361,6 @@ finally {
-
-
rule__ProtocolClassConfig__Group__0
@init {
int stackSize = keepStackSize();
@@ -2553,9 +3206,9 @@ rule__AttrClassConfig__Group_3__1__Impl
}
:
(
-{ before(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1()); }
-(rule__AttrClassConfig__UnorderedGroup_3_1)
-{ after(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1()); }
+{ before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1()); }
+(rule__AttrClassConfig__Group_3_1__0)
+{ after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1()); }
)
;
@@ -2600,6 +3253,98 @@ finally {
+rule__AttrClassConfig__Group_3_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrClassConfig__Group_3_1__0__Impl
+ rule__AttrClassConfig__Group_3_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrClassConfig__Group_3_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_0()); }
+(rule__AttrClassConfig__Group_3_1_0__0)?
+{ after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__AttrClassConfig__Group_3_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrClassConfig__Group_3_1__1__Impl
+ rule__AttrClassConfig__Group_3_1__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrClassConfig__Group_3_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_1()); }
+(rule__AttrClassConfig__Group_3_1_1__0)?
+{ after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__AttrClassConfig__Group_3_1__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrClassConfig__Group_3_1__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrClassConfig__Group_3_1__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrClassConfigAccess().getAttributesAssignment_3_1_2()); }
+(rule__AttrClassConfig__AttributesAssignment_3_1_2)*
+{ after(grammarAccess.getAttrClassConfigAccess().getAttributesAssignment_3_1_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
rule__AttrClassConfig__Group_3_1_0__0
@init {
int stackSize = keepStackSize();
@@ -2858,6 +3603,7 @@ rule__AttrInstanceConfig__Group__2
}
:
rule__AttrInstanceConfig__Group__2__Impl
+ rule__AttrInstanceConfig__Group__3
;
finally {
restoreStackSize(stackSize);
@@ -2880,6 +3626,36 @@ finally {
}
+rule__AttrInstanceConfig__Group__3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrInstanceConfig__Group__3__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__Group__3__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getGroup_3()); }
+(rule__AttrInstanceConfig__Group_3__0)?
+{ after(grammarAccess.getAttrInstanceConfigAccess().getGroup_3()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
@@ -2949,6 +3725,224 @@ finally {
+rule__AttrInstanceConfig__Group_3__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrInstanceConfig__Group_3__0__Impl
+ rule__AttrInstanceConfig__Group_3__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__Group_3__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getLeftCurlyBracketKeyword_3_0()); }
+
+ '{'
+
+{ after(grammarAccess.getAttrInstanceConfigAccess().getLeftCurlyBracketKeyword_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__AttrInstanceConfig__Group_3__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrInstanceConfig__Group_3__1__Impl
+ rule__AttrInstanceConfig__Group_3__2
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__Group_3__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1()); }
+(rule__AttrInstanceConfig__Group_3_1__0)
+{ after(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__AttrInstanceConfig__Group_3__2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrInstanceConfig__Group_3__2__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__Group_3__2__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getRightCurlyBracketKeyword_3_2()); }
+
+ '}'
+
+{ after(grammarAccess.getAttrInstanceConfigAccess().getRightCurlyBracketKeyword_3_2()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__AttrInstanceConfig__Group_3_1__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrInstanceConfig__Group_3_1__0__Impl
+ rule__AttrInstanceConfig__Group_3_1__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__Group_3_1__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1_0()); }
+(rule__AttrInstanceConfig__Group_3_1_0__0)?
+{ after(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__AttrInstanceConfig__Group_3_1__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrInstanceConfig__Group_3_1__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__Group_3_1__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getAttributesAssignment_3_1_1()); }
+(rule__AttrInstanceConfig__AttributesAssignment_3_1_1)*
+{ after(grammarAccess.getAttrInstanceConfigAccess().getAttributesAssignment_3_1_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__AttrInstanceConfig__Group_3_1_0__0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrInstanceConfig__Group_3_1_0__0__Impl
+ rule__AttrInstanceConfig__Group_3_1_0__1
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__Group_3_1_0__0__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getDynConfigAssignment_3_1_0_0()); }
+(rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0)
+{ after(grammarAccess.getAttrInstanceConfigAccess().getDynConfigAssignment_3_1_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+rule__AttrInstanceConfig__Group_3_1_0__1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+ rule__AttrInstanceConfig__Group_3_1_0__1__Impl
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__Group_3_1_0__1__Impl
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getAlternatives_3_1_0_1()); }
+(rule__AttrInstanceConfig__Alternatives_3_1_0_1)
+{ after(grammarAccess.getAttrInstanceConfigAccess().getAlternatives_3_1_0_1()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+
+
+
+
+
rule__RefPath__Group__0
@init {
int stackSize = keepStackSize();
@@ -4291,7 +5285,6 @@ rule__DecimalExp__Group__4
}
:
rule__DecimalExp__Group__4__Impl
- rule__DecimalExp__Group__5
;
finally {
restoreStackSize(stackSize);
@@ -4303,9 +5296,9 @@ rule__DecimalExp__Group__4__Impl
}
:
(
-{ before(grammarAccess.getDecimalExpAccess().getIDTerminalRuleCall_4()); }
- RULE_ID
-{ after(grammarAccess.getDecimalExpAccess().getIDTerminalRuleCall_4()); }
+{ before(grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4()); }
+ RULE_EXP
+{ after(grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4()); }
)
;
@@ -4314,57 +5307,104 @@ finally {
}
-rule__DecimalExp__Group__5
+
+
+
+
+
+
+
+
+
+
+
+rule__DynamicConfig__UnorderedGroup_2
@init {
- int stackSize = keepStackSize();
+ int stackSize = keepStackSize();
+ getUnorderedGroupHelper().enter(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
}
:
- rule__DecimalExp__Group__5__Impl
- rule__DecimalExp__Group__6
+ rule__DynamicConfig__UnorderedGroup_2__0
+
+ {getUnorderedGroupHelper().canLeave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2())}?
+
;
finally {
+ getUnorderedGroupHelper().leave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
restoreStackSize(stackSize);
}
-rule__DecimalExp__Group__5__Impl
- @init {
+
+rule__DynamicConfig__UnorderedGroup_2__Impl
+ @init {
int stackSize = keepStackSize();
+ boolean selected = false;
}
:
-(
-{ before(grammarAccess.getDecimalExpAccess().getAlternatives_5()); }
-(rule__DecimalExp__Alternatives_5)?
-{ after(grammarAccess.getDecimalExpAccess().getAlternatives_5()); }
-)
+ (
+
+ (
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0)}?=>(
+ {
+ getUnorderedGroupHelper().select(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0);
+ }
+ {
+ selected = true;
+ }
+ (
+
+ { before(grammarAccess.getDynamicConfigAccess().getAlternatives_2_0()); }
+ (rule__DynamicConfig__Alternatives_2_0)
+ { after(grammarAccess.getDynamicConfigAccess().getAlternatives_2_0()); }
+ )
+ )
+ ) |
+
+ (
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1)}?=>(
+ {
+ getUnorderedGroupHelper().select(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1);
+ }
+ {
+ selected = true;
+ }
+ (
+
+ { before(grammarAccess.getDynamicConfigAccess().getGroup_2_1()); }
+ (rule__DynamicConfig__Group_2_1__0)
+ { after(grammarAccess.getDynamicConfigAccess().getGroup_2_1()); }
+ )
+ )
+ )
+ )
;
finally {
+ if (selected)
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
restoreStackSize(stackSize);
}
-rule__DecimalExp__Group__6
+rule__DynamicConfig__UnorderedGroup_2__0
@init {
int stackSize = keepStackSize();
}
:
- rule__DecimalExp__Group__6__Impl
+ rule__DynamicConfig__UnorderedGroup_2__Impl
+ rule__DynamicConfig__UnorderedGroup_2__1?
;
finally {
restoreStackSize(stackSize);
}
-rule__DecimalExp__Group__6__Impl
+
+rule__DynamicConfig__UnorderedGroup_2__1
@init {
int stackSize = keepStackSize();
}
:
-(
-{ before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_6()); }
- RULE_INT
-{ after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_6()); }
-)
-
+ rule__DynamicConfig__UnorderedGroup_2__Impl
;
finally {
restoreStackSize(stackSize);
@@ -4375,34 +5415,23 @@ finally {
-
-
-
-
-
-
-
-
-
-
-
-rule__ProtocolClassConfig__UnorderedGroup_3
+rule__ActorInstanceConfig__UnorderedGroup_5
@init {
int stackSize = keepStackSize();
- getUnorderedGroupHelper().enter(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
+ getUnorderedGroupHelper().enter(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
}
:
- rule__ProtocolClassConfig__UnorderedGroup_3__0
+ rule__ActorInstanceConfig__UnorderedGroup_5__0
?
;
finally {
- getUnorderedGroupHelper().leave(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
+ getUnorderedGroupHelper().leave(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
restoreStackSize(stackSize);
}
-rule__ProtocolClassConfig__UnorderedGroup_3__Impl
+rule__ActorInstanceConfig__UnorderedGroup_5__Impl
@init {
int stackSize = keepStackSize();
boolean selected = false;
@@ -4411,36 +5440,46 @@ rule__ProtocolClassConfig__UnorderedGroup_3__Impl
(
(
- {getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0)}?=>(
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0)}?=>(
{
- getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0);
+ getUnorderedGroupHelper().select(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0);
}
{
selected = true;
}
(
-
- { before(grammarAccess.getProtocolClassConfigAccess().getGroup_3_0()); }
- (rule__ProtocolClassConfig__Group_3_0__0)
- { after(grammarAccess.getProtocolClassConfigAccess().getGroup_3_0()); }
+ (
+ { before(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5_0()); }
+ (rule__ActorInstanceConfig__AttributesAssignment_5_0)
+ { after(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5_0()); }
)
+ (
+ { before(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5_0()); }
+ ((rule__ActorInstanceConfig__AttributesAssignment_5_0)=>rule__ActorInstanceConfig__AttributesAssignment_5_0)*
+ { after(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5_0()); }
+ ) )
)
) |
(
- {getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1)}?=>(
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1)}?=>(
{
- getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1);
+ getUnorderedGroupHelper().select(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1);
}
{
selected = true;
}
(
-
- { before(grammarAccess.getProtocolClassConfigAccess().getGroup_3_1()); }
- (rule__ProtocolClassConfig__Group_3_1__0)
- { after(grammarAccess.getProtocolClassConfigAccess().getGroup_3_1()); }
+ (
+ { before(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_5_1()); }
+ (rule__ActorInstanceConfig__PortsAssignment_5_1)
+ { after(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_5_1()); }
)
+ (
+ { before(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_5_1()); }
+ ((rule__ActorInstanceConfig__PortsAssignment_5_1)=>rule__ActorInstanceConfig__PortsAssignment_5_1)*
+ { after(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_5_1()); }
+ ) )
)
)
@@ -4448,30 +5487,30 @@ rule__ProtocolClassConfig__UnorderedGroup_3__Impl
;
finally {
if (selected)
- getUnorderedGroupHelper().returnFromSelection(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
restoreStackSize(stackSize);
}
-rule__ProtocolClassConfig__UnorderedGroup_3__0
+rule__ActorInstanceConfig__UnorderedGroup_5__0
@init {
int stackSize = keepStackSize();
}
:
- rule__ProtocolClassConfig__UnorderedGroup_3__Impl
- rule__ProtocolClassConfig__UnorderedGroup_3__1?
+ rule__ActorInstanceConfig__UnorderedGroup_5__Impl
+ rule__ActorInstanceConfig__UnorderedGroup_5__1?
;
finally {
restoreStackSize(stackSize);
}
-rule__ProtocolClassConfig__UnorderedGroup_3__1
+rule__ActorInstanceConfig__UnorderedGroup_5__1
@init {
int stackSize = keepStackSize();
}
:
- rule__ProtocolClassConfig__UnorderedGroup_3__Impl
+ rule__ActorInstanceConfig__UnorderedGroup_5__Impl
;
finally {
restoreStackSize(stackSize);
@@ -4482,23 +5521,23 @@ finally {
-rule__AttrClassConfig__UnorderedGroup_3_1
+rule__ProtocolClassConfig__UnorderedGroup_3
@init {
int stackSize = keepStackSize();
- getUnorderedGroupHelper().enter(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
+ getUnorderedGroupHelper().enter(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
}
:
- rule__AttrClassConfig__UnorderedGroup_3_1__0
+ rule__ProtocolClassConfig__UnorderedGroup_3__0
?
;
finally {
- getUnorderedGroupHelper().leave(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
+ getUnorderedGroupHelper().leave(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
restoreStackSize(stackSize);
}
-rule__AttrClassConfig__UnorderedGroup_3_1__Impl
+rule__ProtocolClassConfig__UnorderedGroup_3__Impl
@init {
int stackSize = keepStackSize();
boolean selected = false;
@@ -4507,35 +5546,35 @@ rule__AttrClassConfig__UnorderedGroup_3_1__Impl
(
(
- {getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0)}?=>(
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0)}?=>(
{
- getUnorderedGroupHelper().select(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0);
+ getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0);
}
{
selected = true;
}
(
- { before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_0()); }
- (rule__AttrClassConfig__Group_3_1_0__0)
- { after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_0()); }
+ { before(grammarAccess.getProtocolClassConfigAccess().getGroup_3_0()); }
+ (rule__ProtocolClassConfig__Group_3_0__0)
+ { after(grammarAccess.getProtocolClassConfigAccess().getGroup_3_0()); }
)
)
) |
(
- {getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1)}?=>(
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1)}?=>(
{
- getUnorderedGroupHelper().select(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1);
+ getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1);
}
{
selected = true;
}
(
- { before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_1()); }
- (rule__AttrClassConfig__Group_3_1_1__0)
- { after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_1()); }
+ { before(grammarAccess.getProtocolClassConfigAccess().getGroup_3_1()); }
+ (rule__ProtocolClassConfig__Group_3_1__0)
+ { after(grammarAccess.getProtocolClassConfigAccess().getGroup_3_1()); }
)
)
)
@@ -4544,30 +5583,30 @@ rule__AttrClassConfig__UnorderedGroup_3_1__Impl
;
finally {
if (selected)
- getUnorderedGroupHelper().returnFromSelection(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
restoreStackSize(stackSize);
}
-rule__AttrClassConfig__UnorderedGroup_3_1__0
+rule__ProtocolClassConfig__UnorderedGroup_3__0
@init {
int stackSize = keepStackSize();
}
:
- rule__AttrClassConfig__UnorderedGroup_3_1__Impl
- rule__AttrClassConfig__UnorderedGroup_3_1__1?
+ rule__ProtocolClassConfig__UnorderedGroup_3__Impl
+ rule__ProtocolClassConfig__UnorderedGroup_3__1?
;
finally {
restoreStackSize(stackSize);
}
-rule__AttrClassConfig__UnorderedGroup_3_1__1
+rule__ProtocolClassConfig__UnorderedGroup_3__1
@init {
int stackSize = keepStackSize();
}
:
- rule__AttrClassConfig__UnorderedGroup_3_1__Impl
+ rule__ProtocolClassConfig__UnorderedGroup_3__Impl
;
finally {
restoreStackSize(stackSize);
@@ -4608,6 +5647,100 @@ finally {
restoreStackSize(stackSize);
}
+rule__SubSystemConfig__SubSystemAssignment_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassCrossReference_1_0()); }
+(
+{ before(grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassIDTerminalRuleCall_1_0_1()); }
+ RULE_ID{ after(grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassIDTerminalRuleCall_1_0_1()); }
+)
+{ after(grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassCrossReference_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__SubSystemConfig__DynConfigAssignment_3
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getSubSystemConfigAccess().getDynConfigDynamicConfigParserRuleCall_3_0()); }
+ ruleDynamicConfig{ after(grammarAccess.getSubSystemConfigAccess().getDynConfigDynamicConfigParserRuleCall_3_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__FilePathAssignment_2_0_0_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getFilePathSTRINGTerminalRuleCall_2_0_0_1_0()); }
+ RULE_STRING{ after(grammarAccess.getDynamicConfigAccess().getFilePathSTRINGTerminalRuleCall_2_0_0_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getUserCode1STRINGTerminalRuleCall_2_0_1_0_1_0()); }
+ RULE_STRING{ after(grammarAccess.getDynamicConfigAccess().getUserCode1STRINGTerminalRuleCall_2_0_1_0_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getUserCode2STRINGTerminalRuleCall_2_0_1_1_1_0()); }
+ RULE_STRING{ after(grammarAccess.getDynamicConfigAccess().getUserCode2STRINGTerminalRuleCall_2_0_1_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__DynamicConfig__PollingAssignment_2_1_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getDynamicConfigAccess().getPollingINTTerminalRuleCall_2_1_1_0()); }
+ RULE_INT{ after(grammarAccess.getDynamicConfigAccess().getPollingINTTerminalRuleCall_2_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
rule__ActorClassConfig__ActorAssignment_1
@init {
int stackSize = keepStackSize();
@@ -4676,14 +5809,14 @@ finally {
restoreStackSize(stackSize);
}
-rule__ActorInstanceConfig__AttributesAssignment_5
+rule__ActorInstanceConfig__AttributesAssignment_5_0
@init {
int stackSize = keepStackSize();
}
:
(
-{ before(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0()); }
- ruleAttrInstanceConfig{ after(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0()); }
+{ before(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0_0()); }
+ ruleAttrInstanceConfig{ after(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0_0()); }
)
;
@@ -4691,14 +5824,14 @@ finally {
restoreStackSize(stackSize);
}
-rule__ActorInstanceConfig__PortsAssignment_6
+rule__ActorInstanceConfig__PortsAssignment_5_1
@init {
int stackSize = keepStackSize();
}
:
(
-{ before(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_6_0()); }
- rulePortInstanceConfig{ after(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_6_0()); }
+{ before(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_5_1_0()); }
+ rulePortInstanceConfig{ after(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_5_1_0()); }
)
;
@@ -4868,6 +6001,21 @@ finally {
restoreStackSize(stackSize);
}
+rule__AttrClassConfig__AttributesAssignment_3_1_2
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_1_2_0()); }
+ ruleAttrClassConfig{ after(grammarAccess.getAttrClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_1_2_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
rule__AttrInstanceConfig__AttributeAssignment_1
@init {
int stackSize = keepStackSize();
@@ -4902,6 +6050,67 @@ finally {
restoreStackSize(stackSize);
}
+rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0()); }
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0()); }
+
+ 'dynamic configuration'
+
+{ after(grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0()); }
+)
+
+{ after(grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0()); }
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0()); }
+
+ 'read'
+
+{ after(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0()); }
+)
+
+{ after(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
+rule__AttrInstanceConfig__AttributesAssignment_3_1_1
+ @init {
+ int stackSize = keepStackSize();
+ }
+:
+(
+{ before(grammarAccess.getAttrInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_1_1_0()); }
+ ruleAttrInstanceConfig{ after(grammarAccess.getAttrInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_1_1_0()); }
+)
+
+;
+finally {
+ restoreStackSize(stackSize);
+}
+
rule__RefPath__RefsAssignment_0
@init {
int stackSize = keepStackSize();
@@ -5061,6 +6270,8 @@ finally {
}
+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')*;
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.tokens b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.tokens
index 8e107fc56..548127467 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.tokens
+++ b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.tokens
@@ -1,4 +1,5 @@
RULE_ID=5
+RULE_EXP=7
T__29=29
T__28=28
T__27=27
@@ -7,50 +8,66 @@ T__25=25
T__24=24
T__23=23
T__22=22
-RULE_ANY_OTHER=11
+RULE_ANY_OTHER=12
T__21=21
T__20=20
-RULE_SL_COMMENT=9
-RULE_ML_COMMENT=8
-T__30=30
T__19=19
-T__31=31
-RULE_STRING=7
RULE_HEX=4
-T__32=32
-T__33=33
T__16=16
-T__34=34
T__15=15
-T__35=35
T__18=18
T__17=17
-T__12=12
T__14=14
T__13=13
RULE_INT=6
-RULE_WS=10
-'Attr'=26
-'true'=35
-'}'=18
-'/'=20
-'model'=12
-'ActorClassConfig'=16
-'{'=17
-'.*'=32
-'conjugate'=23
-'ActorInstanceConfig'=19
-'='=27
-'false'=13
-'Port'=24
-'InterfaceItem'=25
-'-'=15
-'min'=28
-'+'=14
-','=34
-'.'=33
-'ProtocolClassConfig'=21
-'regular'=22
-'max'=29
-'from'=31
-'import'=30
+T__42=42
+T__43=43
+T__40=40
+T__41=41
+T__44=44
+RULE_SL_COMMENT=10
+RULE_ML_COMMENT=9
+T__30=30
+T__31=31
+T__32=32
+RULE_STRING=8
+T__33=33
+T__34=34
+T__35=35
+T__36=36
+T__37=37
+T__38=38
+T__39=39
+RULE_WS=11
+'Attr'=34
+'/'=28
+'model'=14
+'user import'=23
+'user constructor'=24
+'.*'=40
+'conjugate'=31
+'='=35
+'Port'=32
+'InterfaceItem'=33
+'+'=16
+'.'=41
+'ProtocolClassConfig'=29
+'regular'=30
+'max'=37
+'import'=38
+'true'=44
+'}'=20
+'SubSystemConfig'=18
+'ActorClassConfig'=26
+'polling timer [ms]'=25
+'dynamic configuration'=21
+'{'=19
+'write'=13
+'ActorInstanceConfig'=27
+'false'=15
+'-'=17
+'min'=36
+','=42
+'read'=43
+'file path'=22
+'from'=39
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigLexer.java b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigLexer.java
index 87fa105fc..1361ecb11 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigLexer.java
+++ b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigLexer.java
@@ -13,6 +13,7 @@ import java.util.ArrayList;
@SuppressWarnings("all")
public class InternalConfigLexer extends Lexer {
public static final int RULE_ID=5;
+ 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;
@@ -21,30 +22,38 @@ public class InternalConfigLexer extends Lexer {
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=11;
public static final int T__21=21;
+ public static final int RULE_ANY_OTHER=12;
public static final int T__20=20;
public static final int EOF=-1;
- public static final int RULE_SL_COMMENT=9;
- public static final int RULE_ML_COMMENT=8;
- 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 T__32=32;
public static final int RULE_HEX=4;
- public static final int RULE_STRING=7;
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__35=35;
public static final int T__17=17;
- public static final int T__12=12;
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=10;
+ public static final int T__42=42;
+ public static final int T__43=43;
+ public static final int T__40=40;
+ public static final int T__41=41;
+ public static final int T__44=44;
+ public static final int RULE_SL_COMMENT=10;
+ public static final int RULE_ML_COMMENT=9;
+ 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_STRING=8;
+ public static final int T__33=33;
+ public static final int T__34=34;
+ public static final int T__35=35;
+ public static final int T__36=36;
+ public static final int T__37=37;
+ public static final int T__38=38;
+ public static final int T__39=39;
+ public static final int RULE_WS=11;
// delegates
// delegators
@@ -59,36 +68,15 @@ public class InternalConfigLexer extends Lexer {
}
public String getGrammarFileName() { return "../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g"; }
- // $ANTLR start "T__12"
- public final void mT__12() throws RecognitionException {
- try {
- int _type = T__12;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:11:7: ( 'model' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:11:9: 'model'
- {
- match("model");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__12"
-
// $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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:12:7: ( 'false' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:12:9: 'false'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:11:7: ( 'write' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:11:9: 'write'
{
- match("false");
+ match("write");
}
@@ -106,10 +94,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__14;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:13:7: ( '+' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:13:9: '+'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:12:7: ( 'model' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:12:9: 'model'
{
- match('+');
+ match("model");
+
}
@@ -126,10 +115,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__15;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:14:7: ( '-' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:14:9: '-'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:13:7: ( 'false' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:13:9: 'false'
{
- match('-');
+ match("false");
+
}
@@ -146,11 +136,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__16;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:15:7: ( 'ActorClassConfig' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:15:9: 'ActorClassConfig'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:14:7: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:14:9: '+'
{
- match("ActorClassConfig");
-
+ match('+');
}
@@ -167,10 +156,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__17;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:16:7: ( '{' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:16:9: '{'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:15:7: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:15:9: '-'
{
- match('{');
+ match('-');
}
@@ -187,10 +176,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__18;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:17:7: ( '}' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:17:9: '}'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:16:7: ( 'SubSystemConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:16:9: 'SubSystemConfig'
{
- match('}');
+ match("SubSystemConfig");
+
}
@@ -207,11 +197,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__19;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:18:7: ( 'ActorInstanceConfig' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:18:9: 'ActorInstanceConfig'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:17:7: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:17:9: '{'
{
- match("ActorInstanceConfig");
-
+ match('{');
}
@@ -228,10 +217,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__20;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:19:7: ( '/' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:19:9: '/'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:18:7: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:18:9: '}'
{
- match('/');
+ match('}');
}
@@ -248,10 +237,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__21;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:20:7: ( 'ProtocolClassConfig' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:20:9: 'ProtocolClassConfig'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:19:7: ( 'dynamic configuration' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:19:9: 'dynamic configuration'
{
- match("ProtocolClassConfig");
+ match("dynamic configuration");
}
@@ -269,10 +258,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__22;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:21:7: ( 'regular' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:21:9: 'regular'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:20:7: ( 'file path' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:20:9: 'file path'
{
- match("regular");
+ match("file path");
}
@@ -290,10 +279,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__23;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:22:7: ( 'conjugate' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:22:9: 'conjugate'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:21:7: ( 'user import' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:21:9: 'user import'
{
- match("conjugate");
+ match("user import");
}
@@ -311,10 +300,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__24;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:23:7: ( 'Port' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:23:9: 'Port'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:22:7: ( 'user constructor' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:22:9: 'user constructor'
{
- match("Port");
+ match("user constructor");
}
@@ -332,10 +321,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__25;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:24:7: ( 'InterfaceItem' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:24:9: 'InterfaceItem'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:23:7: ( 'polling timer [ms]' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:23:9: 'polling timer [ms]'
{
- match("InterfaceItem");
+ match("polling timer [ms]");
}
@@ -353,10 +342,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__26;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:25:7: ( 'Attr' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:25:9: 'Attr'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:24:7: ( 'ActorClassConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:24:9: 'ActorClassConfig'
{
- match("Attr");
+ match("ActorClassConfig");
}
@@ -374,10 +363,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__27;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:26:7: ( '=' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:26:9: '='
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:25:7: ( 'ActorInstanceConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:25:9: 'ActorInstanceConfig'
{
- match('=');
+ match("ActorInstanceConfig");
+
}
@@ -394,11 +384,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__28;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:27:7: ( 'min' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:27:9: 'min'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:26:7: ( '/' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:26:9: '/'
{
- match("min");
-
+ match('/');
}
@@ -415,10 +404,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__29;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:28:7: ( 'max' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:28:9: 'max'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:27:7: ( 'ProtocolClassConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:27:9: 'ProtocolClassConfig'
{
- match("max");
+ match("ProtocolClassConfig");
}
@@ -436,10 +425,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__30;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:29:7: ( 'import' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:29:9: 'import'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:28:7: ( 'regular' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:28:9: 'regular'
{
- match("import");
+ match("regular");
}
@@ -457,10 +446,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__31;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:30:7: ( 'from' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:30:9: 'from'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:29:7: ( 'conjugate' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:29:9: 'conjugate'
{
- match("from");
+ match("conjugate");
}
@@ -478,10 +467,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__32;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:31:7: ( '.*' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:31:9: '.*'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:30:7: ( 'Port' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:30:9: 'Port'
{
- match(".*");
+ match("Port");
}
@@ -499,10 +488,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__33;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:32:7: ( '.' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:32:9: '.'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:31:7: ( 'InterfaceItem' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:31:9: 'InterfaceItem'
{
- match('.');
+ match("InterfaceItem");
+
}
@@ -519,10 +509,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__34;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:33:7: ( ',' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:33:9: ','
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:32:7: ( 'Attr' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:32:9: 'Attr'
{
- match(',');
+ match("Attr");
+
}
@@ -539,8 +530,194 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__35;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:34:7: ( 'true' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:34:9: 'true'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:33:7: ( '=' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:33:9: '='
+ {
+ match('=');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__35"
+
+ // $ANTLR start "T__36"
+ public final void mT__36() throws RecognitionException {
+ try {
+ int _type = T__36;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:34:7: ( 'min' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:34:9: 'min'
+ {
+ match("min");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__36"
+
+ // $ANTLR start "T__37"
+ public final void mT__37() throws RecognitionException {
+ try {
+ int _type = T__37;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:35:7: ( 'max' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:35:9: 'max'
+ {
+ match("max");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__37"
+
+ // $ANTLR start "T__38"
+ public final void mT__38() throws RecognitionException {
+ try {
+ int _type = T__38;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:36:7: ( 'import' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:36:9: 'import'
+ {
+ match("import");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__38"
+
+ // $ANTLR start "T__39"
+ public final void mT__39() throws RecognitionException {
+ try {
+ int _type = T__39;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:37:7: ( 'from' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:37:9: 'from'
+ {
+ match("from");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__39"
+
+ // $ANTLR start "T__40"
+ public final void mT__40() throws RecognitionException {
+ try {
+ int _type = T__40;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:38:7: ( '.*' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:38:9: '.*'
+ {
+ match(".*");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__40"
+
+ // $ANTLR start "T__41"
+ public final void mT__41() throws RecognitionException {
+ try {
+ int _type = T__41;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:39:7: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:39:9: '.'
+ {
+ match('.');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__41"
+
+ // $ANTLR start "T__42"
+ public final void mT__42() throws RecognitionException {
+ try {
+ int _type = T__42;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:40:7: ( ',' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:40:9: ','
+ {
+ match(',');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__42"
+
+ // $ANTLR start "T__43"
+ public final void mT__43() throws RecognitionException {
+ try {
+ int _type = T__43;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:41:7: ( 'read' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:41:9: 'read'
+ {
+ match("read");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__43"
+
+ // $ANTLR start "T__44"
+ public final void mT__44() throws RecognitionException {
+ try {
+ int _type = T__44;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:42:7: ( 'true' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:42:9: 'true'
{
match("true");
@@ -553,45 +730,129 @@ public class InternalConfigLexer extends Lexer {
finally {
}
}
- // $ANTLR end "T__35"
+ // $ANTLR end "T__44"
+
+ // $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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6273:10: ( ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+ )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6273: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6273: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6273: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6273: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5064:10: ( ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+ )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5064:12: ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6275:10: ( ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+ )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6275:12: ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5064:12: ( '0x' | '0X' )
- int alt1=2;
- int LA1_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6275:12: ( '0x' | '0X' )
+ int alt3=2;
+ int LA3_0 = input.LA(1);
- if ( (LA1_0=='0') ) {
- int LA1_1 = input.LA(2);
+ if ( (LA3_0=='0') ) {
+ int LA3_1 = input.LA(2);
- if ( (LA1_1=='x') ) {
- alt1=1;
+ if ( (LA3_1=='x') ) {
+ alt3=1;
}
- else if ( (LA1_1=='X') ) {
- alt1=2;
+ else if ( (LA3_1=='X') ) {
+ alt3=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 1, 1, input);
+ new NoViableAltException("", 3, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 1, 0, input);
+ new NoViableAltException("", 3, 0, input);
throw nvae;
}
- switch (alt1) {
+ switch (alt3) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5064:13: '0x'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6275:13: '0x'
{
match("0x");
@@ -599,7 +860,7 @@ public class InternalConfigLexer extends Lexer {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5064:18: '0X'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6275:18: '0X'
{
match("0X");
@@ -609,19 +870,19 @@ public class InternalConfigLexer extends Lexer {
}
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5064:24: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
- int cnt2=0;
- loop2:
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6275:24: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
+ int cnt4=0;
+ loop4:
do {
- int alt2=2;
- int LA2_0 = input.LA(1);
+ int alt4=2;
+ int LA4_0 = input.LA(1);
- if ( ((LA2_0>='0' && LA2_0<='9')||(LA2_0>='A' && LA2_0<='F')||(LA2_0>='a' && LA2_0<='f')) ) {
- alt2=1;
+ if ( ((LA4_0>='0' && LA4_0<='9')||(LA4_0>='A' && LA4_0<='F')||(LA4_0>='a' && LA4_0<='f')) ) {
+ alt4=1;
}
- switch (alt2) {
+ switch (alt4) {
case 1 :
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:
{
@@ -639,12 +900,12 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- if ( cnt2 >= 1 ) break loop2;
+ if ( cnt4 >= 1 ) break loop4;
EarlyExitException eee =
- new EarlyExitException(2, input);
+ new EarlyExitException(4, input);
throw eee;
}
- cnt2++;
+ cnt4++;
} while (true);
@@ -663,19 +924,19 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_ID;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5066:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5066:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6277:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6277:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5066:11: ( '^' )?
- int alt3=2;
- int LA3_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6277:11: ( '^' )?
+ int alt5=2;
+ int LA5_0 = input.LA(1);
- if ( (LA3_0=='^') ) {
- alt3=1;
+ if ( (LA5_0=='^') ) {
+ alt5=1;
}
- switch (alt3) {
+ switch (alt5) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5066:11: '^'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6277:11: '^'
{
match('^');
@@ -693,18 +954,18 @@ public class InternalConfigLexer extends Lexer {
recover(mse);
throw mse;}
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5066:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
- loop4:
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6277:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+ loop6:
do {
- int alt4=2;
- int LA4_0 = input.LA(1);
+ int alt6=2;
+ int LA6_0 = input.LA(1);
- if ( ((LA4_0>='0' && LA4_0<='9')||(LA4_0>='A' && LA4_0<='Z')||LA4_0=='_'||(LA4_0>='a' && LA4_0<='z')) ) {
- alt4=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 (alt4) {
+ switch (alt6) {
case 1 :
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:
{
@@ -722,7 +983,7 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop4;
+ break loop6;
}
} while (true);
@@ -742,24 +1003,24 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_INT;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5068:10: ( ( '0' .. '9' )+ )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5068:12: ( '0' .. '9' )+
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6279:10: ( ( '0' .. '9' )+ )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6279:12: ( '0' .. '9' )+
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5068:12: ( '0' .. '9' )+
- int cnt5=0;
- loop5:
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6279:12: ( '0' .. '9' )+
+ int cnt7=0;
+ loop7:
do {
- int alt5=2;
- int LA5_0 = input.LA(1);
+ int alt7=2;
+ int LA7_0 = input.LA(1);
- if ( ((LA5_0>='0' && LA5_0<='9')) ) {
- alt5=1;
+ if ( ((LA7_0>='0' && LA7_0<='9')) ) {
+ alt7=1;
}
- switch (alt5) {
+ switch (alt7) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5068:13: '0' .. '9'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6279:13: '0' .. '9'
{
matchRange('0','9');
@@ -767,12 +1028,12 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- if ( cnt5 >= 1 ) break loop5;
+ if ( cnt7 >= 1 ) break loop7;
EarlyExitException eee =
- new EarlyExitException(5, input);
+ new EarlyExitException(7, input);
throw eee;
}
- cnt5++;
+ cnt7++;
} while (true);
@@ -791,47 +1052,47 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_STRING;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
- int alt8=2;
- int LA8_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+ int alt10=2;
+ int LA10_0 = input.LA(1);
- if ( (LA8_0=='\"') ) {
- alt8=1;
+ if ( (LA10_0=='\"') ) {
+ alt10=1;
}
- else if ( (LA8_0=='\'') ) {
- alt8=2;
+ else if ( (LA10_0=='\'') ) {
+ alt10=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 8, 0, input);
+ new NoViableAltException("", 10, 0, input);
throw nvae;
}
- switch (alt8) {
+ switch (alt10) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
{
match('\"');
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
- loop6:
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
+ loop8:
do {
- int alt6=3;
- int LA6_0 = input.LA(1);
+ int alt8=3;
+ int LA8_0 = input.LA(1);
- if ( (LA6_0=='\\') ) {
- alt6=1;
+ if ( (LA8_0=='\\') ) {
+ alt8=1;
}
- else if ( ((LA6_0>='\u0000' && LA6_0<='!')||(LA6_0>='#' && LA6_0<='[')||(LA6_0>=']' && LA6_0<='\uFFFF')) ) {
- alt6=2;
+ else if ( ((LA8_0>='\u0000' && LA8_0<='!')||(LA8_0>='#' && LA8_0<='[')||(LA8_0>=']' && LA8_0<='\uFFFF')) ) {
+ alt8=2;
}
- switch (alt6) {
+ switch (alt8) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281: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') ) {
@@ -847,7 +1108,7 @@ public class InternalConfigLexer extends Lexer {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:66: ~ ( ( '\\\\' | '\"' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281:66: ~ ( ( '\\\\' | '\"' ) )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
input.consume();
@@ -863,7 +1124,7 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop6;
+ break loop8;
}
} while (true);
@@ -872,26 +1133,26 @@ public class InternalConfigLexer extends Lexer {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
{
match('\'');
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
- loop7:
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
+ loop9:
do {
- int alt7=3;
- int LA7_0 = input.LA(1);
+ int alt9=3;
+ int LA9_0 = input.LA(1);
- if ( (LA7_0=='\\') ) {
- alt7=1;
+ if ( (LA9_0=='\\') ) {
+ alt9=1;
}
- else if ( ((LA7_0>='\u0000' && LA7_0<='&')||(LA7_0>='(' && LA7_0<='[')||(LA7_0>=']' && LA7_0<='\uFFFF')) ) {
- alt7=2;
+ else if ( ((LA9_0>='\u0000' && LA9_0<='&')||(LA9_0>='(' && LA9_0<='[')||(LA9_0>=']' && LA9_0<='\uFFFF')) ) {
+ alt9=2;
}
- switch (alt7) {
+ switch (alt9) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281: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') ) {
@@ -907,7 +1168,7 @@ public class InternalConfigLexer extends Lexer {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070:137: ~ ( ( '\\\\' | '\\'' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6281:137: ~ ( ( '\\\\' | '\\'' ) )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
input.consume();
@@ -923,7 +1184,7 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop7;
+ break loop9;
}
} while (true);
@@ -950,37 +1211,37 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_ML_COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5072:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5072:19: '/*' ( options {greedy=false; } : . )* '*/'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6283:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6283:19: '/*' ( options {greedy=false; } : . )* '*/'
{
match("/*");
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5072:24: ( options {greedy=false; } : . )*
- loop9:
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6283:24: ( options {greedy=false; } : . )*
+ loop11:
do {
- int alt9=2;
- int LA9_0 = input.LA(1);
+ int alt11=2;
+ int LA11_0 = input.LA(1);
- if ( (LA9_0=='*') ) {
- int LA9_1 = input.LA(2);
+ if ( (LA11_0=='*') ) {
+ int LA11_1 = input.LA(2);
- if ( (LA9_1=='/') ) {
- alt9=2;
+ if ( (LA11_1=='/') ) {
+ alt11=2;
}
- else if ( ((LA9_1>='\u0000' && LA9_1<='.')||(LA9_1>='0' && LA9_1<='\uFFFF')) ) {
- alt9=1;
+ else if ( ((LA11_1>='\u0000' && LA11_1<='.')||(LA11_1>='0' && LA11_1<='\uFFFF')) ) {
+ alt11=1;
}
}
- else if ( ((LA9_0>='\u0000' && LA9_0<=')')||(LA9_0>='+' && LA9_0<='\uFFFF')) ) {
- alt9=1;
+ else if ( ((LA11_0>='\u0000' && LA11_0<=')')||(LA11_0>='+' && LA11_0<='\uFFFF')) ) {
+ alt11=1;
}
- switch (alt9) {
+ switch (alt11) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5072:52: .
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6283:52: .
{
matchAny();
@@ -988,7 +1249,7 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop9;
+ break loop11;
}
} while (true);
@@ -1010,25 +1271,25 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_SL_COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5074:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5074:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6285:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6285:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
{
match("//");
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5074:24: (~ ( ( '\\n' | '\\r' ) ) )*
- loop10:
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6285:24: (~ ( ( '\\n' | '\\r' ) ) )*
+ loop12:
do {
- int alt10=2;
- int LA10_0 = input.LA(1);
+ int alt12=2;
+ int LA12_0 = input.LA(1);
- if ( ((LA10_0>='\u0000' && LA10_0<='\t')||(LA10_0>='\u000B' && LA10_0<='\f')||(LA10_0>='\u000E' && LA10_0<='\uFFFF')) ) {
- alt10=1;
+ if ( ((LA12_0>='\u0000' && LA12_0<='\t')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\uFFFF')) ) {
+ alt12=1;
}
- switch (alt10) {
+ switch (alt12) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5074:24: ~ ( ( '\\n' | '\\r' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6285: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();
@@ -1044,31 +1305,31 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop10;
+ break loop12;
}
} while (true);
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5074:40: ( ( '\\r' )? '\\n' )?
- int alt12=2;
- int LA12_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6285:40: ( ( '\\r' )? '\\n' )?
+ int alt14=2;
+ int LA14_0 = input.LA(1);
- if ( (LA12_0=='\n'||LA12_0=='\r') ) {
- alt12=1;
+ if ( (LA14_0=='\n'||LA14_0=='\r') ) {
+ alt14=1;
}
- switch (alt12) {
+ switch (alt14) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5074:41: ( '\\r' )? '\\n'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6285:41: ( '\\r' )? '\\n'
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5074:41: ( '\\r' )?
- int alt11=2;
- int LA11_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6285:41: ( '\\r' )?
+ int alt13=2;
+ int LA13_0 = input.LA(1);
- if ( (LA11_0=='\r') ) {
- alt11=1;
+ if ( (LA13_0=='\r') ) {
+ alt13=1;
}
- switch (alt11) {
+ switch (alt13) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5074:41: '\\r'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6285:41: '\\r'
{
match('\r');
@@ -1100,22 +1361,22 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_WS;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5076:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5076:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6287:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6287:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5076:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
- int cnt13=0;
- loop13:
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6287:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+ int cnt15=0;
+ loop15:
do {
- int alt13=2;
- int LA13_0 = input.LA(1);
+ int alt15=2;
+ int LA15_0 = input.LA(1);
- if ( ((LA13_0>='\t' && LA13_0<='\n')||LA13_0=='\r'||LA13_0==' ') ) {
- alt13=1;
+ if ( ((LA15_0>='\t' && LA15_0<='\n')||LA15_0=='\r'||LA15_0==' ') ) {
+ alt15=1;
}
- switch (alt13) {
+ switch (alt15) {
case 1 :
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:
{
@@ -1133,12 +1394,12 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- if ( cnt13 >= 1 ) break loop13;
+ if ( cnt15 >= 1 ) break loop15;
EarlyExitException eee =
- new EarlyExitException(13, input);
+ new EarlyExitException(15, input);
throw eee;
}
- cnt13++;
+ cnt15++;
} while (true);
@@ -1157,8 +1418,8 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_ANY_OTHER;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5078:16: ( . )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5078:18: .
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6289:16: ( . )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6289:18: .
{
matchAny();
@@ -1173,229 +1434,292 @@ public class InternalConfigLexer extends Lexer {
// $ANTLR end "RULE_ANY_OTHER"
public void mTokens() throws RecognitionException {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:8: ( T__12 | 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 | T__35 | RULE_HEX | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
- int alt14=32;
- alt14 = dfa14.predict(input);
- switch (alt14) {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.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 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | RULE_EXP | RULE_HEX | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+ int alt16=41;
+ alt16 = dfa16.predict(input);
+ switch (alt16) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:10: T__12
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:10: T__13
{
- mT__12();
+ mT__13();
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:16: T__13
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:16: T__14
{
- mT__13();
+ mT__14();
}
break;
case 3 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:22: T__14
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:22: T__15
{
- mT__14();
+ mT__15();
}
break;
case 4 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:28: T__15
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:28: T__16
{
- mT__15();
+ mT__16();
}
break;
case 5 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:34: T__16
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:34: T__17
{
- mT__16();
+ mT__17();
}
break;
case 6 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:40: T__17
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:40: T__18
{
- mT__17();
+ mT__18();
}
break;
case 7 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:46: T__18
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:46: T__19
{
- mT__18();
+ mT__19();
}
break;
case 8 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:52: T__19
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:52: T__20
{
- mT__19();
+ mT__20();
}
break;
case 9 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:58: T__20
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:58: T__21
{
- mT__20();
+ mT__21();
}
break;
case 10 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:64: T__21
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:64: T__22
{
- mT__21();
+ mT__22();
}
break;
case 11 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:70: T__22
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:70: T__23
{
- mT__22();
+ mT__23();
}
break;
case 12 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:76: T__23
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:76: T__24
{
- mT__23();
+ mT__24();
}
break;
case 13 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:82: T__24
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:82: T__25
{
- mT__24();
+ mT__25();
}
break;
case 14 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:88: T__25
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:88: T__26
{
- mT__25();
+ mT__26();
}
break;
case 15 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:94: T__26
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:94: T__27
{
- mT__26();
+ mT__27();
}
break;
case 16 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:100: T__27
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:100: T__28
{
- mT__27();
+ mT__28();
}
break;
case 17 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:106: T__28
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:106: T__29
{
- mT__28();
+ mT__29();
}
break;
case 18 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:112: T__29
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:112: T__30
{
- mT__29();
+ mT__30();
}
break;
case 19 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:118: T__30
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:118: T__31
{
- mT__30();
+ mT__31();
}
break;
case 20 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:124: T__31
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:124: T__32
{
- mT__31();
+ mT__32();
}
break;
case 21 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:130: T__32
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:130: T__33
{
- mT__32();
+ mT__33();
}
break;
case 22 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:136: T__33
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:136: T__34
{
- mT__33();
+ mT__34();
}
break;
case 23 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:142: T__34
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:142: T__35
{
- mT__34();
+ mT__35();
}
break;
case 24 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:148: T__35
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:148: T__36
{
- mT__35();
+ mT__36();
}
break;
case 25 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:154: RULE_HEX
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:154: T__37
{
- mRULE_HEX();
+ mT__37();
}
break;
case 26 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:163: RULE_ID
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:160: T__38
{
- mRULE_ID();
+ mT__38();
}
break;
case 27 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:171: RULE_INT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:166: T__39
{
- mRULE_INT();
+ mT__39();
}
break;
case 28 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:180: RULE_STRING
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:172: T__40
{
- mRULE_STRING();
+ mT__40();
}
break;
case 29 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:192: RULE_ML_COMMENT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:178: T__41
{
- mRULE_ML_COMMENT();
+ mT__41();
}
break;
case 30 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:208: RULE_SL_COMMENT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:184: T__42
{
- mRULE_SL_COMMENT();
+ mT__42();
}
break;
case 31 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:224: RULE_WS
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:190: T__43
{
- mRULE_WS();
+ mT__43();
}
break;
case 32 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:232: RULE_ANY_OTHER
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:196: T__44
+ {
+ mT__44();
+
+ }
+ break;
+ case 33 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:202: RULE_EXP
+ {
+ mRULE_EXP();
+
+ }
+ break;
+ case 34 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:211: RULE_HEX
+ {
+ mRULE_HEX();
+
+ }
+ break;
+ case 35 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:220: RULE_ID
+ {
+ mRULE_ID();
+
+ }
+ break;
+ case 36 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:228: RULE_INT
+ {
+ mRULE_INT();
+
+ }
+ break;
+ case 37 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:237: RULE_STRING
+ {
+ mRULE_STRING();
+
+ }
+ break;
+ case 38 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:249: RULE_ML_COMMENT
+ {
+ mRULE_ML_COMMENT();
+
+ }
+ break;
+ case 39 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:265: RULE_SL_COMMENT
+ {
+ mRULE_SL_COMMENT();
+
+ }
+ break;
+ case 40 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:281: RULE_WS
+ {
+ mRULE_WS();
+
+ }
+ break;
+ case 41 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1:289: RULE_ANY_OTHER
{
mRULE_ANY_OTHER();
@@ -1407,334 +1731,415 @@ public class InternalConfigLexer extends Lexer {
}
- protected DFA14 dfa14 = new DFA14(this);
- static final String DFA14_eotS =
- "\1\uffff\2\35\2\uffff\1\35\2\uffff\1\50\4\35\1\uffff\1\35\1\61"+
- "\1\uffff\1\35\1\65\1\31\2\uffff\2\31\2\uffff\3\35\1\uffff\2\35\2"+
- "\uffff\2\35\5\uffff\5\35\1\uffff\1\35\3\uffff\1\35\4\uffff\1\35"+
- "\1\107\1\110\14\35\2\uffff\1\35\1\126\1\35\1\130\1\35\1\132\4\35"+
- "\1\137\1\140\1\141\1\uffff\1\35\1\uffff\1\35\1\uffff\4\35\3\uffff"+
- "\6\35\1\157\3\35\1\163\2\35\1\uffff\3\35\1\uffff\5\35\1\176\4\35"+
- "\1\uffff\14\35\1\u008f\3\35\1\uffff\3\35\1\u0096\2\35\1\uffff\4"+
- "\35\1\u009d\1\u009e\2\uffff";
- static final String DFA14_eofS =
- "\u009f\uffff";
- static final String DFA14_minS =
- "\1\0\2\141\2\uffff\1\143\2\uffff\1\52\1\157\1\145\1\157\1\156\1"+
- "\uffff\1\155\1\52\1\uffff\1\162\1\130\1\101\2\uffff\2\0\2\uffff"+
- "\1\144\1\156\1\170\1\uffff\1\154\1\157\2\uffff\2\164\5\uffff\1\157"+
- "\1\162\1\147\1\156\1\164\1\uffff\1\160\3\uffff\1\165\4\uffff\1\145"+
- "\2\60\1\163\1\155\1\157\1\162\2\164\1\165\1\152\1\145\1\157\1\145"+
- "\1\154\2\uffff\1\145\1\60\1\162\1\60\1\157\1\60\1\154\1\165\2\162"+
- "\3\60\1\uffff\1\103\1\uffff\1\143\1\uffff\1\141\1\147\1\146\1\164"+
- "\3\uffff\1\154\1\156\1\157\1\162\2\141\1\60\1\141\1\163\1\154\1"+
- "\60\1\164\1\143\1\uffff\1\163\1\164\1\103\1\uffff\2\145\1\163\1"+
- "\141\1\154\1\60\1\111\1\103\1\156\1\141\1\uffff\1\164\1\157\1\143"+
- "\1\163\1\145\1\156\1\145\1\163\1\155\1\146\2\103\1\60\1\151\2\157"+
- "\1\uffff\1\147\2\156\1\60\2\146\1\uffff\2\151\2\147\2\60\2\uffff";
- static final String DFA14_maxS =
- "\1\uffff\1\157\1\162\2\uffff\1\164\2\uffff\1\57\1\162\1\145\1\157"+
- "\1\156\1\uffff\1\155\1\52\1\uffff\1\162\1\170\1\172\2\uffff\2\uffff"+
- "\2\uffff\1\144\1\156\1\170\1\uffff\1\154\1\157\2\uffff\2\164\5\uffff"+
- "\1\157\1\162\1\147\1\156\1\164\1\uffff\1\160\3\uffff\1\165\4\uffff"+
- "\1\145\2\172\1\163\1\155\1\157\1\162\2\164\1\165\1\152\1\145\1\157"+
- "\1\145\1\154\2\uffff\1\145\1\172\1\162\1\172\1\157\1\172\1\154\1"+
- "\165\2\162\3\172\1\uffff\1\111\1\uffff\1\143\1\uffff\1\141\1\147"+
- "\1\146\1\164\3\uffff\1\154\1\156\1\157\1\162\2\141\1\172\1\141\1"+
- "\163\1\154\1\172\1\164\1\143\1\uffff\1\163\1\164\1\103\1\uffff\2"+
- "\145\1\163\1\141\1\154\1\172\1\111\1\103\1\156\1\141\1\uffff\1\164"+
- "\1\157\1\143\1\163\1\145\1\156\1\145\1\163\1\155\1\146\2\103\1\172"+
- "\1\151\2\157\1\uffff\1\147\2\156\1\172\2\146\1\uffff\2\151\2\147"+
- "\2\172\2\uffff";
- static final String DFA14_acceptS =
- "\3\uffff\1\3\1\4\1\uffff\1\6\1\7\5\uffff\1\20\2\uffff\1\27\3\uffff"+
- "\1\32\1\33\2\uffff\1\37\1\40\3\uffff\1\32\2\uffff\1\3\1\4\2\uffff"+
- "\1\6\1\7\1\35\1\36\1\11\5\uffff\1\20\1\uffff\1\25\1\26\1\27\1\uffff"+
- "\1\31\1\33\1\34\1\37\17\uffff\1\21\1\22\15\uffff\1\24\1\uffff\1"+
- "\17\1\uffff\1\15\4\uffff\1\30\1\1\1\2\15\uffff\1\23\3\uffff\1\13"+
- "\12\uffff\1\14\20\uffff\1\16\6\uffff\1\5\6\uffff\1\10\1\12";
- static final String DFA14_specialS =
- "\1\1\25\uffff\1\0\1\2\u0087\uffff}>";
- static final String[] DFA14_transitionS = {
- "\11\31\2\30\2\31\1\30\22\31\1\30\1\31\1\26\4\31\1\27\3\31\1"+
- "\3\1\20\1\4\1\17\1\10\1\22\11\25\3\31\1\15\3\31\1\5\7\24\1\14"+
- "\6\24\1\11\12\24\3\31\1\23\1\24\1\31\2\24\1\13\2\24\1\2\2\24"+
- "\1\16\3\24\1\1\4\24\1\12\1\24\1\21\6\24\1\6\1\31\1\7\uff82\31",
- "\1\34\7\uffff\1\33\5\uffff\1\32",
- "\1\36\20\uffff\1\37",
+ protected DFA16 dfa16 = new DFA16(this);
+ static final String DFA16_eotS =
+ "\1\uffff\3\41\2\uffff\1\41\2\uffff\4\41\1\64\4\41\1\uffff\1\41"+
+ "\1\75\1\uffff\2\41\1\103\1\37\2\uffff\2\37\2\uffff\1\41\1\uffff"+
+ "\6\41\2\uffff\1\41\2\uffff\5\41\3\uffff\5\41\1\uffff\1\41\3\uffff"+
+ "\1\41\1\uffff\1\100\4\uffff\2\41\1\135\1\136\23\41\2\uffff\2\41"+
+ "\1\164\5\41\1\172\1\41\1\174\1\41\1\176\3\41\1\u0082\1\u0083\1\u0084"+
+ "\1\u0085\2\uffff\2\41\1\uffff\2\41\1\uffff\1\41\1\uffff\1\41\1\uffff"+
+ "\3\41\4\uffff\2\41\2\uffff\7\41\1\u009b\6\41\1\u00a2\2\41\1\uffff"+
+ "\1\41\2\uffff\3\41\1\uffff\6\41\1\u00af\5\41\1\uffff\17\41\1\u00c4"+
+ "\4\41\1\uffff\1\u00c9\3\41\1\uffff\1\u00cd\2\41\1\uffff\4\41\1\u00d4"+
+ "\1\u00d5\2\uffff";
+ static final String DFA16_eofS =
+ "\u00d6\uffff";
+ static final String DFA16_minS =
+ "\1\0\1\162\2\141\2\uffff\1\165\2\uffff\1\171\1\163\1\157\1\143"+
+ "\1\52\1\157\1\145\1\157\1\156\1\uffff\1\155\1\52\1\uffff\1\162\1"+
+ "\53\1\130\1\101\2\uffff\2\0\2\uffff\1\151\1\uffff\1\144\1\156\1"+
+ "\170\2\154\1\157\2\uffff\1\142\2\uffff\1\156\1\145\1\154\2\164\3"+
+ "\uffff\1\157\1\162\1\141\1\156\1\164\1\uffff\1\160\3\uffff\1\165"+
+ "\1\uffff\1\60\4\uffff\1\164\1\145\2\60\1\163\1\145\1\155\1\123\1"+
+ "\141\1\162\1\154\1\157\1\162\2\164\1\165\1\144\1\152\1\145\1\157"+
+ "\2\145\1\154\2\uffff\1\145\1\40\1\60\1\171\1\155\1\40\1\151\1\162"+
+ "\1\60\1\157\1\60\1\154\1\60\1\165\2\162\4\60\2\uffff\1\163\1\151"+
+ "\1\143\1\156\1\103\1\uffff\1\143\1\uffff\1\141\1\uffff\1\147\1\146"+
+ "\1\164\4\uffff\1\164\1\143\2\uffff\1\147\1\154\1\156\1\157\1\162"+
+ "\2\141\1\60\1\145\2\40\1\141\1\163\1\154\1\60\1\164\1\143\1\uffff"+
+ "\1\155\2\uffff\1\163\1\164\1\103\1\uffff\2\145\1\103\1\163\1\141"+
+ "\1\154\1\60\1\111\1\157\1\103\1\156\1\141\1\uffff\1\164\1\156\1"+
+ "\157\1\143\1\163\1\145\1\146\1\156\1\145\1\163\1\155\1\151\1\146"+
+ "\2\103\1\60\1\147\1\151\2\157\1\uffff\1\60\1\147\2\156\1\uffff\1"+
+ "\60\2\146\1\uffff\2\151\2\147\2\60\2\uffff";
+ static final String DFA16_maxS =
+ "\1\uffff\1\162\1\157\1\162\2\uffff\1\165\2\uffff\1\171\1\163\1"+
+ "\157\1\164\1\57\1\162\1\145\1\157\1\156\1\uffff\1\155\1\52\1\uffff"+
+ "\1\162\1\71\1\170\1\172\2\uffff\2\uffff\2\uffff\1\151\1\uffff\1"+
+ "\144\1\156\1\170\2\154\1\157\2\uffff\1\142\2\uffff\1\156\1\145\1"+
+ "\154\2\164\3\uffff\1\157\1\162\1\147\1\156\1\164\1\uffff\1\160\3"+
+ "\uffff\1\165\1\uffff\1\172\4\uffff\1\164\1\145\2\172\1\163\1\145"+
+ "\1\155\1\123\1\141\1\162\1\154\1\157\1\162\2\164\1\165\1\144\1\152"+
+ "\1\145\1\157\2\145\1\154\2\uffff\1\145\1\40\1\172\1\171\1\155\1"+
+ "\40\1\151\1\162\1\172\1\157\1\172\1\154\1\172\1\165\2\162\4\172"+
+ "\2\uffff\1\163\2\151\1\156\1\111\1\uffff\1\143\1\uffff\1\141\1\uffff"+
+ "\1\147\1\146\1\164\4\uffff\1\164\1\143\2\uffff\1\147\1\154\1\156"+
+ "\1\157\1\162\2\141\1\172\1\145\2\40\1\141\1\163\1\154\1\172\1\164"+
+ "\1\143\1\uffff\1\155\2\uffff\1\163\1\164\1\103\1\uffff\2\145\1\103"+
+ "\1\163\1\141\1\154\1\172\1\111\1\157\1\103\1\156\1\141\1\uffff\1"+
+ "\164\1\156\1\157\1\143\1\163\1\145\1\146\1\156\1\145\1\163\1\155"+
+ "\1\151\1\146\2\103\1\172\1\147\1\151\2\157\1\uffff\1\172\1\147\2"+
+ "\156\1\uffff\1\172\2\146\1\uffff\2\151\2\147\2\172\2\uffff";
+ static final String DFA16_acceptS =
+ "\4\uffff\1\4\1\5\1\uffff\1\7\1\10\11\uffff\1\27\2\uffff\1\36\4"+
+ "\uffff\1\43\1\44\2\uffff\1\50\1\51\1\uffff\1\43\6\uffff\1\4\1\5"+
+ "\1\uffff\1\7\1\10\5\uffff\1\46\1\47\1\20\5\uffff\1\27\1\uffff\1"+
+ "\34\1\35\1\36\1\uffff\1\41\1\uffff\1\42\1\44\1\45\1\50\27\uffff"+
+ "\1\30\1\31\24\uffff\1\12\1\33\5\uffff\1\26\1\uffff\1\24\1\uffff"+
+ "\1\37\3\uffff\1\40\1\1\1\2\1\3\2\uffff\1\13\1\14\21\uffff\1\32\1"+
+ "\uffff\1\11\1\15\3\uffff\1\22\14\uffff\1\23\24\uffff\1\25\4\uffff"+
+ "\1\6\3\uffff\1\16\6\uffff\1\17\1\21";
+ static final String DFA16_specialS =
+ "\1\0\33\uffff\1\2\1\1\u00b8\uffff}>";
+ static final String[] DFA16_transitionS = {
+ "\11\37\2\36\2\37\1\36\22\37\1\36\1\37\1\34\4\37\1\35\3\37\1"+
+ "\4\1\25\1\5\1\24\1\15\1\30\11\33\3\37\1\22\3\37\1\14\3\32\1"+
+ "\27\3\32\1\21\6\32\1\16\2\32\1\6\7\32\3\37\1\31\1\32\1\37\2"+
+ "\32\1\20\1\11\1\27\1\3\2\32\1\23\3\32\1\2\2\32\1\13\1\32\1\17"+
+ "\1\32\1\26\1\12\1\32\1\1\3\32\1\7\1\37\1\10\uff82\37",
+ "\1\40",
+ "\1\44\7\uffff\1\43\5\uffff\1\42",
+ "\1\45\7\uffff\1\46\10\uffff\1\47",
"",
"",
- "\1\42\20\uffff\1\43",
+ "\1\52",
"",
"",
- "\1\46\4\uffff\1\47",
- "\1\52\2\uffff\1\51",
- "\1\53",
- "\1\54",
"\1\55",
- "",
+ "\1\56",
"\1\57",
- "\1\60",
- "",
- "\1\63",
- "\1\64\37\uffff\1\64",
- "\32\35\4\uffff\1\35\1\uffff\32\35",
- "",
- "",
- "\0\66",
- "\0\66",
- "",
- "",
+ "\1\60\20\uffff\1\61",
+ "\1\62\4\uffff\1\63",
+ "\1\66\2\uffff\1\65",
+ "\1\67",
"\1\70",
"\1\71",
- "\1\72",
"",
"\1\73",
"\1\74",
"",
- "",
- "\1\75",
- "\1\76",
- "",
- "",
- "",
- "",
- "",
"\1\77",
- "\1\100",
- "\1\101",
- "\1\102",
- "\1\103",
- "",
- "\1\104",
- "",
- "",
- "",
- "\1\105",
+ "\1\100\1\uffff\1\100\2\uffff\12\101",
+ "\1\102\37\uffff\1\102",
+ "\32\41\4\uffff\1\41\1\uffff\32\41",
"",
"",
+ "\0\104",
+ "\0\104",
"",
"",
"\1\106",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
+ "",
+ "\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\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
+ "",
+ "\1\123",
+ "\1\124",
+ "\1\126\5\uffff\1\125",
"\1\127",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
+ "\1\130",
+ "",
"\1\131",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
- "\1\133",
- "\1\134",
- "\1\135",
- "\1\136",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
"",
- "\1\142\5\uffff\1\143",
"",
- "\1\144",
"",
+ "\1\132",
+ "",
+ "\12\101\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "",
+ "",
+ "",
+ "",
+ "\1\133",
+ "\1\134",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\137",
+ "\1\140",
+ "\1\141",
+ "\1\142",
+ "\1\143",
+ "\1\144",
"\1\145",
"\1\146",
"\1\147",
"\1\150",
- "",
- "",
- "",
"\1\151",
"\1\152",
"\1\153",
"\1\154",
"\1\155",
"\1\156",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
+ "\1\157",
"\1\160",
"\1\161",
+ "",
+ "",
"\1\162",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
- "\1\164",
+ "\1\163",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\165",
- "",
"\1\166",
"\1\167",
"\1\170",
- "",
"\1\171",
- "\1\172",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\173",
- "\1\174",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\175",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\177",
"\1\u0080",
"\1\u0081",
- "\1\u0082",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "",
"",
- "\1\u0083",
- "\1\u0084",
- "\1\u0085",
"\1\u0086",
"\1\u0087",
- "\1\u0088",
- "\1\u0089",
+ "\1\u0089\5\uffff\1\u0088",
"\1\u008a",
- "\1\u008b",
- "\1\u008c",
+ "\1\u008b\5\uffff\1\u008c",
+ "",
"\1\u008d",
+ "",
"\1\u008e",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
+ "",
+ "\1\u008f",
"\1\u0090",
"\1\u0091",
- "\1\u0092",
"",
+ "",
+ "",
+ "",
+ "\1\u0092",
"\1\u0093",
+ "",
+ "",
"\1\u0094",
"\1\u0095",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
+ "\1\u0096",
"\1\u0097",
"\1\u0098",
- "",
"\1\u0099",
"\1\u009a",
- "\1\u009b",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\u009c",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
- "\12\35\7\uffff\32\35\4\uffff\1\35\1\uffff\32\35",
+ "\1\u009d",
+ "\1\u009e",
+ "\1\u009f",
+ "\1\u00a0",
+ "\1\u00a1",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00a3",
+ "\1\u00a4",
+ "",
+ "\1\u00a5",
+ "",
+ "",
+ "\1\u00a6",
+ "\1\u00a7",
+ "\1\u00a8",
+ "",
+ "\1\u00a9",
+ "\1\u00aa",
+ "\1\u00ab",
+ "\1\u00ac",
+ "\1\u00ad",
+ "\1\u00ae",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00b0",
+ "\1\u00b1",
+ "\1\u00b2",
+ "\1\u00b3",
+ "\1\u00b4",
+ "",
+ "\1\u00b5",
+ "\1\u00b6",
+ "\1\u00b7",
+ "\1\u00b8",
+ "\1\u00b9",
+ "\1\u00ba",
+ "\1\u00bb",
+ "\1\u00bc",
+ "\1\u00bd",
+ "\1\u00be",
+ "\1\u00bf",
+ "\1\u00c0",
+ "\1\u00c1",
+ "\1\u00c2",
+ "\1\u00c3",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00c5",
+ "\1\u00c6",
+ "\1\u00c7",
+ "\1\u00c8",
+ "",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00ca",
+ "\1\u00cb",
+ "\1\u00cc",
+ "",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00ce",
+ "\1\u00cf",
+ "",
+ "\1\u00d0",
+ "\1\u00d1",
+ "\1\u00d2",
+ "\1\u00d3",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"",
""
};
- static final short[] DFA14_eot = DFA.unpackEncodedString(DFA14_eotS);
- static final short[] DFA14_eof = DFA.unpackEncodedString(DFA14_eofS);
- static final char[] DFA14_min = DFA.unpackEncodedStringToUnsignedChars(DFA14_minS);
- static final char[] DFA14_max = DFA.unpackEncodedStringToUnsignedChars(DFA14_maxS);
- static final short[] DFA14_accept = DFA.unpackEncodedString(DFA14_acceptS);
- static final short[] DFA14_special = DFA.unpackEncodedString(DFA14_specialS);
- static final short[][] DFA14_transition;
+ 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 = DFA14_transitionS.length;
- DFA14_transition = new short[numStates][];
+ int numStates = DFA16_transitionS.length;
+ DFA16_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
- DFA14_transition[i] = DFA.unpackEncodedString(DFA14_transitionS[i]);
+ DFA16_transition[i] = DFA.unpackEncodedString(DFA16_transitionS[i]);
}
}
- class DFA14 extends DFA {
+ class DFA16 extends DFA {
- public DFA14(BaseRecognizer recognizer) {
+ public DFA16(BaseRecognizer recognizer) {
this.recognizer = recognizer;
- this.decisionNumber = 14;
- this.eot = DFA14_eot;
- this.eof = DFA14_eof;
- this.min = DFA14_min;
- this.max = DFA14_max;
- this.accept = DFA14_accept;
- this.special = DFA14_special;
- this.transition = DFA14_transition;
+ 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__12 | 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 | T__35 | RULE_HEX | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
+ 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 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | 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 LA14_22 = input.LA(1);
+ int LA16_0 = input.LA(1);
s = -1;
- if ( ((LA14_22>='\u0000' && LA14_22<='\uFFFF')) ) {s = 54;}
+ if ( (LA16_0=='w') ) {s = 1;}
- else s = 25;
+ else if ( (LA16_0=='m') ) {s = 2;}
- if ( s>=0 ) return s;
- break;
- case 1 :
- int LA14_0 = input.LA(1);
+ else if ( (LA16_0=='f') ) {s = 3;}
- s = -1;
- if ( (LA14_0=='m') ) {s = 1;}
+ else if ( (LA16_0=='+') ) {s = 4;}
+
+ else if ( (LA16_0=='-') ) {s = 5;}
+
+ else if ( (LA16_0=='S') ) {s = 6;}
+
+ else if ( (LA16_0=='{') ) {s = 7;}
- else if ( (LA14_0=='f') ) {s = 2;}
+ else if ( (LA16_0=='}') ) {s = 8;}
- else if ( (LA14_0=='+') ) {s = 3;}
+ else if ( (LA16_0=='d') ) {s = 9;}
- else if ( (LA14_0=='-') ) {s = 4;}
+ else if ( (LA16_0=='u') ) {s = 10;}
- else if ( (LA14_0=='A') ) {s = 5;}
+ else if ( (LA16_0=='p') ) {s = 11;}
- else if ( (LA14_0=='{') ) {s = 6;}
+ else if ( (LA16_0=='A') ) {s = 12;}
- else if ( (LA14_0=='}') ) {s = 7;}
+ else if ( (LA16_0=='/') ) {s = 13;}
- else if ( (LA14_0=='/') ) {s = 8;}
+ else if ( (LA16_0=='P') ) {s = 14;}
- else if ( (LA14_0=='P') ) {s = 9;}
+ else if ( (LA16_0=='r') ) {s = 15;}
- else if ( (LA14_0=='r') ) {s = 10;}
+ else if ( (LA16_0=='c') ) {s = 16;}
- else if ( (LA14_0=='c') ) {s = 11;}
+ else if ( (LA16_0=='I') ) {s = 17;}
- else if ( (LA14_0=='I') ) {s = 12;}
+ else if ( (LA16_0=='=') ) {s = 18;}
- else if ( (LA14_0=='=') ) {s = 13;}
+ else if ( (LA16_0=='i') ) {s = 19;}
- else if ( (LA14_0=='i') ) {s = 14;}
+ else if ( (LA16_0=='.') ) {s = 20;}
- else if ( (LA14_0=='.') ) {s = 15;}
+ else if ( (LA16_0==',') ) {s = 21;}
- else if ( (LA14_0==',') ) {s = 16;}
+ else if ( (LA16_0=='t') ) {s = 22;}
- else if ( (LA14_0=='t') ) {s = 17;}
+ else if ( (LA16_0=='E'||LA16_0=='e') ) {s = 23;}
- else if ( (LA14_0=='0') ) {s = 18;}
+ else if ( (LA16_0=='0') ) {s = 24;}
- else if ( (LA14_0=='^') ) {s = 19;}
+ else if ( (LA16_0=='^') ) {s = 25;}
- else if ( ((LA14_0>='B' && LA14_0<='H')||(LA14_0>='J' && LA14_0<='O')||(LA14_0>='Q' && LA14_0<='Z')||LA14_0=='_'||(LA14_0>='a' && LA14_0<='b')||(LA14_0>='d' && LA14_0<='e')||(LA14_0>='g' && LA14_0<='h')||(LA14_0>='j' && LA14_0<='l')||(LA14_0>='n' && LA14_0<='q')||LA14_0=='s'||(LA14_0>='u' && LA14_0<='z')) ) {s = 20;}
+ else if ( ((LA16_0>='B' && LA16_0<='D')||(LA16_0>='F' && LA16_0<='H')||(LA16_0>='J' && LA16_0<='O')||(LA16_0>='Q' && LA16_0<='R')||(LA16_0>='T' && LA16_0<='Z')||LA16_0=='_'||(LA16_0>='a' && LA16_0<='b')||(LA16_0>='g' && LA16_0<='h')||(LA16_0>='j' && LA16_0<='l')||(LA16_0>='n' && LA16_0<='o')||LA16_0=='q'||LA16_0=='s'||LA16_0=='v'||(LA16_0>='x' && LA16_0<='z')) ) {s = 26;}
- else if ( ((LA14_0>='1' && LA14_0<='9')) ) {s = 21;}
+ else if ( ((LA16_0>='1' && LA16_0<='9')) ) {s = 27;}
- else if ( (LA14_0=='\"') ) {s = 22;}
+ else if ( (LA16_0=='\"') ) {s = 28;}
- else if ( (LA14_0=='\'') ) {s = 23;}
+ else if ( (LA16_0=='\'') ) {s = 29;}
- else if ( ((LA14_0>='\t' && LA14_0<='\n')||LA14_0=='\r'||LA14_0==' ') ) {s = 24;}
+ else if ( ((LA16_0>='\t' && LA16_0<='\n')||LA16_0=='\r'||LA16_0==' ') ) {s = 30;}
+
+ 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=='|'||(LA16_0>='~' && LA16_0<='\uFFFF')) ) {s = 31;}
+
+ if ( s>=0 ) return s;
+ break;
+ case 1 :
+ int LA16_29 = input.LA(1);
+
+ s = -1;
+ if ( ((LA16_29>='\u0000' && LA16_29<='\uFFFF')) ) {s = 68;}
- else if ( ((LA14_0>='\u0000' && LA14_0<='\b')||(LA14_0>='\u000B' && LA14_0<='\f')||(LA14_0>='\u000E' && LA14_0<='\u001F')||LA14_0=='!'||(LA14_0>='#' && LA14_0<='&')||(LA14_0>='(' && LA14_0<='*')||(LA14_0>=':' && LA14_0<='<')||(LA14_0>='>' && LA14_0<='@')||(LA14_0>='[' && LA14_0<=']')||LA14_0=='`'||LA14_0=='|'||(LA14_0>='~' && LA14_0<='\uFFFF')) ) {s = 25;}
+ else s = 31;
if ( s>=0 ) return s;
break;
case 2 :
- int LA14_23 = input.LA(1);
+ int LA16_28 = input.LA(1);
s = -1;
- if ( ((LA14_23>='\u0000' && LA14_23<='\uFFFF')) ) {s = 54;}
+ if ( ((LA16_28>='\u0000' && LA16_28<='\uFFFF')) ) {s = 68;}
- else s = 25;
+ else s = 31;
if ( s>=0 ) return s;
break;
}
NoViableAltException nvae =
- new NoViableAltException(getDescription(), 14, _s, input);
+ new NoViableAltException(getDescription(), 16, _s, input);
error(nvae);
throw nvae;
}
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigParser.java b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigParser.java
index 2ce8daa46..c67ffc590 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigParser.java
+++ b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfigParser.java
@@ -18,13 +18,15 @@ import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;
-
+import java.util.Map;
+import java.util.HashMap;
@SuppressWarnings("all")
public class InternalConfigParser extends AbstractInternalContentAssistParser {
public static final String[] tokenNames = new String[] {
- "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_HEX", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'model'", "'false'", "'+'", "'-'", "'ActorClassConfig'", "'{'", "'}'", "'ActorInstanceConfig'", "'/'", "'ProtocolClassConfig'", "'regular'", "'conjugate'", "'Port'", "'InterfaceItem'", "'Attr'", "'='", "'min'", "'max'", "'import'", "'from'", "'.*'", "'.'", "','", "'true'"
+ "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_HEX", "RULE_ID", "RULE_INT", "RULE_EXP", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'write'", "'model'", "'false'", "'+'", "'-'", "'SubSystemConfig'", "'{'", "'}'", "'dynamic configuration'", "'file path'", "'user import'", "'user constructor'", "'polling timer [ms]'", "'ActorClassConfig'", "'ActorInstanceConfig'", "'/'", "'ProtocolClassConfig'", "'regular'", "'conjugate'", "'Port'", "'InterfaceItem'", "'Attr'", "'='", "'min'", "'max'", "'import'", "'from'", "'.*'", "'.'", "','", "'read'", "'true'"
};
public static final int RULE_ID=5;
+ 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;
@@ -33,30 +35,38 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
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=11;
+ 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=9;
public static final int EOF=-1;
- public static final int RULE_ML_COMMENT=8;
- 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=7;
public static final int RULE_HEX=4;
- 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__35=35;
public static final int T__18=18;
public static final int T__17=17;
- public static final int T__12=12;
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=10;
+ public static final int T__42=42;
+ public static final int T__43=43;
+ public static final int T__40=40;
+ public static final int T__41=41;
+ public static final int T__44=44;
+ public static final int RULE_SL_COMMENT=10;
+ public static final int RULE_ML_COMMENT=9;
+ 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_STRING=8;
+ public static final int T__33=33;
+ public static final int T__34=34;
+ public static final int T__35=35;
+ public static final int T__36=36;
+ public static final int T__37=37;
+ public static final int T__38=38;
+ public static final int T__39=39;
+ public static final int RULE_WS=11;
// delegates
// delegators
@@ -102,14 +112,18 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:61:1: ( ruleConfigModel EOF )
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:62:1: ruleConfigModel EOF
{
- before(grammarAccess.getConfigModelRule());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigModelRule());
+ }
pushFollow(FOLLOW_ruleConfigModel_in_entryRuleConfigModel61);
ruleConfigModel();
state._fsp--;
-
- after(grammarAccess.getConfigModelRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleConfigModel68);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigModelRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleConfigModel68); if (state.failed) return ;
}
@@ -138,7 +152,9 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:74:1: ( ( rule__ConfigModel__Group__0 ) )
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:75:1: ( rule__ConfigModel__Group__0 )
{
- before(grammarAccess.getConfigModelAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigModelAccess().getGroup());
+ }
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:76:1: ( rule__ConfigModel__Group__0 )
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:76:2: rule__ConfigModel__Group__0
{
@@ -146,11 +162,13 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
rule__ConfigModel__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getConfigModelAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigModelAccess().getGroup());
+ }
}
@@ -179,14 +197,18 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:89:1: ( ruleConfigElement EOF )
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:90:1: ruleConfigElement EOF
{
- before(grammarAccess.getConfigElementRule());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigElementRule());
+ }
pushFollow(FOLLOW_ruleConfigElement_in_entryRuleConfigElement121);
ruleConfigElement();
state._fsp--;
-
- after(grammarAccess.getConfigElementRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleConfigElement128);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigElementRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleConfigElement128); if (state.failed) return ;
}
@@ -215,7 +237,9 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:102:1: ( ( rule__ConfigElement__Alternatives ) )
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:103:1: ( rule__ConfigElement__Alternatives )
{
- before(grammarAccess.getConfigElementAccess().getAlternatives());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigElementAccess().getAlternatives());
+ }
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:104:1: ( rule__ConfigElement__Alternatives )
// ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:104:2: rule__ConfigElement__Alternatives
{
@@ -223,11 +247,13 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
rule__ConfigElement__Alternatives();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getConfigElementAccess().getAlternatives());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigElementAccess().getAlternatives());
+ }
}
@@ -249,21 +275,195 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "ruleConfigElement"
+ // $ANTLR start "entryRuleSubSystemConfig"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:116:1: entryRuleSubSystemConfig : ruleSubSystemConfig EOF ;
+ public final void entryRuleSubSystemConfig() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:117:1: ( ruleSubSystemConfig EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:118:1: ruleSubSystemConfig EOF
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigRule());
+ }
+ pushFollow(FOLLOW_ruleSubSystemConfig_in_entryRuleSubSystemConfig181);
+ ruleSubSystemConfig();
+
+ state._fsp--;
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleSubSystemConfig188); if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleSubSystemConfig"
+
+
+ // $ANTLR start "ruleSubSystemConfig"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:125:1: ruleSubSystemConfig : ( ( rule__SubSystemConfig__Group__0 ) ) ;
+ public final void ruleSubSystemConfig() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:129:2: ( ( ( rule__SubSystemConfig__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:130:1: ( ( rule__SubSystemConfig__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:130:1: ( ( rule__SubSystemConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:131:1: ( rule__SubSystemConfig__Group__0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:132:1: ( rule__SubSystemConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:132:2: rule__SubSystemConfig__Group__0
+ {
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__0_in_ruleSubSystemConfig214);
+ rule__SubSystemConfig__Group__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigAccess().getGroup());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleSubSystemConfig"
+
+
+ // $ANTLR start "entryRuleDynamicConfig"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:144:1: entryRuleDynamicConfig : ruleDynamicConfig EOF ;
+ public final void entryRuleDynamicConfig() throws RecognitionException {
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:145:1: ( ruleDynamicConfig EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:146:1: ruleDynamicConfig EOF
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigRule());
+ }
+ pushFollow(FOLLOW_ruleDynamicConfig_in_entryRuleDynamicConfig241);
+ ruleDynamicConfig();
+
+ state._fsp--;
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDynamicConfig248); if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ }
+ return ;
+ }
+ // $ANTLR end "entryRuleDynamicConfig"
+
+
+ // $ANTLR start "ruleDynamicConfig"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:153:1: ruleDynamicConfig : ( ( rule__DynamicConfig__Group__0 ) ) ;
+ public final void ruleDynamicConfig() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:157:2: ( ( ( rule__DynamicConfig__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:158:1: ( ( rule__DynamicConfig__Group__0 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:158:1: ( ( rule__DynamicConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:159:1: ( rule__DynamicConfig__Group__0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:160:1: ( rule__DynamicConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:160:2: rule__DynamicConfig__Group__0
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group__0_in_ruleDynamicConfig274);
+ rule__DynamicConfig__Group__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getGroup());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "ruleDynamicConfig"
+
+
// $ANTLR start "entryRuleActorClassConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:116:1: entryRuleActorClassConfig : ruleActorClassConfig EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:172:1: entryRuleActorClassConfig : ruleActorClassConfig EOF ;
public final void entryRuleActorClassConfig() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:117:1: ( ruleActorClassConfig EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:118:1: ruleActorClassConfig EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:173:1: ( ruleActorClassConfig EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:174:1: ruleActorClassConfig EOF
{
- before(grammarAccess.getActorClassConfigRule());
- pushFollow(FOLLOW_ruleActorClassConfig_in_entryRuleActorClassConfig181);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigRule());
+ }
+ pushFollow(FOLLOW_ruleActorClassConfig_in_entryRuleActorClassConfig301);
ruleActorClassConfig();
state._fsp--;
-
- after(grammarAccess.getActorClassConfigRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleActorClassConfig188);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleActorClassConfig308); if (state.failed) return ;
}
@@ -280,31 +480,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleActorClassConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:125:1: ruleActorClassConfig : ( ( rule__ActorClassConfig__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:181:1: ruleActorClassConfig : ( ( rule__ActorClassConfig__Group__0 ) ) ;
public final void ruleActorClassConfig() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:129:2: ( ( ( rule__ActorClassConfig__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:130:1: ( ( rule__ActorClassConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:185:2: ( ( ( rule__ActorClassConfig__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:186:1: ( ( rule__ActorClassConfig__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:130:1: ( ( rule__ActorClassConfig__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:131:1: ( rule__ActorClassConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:186:1: ( ( rule__ActorClassConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:187:1: ( rule__ActorClassConfig__Group__0 )
{
- before(grammarAccess.getActorClassConfigAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:132:1: ( rule__ActorClassConfig__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:132:2: rule__ActorClassConfig__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:188:1: ( rule__ActorClassConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:188:2: rule__ActorClassConfig__Group__0
{
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__0_in_ruleActorClassConfig214);
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__0_in_ruleActorClassConfig334);
rule__ActorClassConfig__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getActorClassConfigAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigAccess().getGroup());
+ }
}
@@ -327,20 +531,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleActorInstanceConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:144:1: entryRuleActorInstanceConfig : ruleActorInstanceConfig EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:200:1: entryRuleActorInstanceConfig : ruleActorInstanceConfig EOF ;
public final void entryRuleActorInstanceConfig() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:145:1: ( ruleActorInstanceConfig EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:146:1: ruleActorInstanceConfig EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:201:1: ( ruleActorInstanceConfig EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:202:1: ruleActorInstanceConfig EOF
{
- before(grammarAccess.getActorInstanceConfigRule());
- pushFollow(FOLLOW_ruleActorInstanceConfig_in_entryRuleActorInstanceConfig241);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigRule());
+ }
+ pushFollow(FOLLOW_ruleActorInstanceConfig_in_entryRuleActorInstanceConfig361);
ruleActorInstanceConfig();
state._fsp--;
-
- after(grammarAccess.getActorInstanceConfigRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleActorInstanceConfig248);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleActorInstanceConfig368); if (state.failed) return ;
}
@@ -357,31 +565,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleActorInstanceConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:153:1: ruleActorInstanceConfig : ( ( rule__ActorInstanceConfig__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:209:1: ruleActorInstanceConfig : ( ( rule__ActorInstanceConfig__Group__0 ) ) ;
public final void ruleActorInstanceConfig() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:157:2: ( ( ( rule__ActorInstanceConfig__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:158:1: ( ( rule__ActorInstanceConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:213:2: ( ( ( rule__ActorInstanceConfig__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:214:1: ( ( rule__ActorInstanceConfig__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:158:1: ( ( rule__ActorInstanceConfig__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:159:1: ( rule__ActorInstanceConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:214:1: ( ( rule__ActorInstanceConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:215:1: ( rule__ActorInstanceConfig__Group__0 )
{
- before(grammarAccess.getActorInstanceConfigAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:160:1: ( rule__ActorInstanceConfig__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:160:2: rule__ActorInstanceConfig__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:216:1: ( rule__ActorInstanceConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:216:2: rule__ActorInstanceConfig__Group__0
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__0_in_ruleActorInstanceConfig274);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__0_in_ruleActorInstanceConfig394);
rule__ActorInstanceConfig__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getActorInstanceConfigAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getGroup());
+ }
}
@@ -404,20 +616,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleProtocolClassConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:172:1: entryRuleProtocolClassConfig : ruleProtocolClassConfig EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:228:1: entryRuleProtocolClassConfig : ruleProtocolClassConfig EOF ;
public final void entryRuleProtocolClassConfig() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:173:1: ( ruleProtocolClassConfig EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:174:1: ruleProtocolClassConfig EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:229:1: ( ruleProtocolClassConfig EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:230:1: ruleProtocolClassConfig EOF
{
- before(grammarAccess.getProtocolClassConfigRule());
- pushFollow(FOLLOW_ruleProtocolClassConfig_in_entryRuleProtocolClassConfig301);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigRule());
+ }
+ pushFollow(FOLLOW_ruleProtocolClassConfig_in_entryRuleProtocolClassConfig421);
ruleProtocolClassConfig();
state._fsp--;
-
- after(grammarAccess.getProtocolClassConfigRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleProtocolClassConfig308);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleProtocolClassConfig428); if (state.failed) return ;
}
@@ -434,31 +650,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleProtocolClassConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:181:1: ruleProtocolClassConfig : ( ( rule__ProtocolClassConfig__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:237:1: ruleProtocolClassConfig : ( ( rule__ProtocolClassConfig__Group__0 ) ) ;
public final void ruleProtocolClassConfig() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:185:2: ( ( ( rule__ProtocolClassConfig__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:186:1: ( ( rule__ProtocolClassConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:241:2: ( ( ( rule__ProtocolClassConfig__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:242:1: ( ( rule__ProtocolClassConfig__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:186:1: ( ( rule__ProtocolClassConfig__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:187:1: ( rule__ProtocolClassConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:242:1: ( ( rule__ProtocolClassConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:243:1: ( rule__ProtocolClassConfig__Group__0 )
{
- before(grammarAccess.getProtocolClassConfigAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:188:1: ( rule__ProtocolClassConfig__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:188:2: rule__ProtocolClassConfig__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:244:1: ( rule__ProtocolClassConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:244:2: rule__ProtocolClassConfig__Group__0
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__0_in_ruleProtocolClassConfig334);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__0_in_ruleProtocolClassConfig454);
rule__ProtocolClassConfig__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getProtocolClassConfigAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getGroup());
+ }
}
@@ -481,20 +701,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRulePortClassConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:200:1: entryRulePortClassConfig : rulePortClassConfig EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:256:1: entryRulePortClassConfig : rulePortClassConfig EOF ;
public final void entryRulePortClassConfig() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:201:1: ( rulePortClassConfig EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:202:1: rulePortClassConfig EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:257:1: ( rulePortClassConfig EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:258:1: rulePortClassConfig EOF
{
- before(grammarAccess.getPortClassConfigRule());
- pushFollow(FOLLOW_rulePortClassConfig_in_entryRulePortClassConfig361);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortClassConfigRule());
+ }
+ pushFollow(FOLLOW_rulePortClassConfig_in_entryRulePortClassConfig481);
rulePortClassConfig();
state._fsp--;
-
- after(grammarAccess.getPortClassConfigRule());
- match(input,EOF,FOLLOW_EOF_in_entryRulePortClassConfig368);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortClassConfigRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRulePortClassConfig488); if (state.failed) return ;
}
@@ -511,31 +735,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rulePortClassConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:209:1: rulePortClassConfig : ( ( rule__PortClassConfig__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:265:1: rulePortClassConfig : ( ( rule__PortClassConfig__Group__0 ) ) ;
public final void rulePortClassConfig() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:213:2: ( ( ( rule__PortClassConfig__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:214:1: ( ( rule__PortClassConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:269:2: ( ( ( rule__PortClassConfig__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:270:1: ( ( rule__PortClassConfig__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:214:1: ( ( rule__PortClassConfig__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:215:1: ( rule__PortClassConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:270:1: ( ( rule__PortClassConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:271:1: ( rule__PortClassConfig__Group__0 )
{
- before(grammarAccess.getPortClassConfigAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:216:1: ( rule__PortClassConfig__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:216:2: rule__PortClassConfig__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortClassConfigAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:272:1: ( rule__PortClassConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:272:2: rule__PortClassConfig__Group__0
{
- pushFollow(FOLLOW_rule__PortClassConfig__Group__0_in_rulePortClassConfig394);
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__0_in_rulePortClassConfig514);
rule__PortClassConfig__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getPortClassConfigAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortClassConfigAccess().getGroup());
+ }
}
@@ -558,20 +786,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRulePortInstanceConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:228:1: entryRulePortInstanceConfig : rulePortInstanceConfig EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:284:1: entryRulePortInstanceConfig : rulePortInstanceConfig EOF ;
public final void entryRulePortInstanceConfig() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:229:1: ( rulePortInstanceConfig EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:230:1: rulePortInstanceConfig EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:285:1: ( rulePortInstanceConfig EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:286:1: rulePortInstanceConfig EOF
{
- before(grammarAccess.getPortInstanceConfigRule());
- pushFollow(FOLLOW_rulePortInstanceConfig_in_entryRulePortInstanceConfig421);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigRule());
+ }
+ pushFollow(FOLLOW_rulePortInstanceConfig_in_entryRulePortInstanceConfig541);
rulePortInstanceConfig();
state._fsp--;
-
- after(grammarAccess.getPortInstanceConfigRule());
- match(input,EOF,FOLLOW_EOF_in_entryRulePortInstanceConfig428);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRulePortInstanceConfig548); if (state.failed) return ;
}
@@ -588,31 +820,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rulePortInstanceConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:237:1: rulePortInstanceConfig : ( ( rule__PortInstanceConfig__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:293:1: rulePortInstanceConfig : ( ( rule__PortInstanceConfig__Group__0 ) ) ;
public final void rulePortInstanceConfig() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:241:2: ( ( ( rule__PortInstanceConfig__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:242:1: ( ( rule__PortInstanceConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:297:2: ( ( ( rule__PortInstanceConfig__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:298:1: ( ( rule__PortInstanceConfig__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:242:1: ( ( rule__PortInstanceConfig__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:243:1: ( rule__PortInstanceConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:298:1: ( ( rule__PortInstanceConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:299:1: ( rule__PortInstanceConfig__Group__0 )
{
- before(grammarAccess.getPortInstanceConfigAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:244:1: ( rule__PortInstanceConfig__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:244:2: rule__PortInstanceConfig__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:300:1: ( rule__PortInstanceConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:300:2: rule__PortInstanceConfig__Group__0
{
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__0_in_rulePortInstanceConfig454);
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__0_in_rulePortInstanceConfig574);
rule__PortInstanceConfig__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getPortInstanceConfigAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigAccess().getGroup());
+ }
}
@@ -635,20 +871,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleAttrClassConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:258:1: entryRuleAttrClassConfig : ruleAttrClassConfig EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:314:1: entryRuleAttrClassConfig : ruleAttrClassConfig EOF ;
public final void entryRuleAttrClassConfig() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:259:1: ( ruleAttrClassConfig EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:260:1: ruleAttrClassConfig EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:315:1: ( ruleAttrClassConfig EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:316:1: ruleAttrClassConfig EOF
{
- before(grammarAccess.getAttrClassConfigRule());
- pushFollow(FOLLOW_ruleAttrClassConfig_in_entryRuleAttrClassConfig483);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigRule());
+ }
+ pushFollow(FOLLOW_ruleAttrClassConfig_in_entryRuleAttrClassConfig603);
ruleAttrClassConfig();
state._fsp--;
-
- after(grammarAccess.getAttrClassConfigRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleAttrClassConfig490);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAttrClassConfig610); if (state.failed) return ;
}
@@ -665,31 +905,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleAttrClassConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:267:1: ruleAttrClassConfig : ( ( rule__AttrClassConfig__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:323:1: ruleAttrClassConfig : ( ( rule__AttrClassConfig__Group__0 ) ) ;
public final void ruleAttrClassConfig() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:271:2: ( ( ( rule__AttrClassConfig__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:272:1: ( ( rule__AttrClassConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:327:2: ( ( ( rule__AttrClassConfig__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:328:1: ( ( rule__AttrClassConfig__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:272:1: ( ( rule__AttrClassConfig__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:273:1: ( rule__AttrClassConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:328:1: ( ( rule__AttrClassConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:329:1: ( rule__AttrClassConfig__Group__0 )
{
- before(grammarAccess.getAttrClassConfigAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:274:1: ( rule__AttrClassConfig__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:274:2: rule__AttrClassConfig__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:330:1: ( rule__AttrClassConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:330:2: rule__AttrClassConfig__Group__0
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group__0_in_ruleAttrClassConfig516);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group__0_in_ruleAttrClassConfig636);
rule__AttrClassConfig__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrClassConfigAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getGroup());
+ }
}
@@ -712,20 +956,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleAttrInstanceConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:286:1: entryRuleAttrInstanceConfig : ruleAttrInstanceConfig EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:342:1: entryRuleAttrInstanceConfig : ruleAttrInstanceConfig EOF ;
public final void entryRuleAttrInstanceConfig() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:287:1: ( ruleAttrInstanceConfig EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:288:1: ruleAttrInstanceConfig EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:343:1: ( ruleAttrInstanceConfig EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:344:1: ruleAttrInstanceConfig EOF
{
- before(grammarAccess.getAttrInstanceConfigRule());
- pushFollow(FOLLOW_ruleAttrInstanceConfig_in_entryRuleAttrInstanceConfig543);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigRule());
+ }
+ pushFollow(FOLLOW_ruleAttrInstanceConfig_in_entryRuleAttrInstanceConfig663);
ruleAttrInstanceConfig();
state._fsp--;
-
- after(grammarAccess.getAttrInstanceConfigRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleAttrInstanceConfig550);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAttrInstanceConfig670); if (state.failed) return ;
}
@@ -742,31 +990,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleAttrInstanceConfig"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:295:1: ruleAttrInstanceConfig : ( ( rule__AttrInstanceConfig__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:351:1: ruleAttrInstanceConfig : ( ( rule__AttrInstanceConfig__Group__0 ) ) ;
public final void ruleAttrInstanceConfig() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:299:2: ( ( ( rule__AttrInstanceConfig__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:300:1: ( ( rule__AttrInstanceConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:355:2: ( ( ( rule__AttrInstanceConfig__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:356:1: ( ( rule__AttrInstanceConfig__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:300:1: ( ( rule__AttrInstanceConfig__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:301:1: ( rule__AttrInstanceConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:356:1: ( ( rule__AttrInstanceConfig__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:357:1: ( rule__AttrInstanceConfig__Group__0 )
{
- before(grammarAccess.getAttrInstanceConfigAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:302:1: ( rule__AttrInstanceConfig__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:302:2: rule__AttrInstanceConfig__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:358:1: ( rule__AttrInstanceConfig__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:358:2: rule__AttrInstanceConfig__Group__0
{
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__0_in_ruleAttrInstanceConfig576);
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__0_in_ruleAttrInstanceConfig696);
rule__AttrInstanceConfig__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrInstanceConfigAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getGroup());
+ }
}
@@ -789,20 +1041,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleRefPath"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:314:1: entryRuleRefPath : ruleRefPath EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:370:1: entryRuleRefPath : ruleRefPath EOF ;
public final void entryRuleRefPath() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:315:1: ( ruleRefPath EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:316:1: ruleRefPath EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:371:1: ( ruleRefPath EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:372:1: ruleRefPath EOF
{
- before(grammarAccess.getRefPathRule());
- pushFollow(FOLLOW_ruleRefPath_in_entryRuleRefPath603);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRefPathRule());
+ }
+ pushFollow(FOLLOW_ruleRefPath_in_entryRuleRefPath723);
ruleRefPath();
state._fsp--;
-
- after(grammarAccess.getRefPathRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleRefPath610);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRefPathRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleRefPath730); if (state.failed) return ;
}
@@ -819,31 +1075,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleRefPath"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:323:1: ruleRefPath : ( ( rule__RefPath__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:379:1: ruleRefPath : ( ( rule__RefPath__Group__0 ) ) ;
public final void ruleRefPath() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:327:2: ( ( ( rule__RefPath__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:328:1: ( ( rule__RefPath__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:383:2: ( ( ( rule__RefPath__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:384:1: ( ( rule__RefPath__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:328:1: ( ( rule__RefPath__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:329:1: ( rule__RefPath__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:384:1: ( ( rule__RefPath__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:385:1: ( rule__RefPath__Group__0 )
{
- before(grammarAccess.getRefPathAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:330:1: ( rule__RefPath__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:330:2: rule__RefPath__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRefPathAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:386:1: ( rule__RefPath__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:386:2: rule__RefPath__Group__0
{
- pushFollow(FOLLOW_rule__RefPath__Group__0_in_ruleRefPath636);
+ pushFollow(FOLLOW_rule__RefPath__Group__0_in_ruleRefPath756);
rule__RefPath__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getRefPathAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRefPathAccess().getGroup());
+ }
}
@@ -866,20 +1126,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleImport"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:342:1: entryRuleImport : ruleImport EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:398:1: entryRuleImport : ruleImport EOF ;
public final void entryRuleImport() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:343:1: ( ruleImport EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:344:1: ruleImport EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:399:1: ( ruleImport EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:400:1: ruleImport EOF
{
- before(grammarAccess.getImportRule());
- pushFollow(FOLLOW_ruleImport_in_entryRuleImport663);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportRule());
+ }
+ pushFollow(FOLLOW_ruleImport_in_entryRuleImport783);
ruleImport();
state._fsp--;
-
- after(grammarAccess.getImportRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleImport670);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleImport790); if (state.failed) return ;
}
@@ -896,31 +1160,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleImport"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:351:1: ruleImport : ( ( rule__Import__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:407:1: ruleImport : ( ( rule__Import__Group__0 ) ) ;
public final void ruleImport() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:355:2: ( ( ( rule__Import__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:356:1: ( ( rule__Import__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:411:2: ( ( ( rule__Import__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:412:1: ( ( rule__Import__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:356:1: ( ( rule__Import__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:357:1: ( rule__Import__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:412:1: ( ( rule__Import__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:413:1: ( rule__Import__Group__0 )
{
- before(grammarAccess.getImportAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:358:1: ( rule__Import__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:358:2: rule__Import__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:414:1: ( rule__Import__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:414:2: rule__Import__Group__0
{
- pushFollow(FOLLOW_rule__Import__Group__0_in_ruleImport696);
+ pushFollow(FOLLOW_rule__Import__Group__0_in_ruleImport816);
rule__Import__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getImportAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getGroup());
+ }
}
@@ -943,20 +1211,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleImportedFQN"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:370:1: entryRuleImportedFQN : ruleImportedFQN EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:426:1: entryRuleImportedFQN : ruleImportedFQN EOF ;
public final void entryRuleImportedFQN() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:371:1: ( ruleImportedFQN EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:372:1: ruleImportedFQN EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:427:1: ( ruleImportedFQN EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:428:1: ruleImportedFQN EOF
{
- before(grammarAccess.getImportedFQNRule());
- pushFollow(FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN723);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportedFQNRule());
+ }
+ pushFollow(FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN843);
ruleImportedFQN();
state._fsp--;
-
- after(grammarAccess.getImportedFQNRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleImportedFQN730);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportedFQNRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleImportedFQN850); if (state.failed) return ;
}
@@ -973,31 +1245,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleImportedFQN"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:379:1: ruleImportedFQN : ( ( rule__ImportedFQN__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:435:1: ruleImportedFQN : ( ( rule__ImportedFQN__Group__0 ) ) ;
public final void ruleImportedFQN() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:383:2: ( ( ( rule__ImportedFQN__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:384:1: ( ( rule__ImportedFQN__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:439:2: ( ( ( rule__ImportedFQN__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:440:1: ( ( rule__ImportedFQN__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:384:1: ( ( rule__ImportedFQN__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:385:1: ( rule__ImportedFQN__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:440:1: ( ( rule__ImportedFQN__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:441:1: ( rule__ImportedFQN__Group__0 )
{
- before(grammarAccess.getImportedFQNAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:386:1: ( rule__ImportedFQN__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:386:2: rule__ImportedFQN__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportedFQNAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:442:1: ( rule__ImportedFQN__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:442:2: rule__ImportedFQN__Group__0
{
- pushFollow(FOLLOW_rule__ImportedFQN__Group__0_in_ruleImportedFQN756);
+ pushFollow(FOLLOW_rule__ImportedFQN__Group__0_in_ruleImportedFQN876);
rule__ImportedFQN__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getImportedFQNAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportedFQNAccess().getGroup());
+ }
}
@@ -1020,20 +1296,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleFQN"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:398:1: entryRuleFQN : ruleFQN EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:454:1: entryRuleFQN : ruleFQN EOF ;
public final void entryRuleFQN() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:399:1: ( ruleFQN EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:400:1: ruleFQN EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:455:1: ( ruleFQN EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:456:1: ruleFQN EOF
{
- before(grammarAccess.getFQNRule());
- pushFollow(FOLLOW_ruleFQN_in_entryRuleFQN783);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getFQNRule());
+ }
+ pushFollow(FOLLOW_ruleFQN_in_entryRuleFQN903);
ruleFQN();
state._fsp--;
-
- after(grammarAccess.getFQNRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleFQN790);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getFQNRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleFQN910); if (state.failed) return ;
}
@@ -1050,31 +1330,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleFQN"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:407:1: ruleFQN : ( ( rule__FQN__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:463:1: ruleFQN : ( ( rule__FQN__Group__0 ) ) ;
public final void ruleFQN() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:411:2: ( ( ( rule__FQN__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:412:1: ( ( rule__FQN__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:467:2: ( ( ( rule__FQN__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:468:1: ( ( rule__FQN__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:412:1: ( ( rule__FQN__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:413:1: ( rule__FQN__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:468:1: ( ( rule__FQN__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:469:1: ( rule__FQN__Group__0 )
{
- before(grammarAccess.getFQNAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:414:1: ( rule__FQN__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:414:2: rule__FQN__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getFQNAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:470:1: ( rule__FQN__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:470:2: rule__FQN__Group__0
{
- pushFollow(FOLLOW_rule__FQN__Group__0_in_ruleFQN816);
+ pushFollow(FOLLOW_rule__FQN__Group__0_in_ruleFQN936);
rule__FQN__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getFQNAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getFQNAccess().getGroup());
+ }
}
@@ -1097,20 +1381,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleLiteralArray"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:426:1: entryRuleLiteralArray : ruleLiteralArray EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:482:1: entryRuleLiteralArray : ruleLiteralArray EOF ;
public final void entryRuleLiteralArray() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:427:1: ( ruleLiteralArray EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:428:1: ruleLiteralArray EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:483:1: ( ruleLiteralArray EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:484:1: ruleLiteralArray EOF
{
- before(grammarAccess.getLiteralArrayRule());
- pushFollow(FOLLOW_ruleLiteralArray_in_entryRuleLiteralArray843);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralArrayRule());
+ }
+ pushFollow(FOLLOW_ruleLiteralArray_in_entryRuleLiteralArray963);
ruleLiteralArray();
state._fsp--;
-
- after(grammarAccess.getLiteralArrayRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleLiteralArray850);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralArrayRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleLiteralArray970); if (state.failed) return ;
}
@@ -1127,31 +1415,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleLiteralArray"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:435:1: ruleLiteralArray : ( ( rule__LiteralArray__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:491:1: ruleLiteralArray : ( ( rule__LiteralArray__Group__0 ) ) ;
public final void ruleLiteralArray() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:439:2: ( ( ( rule__LiteralArray__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:440:1: ( ( rule__LiteralArray__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:495:2: ( ( ( rule__LiteralArray__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:496:1: ( ( rule__LiteralArray__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:440:1: ( ( rule__LiteralArray__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:441:1: ( rule__LiteralArray__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:496:1: ( ( rule__LiteralArray__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:497:1: ( rule__LiteralArray__Group__0 )
{
- before(grammarAccess.getLiteralArrayAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:442:1: ( rule__LiteralArray__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:442:2: rule__LiteralArray__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralArrayAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:498:1: ( rule__LiteralArray__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:498:2: rule__LiteralArray__Group__0
{
- pushFollow(FOLLOW_rule__LiteralArray__Group__0_in_ruleLiteralArray876);
+ pushFollow(FOLLOW_rule__LiteralArray__Group__0_in_ruleLiteralArray996);
rule__LiteralArray__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getLiteralArrayAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralArrayAccess().getGroup());
+ }
}
@@ -1174,20 +1466,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:454:1: entryRuleLiteral : ruleLiteral EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:510:1: entryRuleLiteral : ruleLiteral EOF ;
public final void entryRuleLiteral() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:455:1: ( ruleLiteral EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:456:1: ruleLiteral EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:511:1: ( ruleLiteral EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:512:1: ruleLiteral EOF
{
- before(grammarAccess.getLiteralRule());
- pushFollow(FOLLOW_ruleLiteral_in_entryRuleLiteral903);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralRule());
+ }
+ pushFollow(FOLLOW_ruleLiteral_in_entryRuleLiteral1023);
ruleLiteral();
state._fsp--;
-
- after(grammarAccess.getLiteralRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleLiteral910);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleLiteral1030); if (state.failed) return ;
}
@@ -1204,31 +1500,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:463:1: ruleLiteral : ( ( rule__Literal__Alternatives ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:519:1: ruleLiteral : ( ( rule__Literal__Alternatives ) ) ;
public final void ruleLiteral() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:467:2: ( ( ( rule__Literal__Alternatives ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:468:1: ( ( rule__Literal__Alternatives ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:523:2: ( ( ( rule__Literal__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:524:1: ( ( rule__Literal__Alternatives ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:468:1: ( ( rule__Literal__Alternatives ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:469:1: ( rule__Literal__Alternatives )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:524:1: ( ( rule__Literal__Alternatives ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:525:1: ( rule__Literal__Alternatives )
{
- before(grammarAccess.getLiteralAccess().getAlternatives());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:470:1: ( rule__Literal__Alternatives )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:470:2: rule__Literal__Alternatives
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralAccess().getAlternatives());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:526:1: ( rule__Literal__Alternatives )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:526:2: rule__Literal__Alternatives
{
- pushFollow(FOLLOW_rule__Literal__Alternatives_in_ruleLiteral936);
+ pushFollow(FOLLOW_rule__Literal__Alternatives_in_ruleLiteral1056);
rule__Literal__Alternatives();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getLiteralAccess().getAlternatives());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralAccess().getAlternatives());
+ }
}
@@ -1251,20 +1551,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleBooleanLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:482:1: entryRuleBooleanLiteral : ruleBooleanLiteral EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:538:1: entryRuleBooleanLiteral : ruleBooleanLiteral EOF ;
public final void entryRuleBooleanLiteral() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:483:1: ( ruleBooleanLiteral EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:484:1: ruleBooleanLiteral EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:539:1: ( ruleBooleanLiteral EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:540:1: ruleBooleanLiteral EOF
{
- before(grammarAccess.getBooleanLiteralRule());
- pushFollow(FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral963);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getBooleanLiteralRule());
+ }
+ pushFollow(FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral1083);
ruleBooleanLiteral();
state._fsp--;
-
- after(grammarAccess.getBooleanLiteralRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleBooleanLiteral970);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getBooleanLiteralRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleBooleanLiteral1090); if (state.failed) return ;
}
@@ -1281,31 +1585,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleBooleanLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:491:1: ruleBooleanLiteral : ( ( rule__BooleanLiteral__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:547:1: ruleBooleanLiteral : ( ( rule__BooleanLiteral__Group__0 ) ) ;
public final void ruleBooleanLiteral() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:495:2: ( ( ( rule__BooleanLiteral__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:496:1: ( ( rule__BooleanLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:551:2: ( ( ( rule__BooleanLiteral__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:552:1: ( ( rule__BooleanLiteral__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:496:1: ( ( rule__BooleanLiteral__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:497:1: ( rule__BooleanLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:552:1: ( ( rule__BooleanLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:553:1: ( rule__BooleanLiteral__Group__0 )
{
- before(grammarAccess.getBooleanLiteralAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:498:1: ( rule__BooleanLiteral__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:498:2: rule__BooleanLiteral__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getBooleanLiteralAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:554:1: ( rule__BooleanLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:554:2: rule__BooleanLiteral__Group__0
{
- pushFollow(FOLLOW_rule__BooleanLiteral__Group__0_in_ruleBooleanLiteral996);
+ pushFollow(FOLLOW_rule__BooleanLiteral__Group__0_in_ruleBooleanLiteral1116);
rule__BooleanLiteral__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getBooleanLiteralAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getBooleanLiteralAccess().getGroup());
+ }
}
@@ -1328,20 +1636,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleNumberLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:510:1: entryRuleNumberLiteral : ruleNumberLiteral EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:566:1: entryRuleNumberLiteral : ruleNumberLiteral EOF ;
public final void entryRuleNumberLiteral() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:511:1: ( ruleNumberLiteral EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:512:1: ruleNumberLiteral EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:567:1: ( ruleNumberLiteral EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:568:1: ruleNumberLiteral EOF
{
- before(grammarAccess.getNumberLiteralRule());
- pushFollow(FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral1023);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getNumberLiteralRule());
+ }
+ pushFollow(FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral1143);
ruleNumberLiteral();
state._fsp--;
-
- after(grammarAccess.getNumberLiteralRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleNumberLiteral1030);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getNumberLiteralRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleNumberLiteral1150); if (state.failed) return ;
}
@@ -1358,31 +1670,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleNumberLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:519:1: ruleNumberLiteral : ( ( rule__NumberLiteral__Alternatives ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:575:1: ruleNumberLiteral : ( ( rule__NumberLiteral__Alternatives ) ) ;
public final void ruleNumberLiteral() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:523:2: ( ( ( rule__NumberLiteral__Alternatives ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:524:1: ( ( rule__NumberLiteral__Alternatives ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:579:2: ( ( ( rule__NumberLiteral__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:580:1: ( ( rule__NumberLiteral__Alternatives ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:524:1: ( ( rule__NumberLiteral__Alternatives ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:525:1: ( rule__NumberLiteral__Alternatives )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:580:1: ( ( rule__NumberLiteral__Alternatives ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:581:1: ( rule__NumberLiteral__Alternatives )
{
- before(grammarAccess.getNumberLiteralAccess().getAlternatives());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:526:1: ( rule__NumberLiteral__Alternatives )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:526:2: rule__NumberLiteral__Alternatives
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getNumberLiteralAccess().getAlternatives());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:582:1: ( rule__NumberLiteral__Alternatives )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:582:2: rule__NumberLiteral__Alternatives
{
- pushFollow(FOLLOW_rule__NumberLiteral__Alternatives_in_ruleNumberLiteral1056);
+ pushFollow(FOLLOW_rule__NumberLiteral__Alternatives_in_ruleNumberLiteral1176);
rule__NumberLiteral__Alternatives();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getNumberLiteralAccess().getAlternatives());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getNumberLiteralAccess().getAlternatives());
+ }
}
@@ -1405,20 +1721,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleRealLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:538:1: entryRuleRealLiteral : ruleRealLiteral EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:594:1: entryRuleRealLiteral : ruleRealLiteral EOF ;
public final void entryRuleRealLiteral() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:539:1: ( ruleRealLiteral EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:540:1: ruleRealLiteral EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:595:1: ( ruleRealLiteral EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:596:1: ruleRealLiteral EOF
{
- before(grammarAccess.getRealLiteralRule());
- pushFollow(FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral1083);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealLiteralRule());
+ }
+ pushFollow(FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral1203);
ruleRealLiteral();
state._fsp--;
-
- after(grammarAccess.getRealLiteralRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleRealLiteral1090);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealLiteralRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleRealLiteral1210); if (state.failed) return ;
}
@@ -1435,31 +1755,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleRealLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:547:1: ruleRealLiteral : ( ( rule__RealLiteral__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:603:1: ruleRealLiteral : ( ( rule__RealLiteral__Group__0 ) ) ;
public final void ruleRealLiteral() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:551:2: ( ( ( rule__RealLiteral__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:552:1: ( ( rule__RealLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:607:2: ( ( ( rule__RealLiteral__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:608:1: ( ( rule__RealLiteral__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:552:1: ( ( rule__RealLiteral__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:553:1: ( rule__RealLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:608:1: ( ( rule__RealLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:609:1: ( rule__RealLiteral__Group__0 )
{
- before(grammarAccess.getRealLiteralAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:554:1: ( rule__RealLiteral__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:554:2: rule__RealLiteral__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealLiteralAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:610:1: ( rule__RealLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:610:2: rule__RealLiteral__Group__0
{
- pushFollow(FOLLOW_rule__RealLiteral__Group__0_in_ruleRealLiteral1116);
+ pushFollow(FOLLOW_rule__RealLiteral__Group__0_in_ruleRealLiteral1236);
rule__RealLiteral__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getRealLiteralAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealLiteralAccess().getGroup());
+ }
}
@@ -1482,20 +1806,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleIntLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:566:1: entryRuleIntLiteral : ruleIntLiteral EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:622:1: entryRuleIntLiteral : ruleIntLiteral EOF ;
public final void entryRuleIntLiteral() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:567:1: ( ruleIntLiteral EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:568:1: ruleIntLiteral EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:623:1: ( ruleIntLiteral EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:624:1: ruleIntLiteral EOF
{
- before(grammarAccess.getIntLiteralRule());
- pushFollow(FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral1143);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getIntLiteralRule());
+ }
+ pushFollow(FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral1263);
ruleIntLiteral();
state._fsp--;
-
- after(grammarAccess.getIntLiteralRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleIntLiteral1150);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getIntLiteralRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleIntLiteral1270); if (state.failed) return ;
}
@@ -1512,31 +1840,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleIntLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:575:1: ruleIntLiteral : ( ( rule__IntLiteral__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:631:1: ruleIntLiteral : ( ( rule__IntLiteral__Group__0 ) ) ;
public final void ruleIntLiteral() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:579:2: ( ( ( rule__IntLiteral__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:580:1: ( ( rule__IntLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:635:2: ( ( ( rule__IntLiteral__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:636:1: ( ( rule__IntLiteral__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:580:1: ( ( rule__IntLiteral__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:581:1: ( rule__IntLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:636:1: ( ( rule__IntLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:637:1: ( rule__IntLiteral__Group__0 )
{
- before(grammarAccess.getIntLiteralAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:582:1: ( rule__IntLiteral__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:582:2: rule__IntLiteral__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getIntLiteralAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:638:1: ( rule__IntLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:638:2: rule__IntLiteral__Group__0
{
- pushFollow(FOLLOW_rule__IntLiteral__Group__0_in_ruleIntLiteral1176);
+ pushFollow(FOLLOW_rule__IntLiteral__Group__0_in_ruleIntLiteral1296);
rule__IntLiteral__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getIntLiteralAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getIntLiteralAccess().getGroup());
+ }
}
@@ -1559,20 +1891,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleStringLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:594:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:650:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
public final void entryRuleStringLiteral() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:595:1: ( ruleStringLiteral EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:596:1: ruleStringLiteral EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:651:1: ( ruleStringLiteral EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:652:1: ruleStringLiteral EOF
{
- before(grammarAccess.getStringLiteralRule());
- pushFollow(FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral1203);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getStringLiteralRule());
+ }
+ pushFollow(FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral1323);
ruleStringLiteral();
state._fsp--;
-
- after(grammarAccess.getStringLiteralRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleStringLiteral1210);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getStringLiteralRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleStringLiteral1330); if (state.failed) return ;
}
@@ -1589,31 +1925,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleStringLiteral"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:603:1: ruleStringLiteral : ( ( rule__StringLiteral__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:659:1: ruleStringLiteral : ( ( rule__StringLiteral__Group__0 ) ) ;
public final void ruleStringLiteral() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:607:2: ( ( ( rule__StringLiteral__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:608:1: ( ( rule__StringLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:663:2: ( ( ( rule__StringLiteral__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:664:1: ( ( rule__StringLiteral__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:608:1: ( ( rule__StringLiteral__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:609:1: ( rule__StringLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:664:1: ( ( rule__StringLiteral__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:665:1: ( rule__StringLiteral__Group__0 )
{
- before(grammarAccess.getStringLiteralAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:610:1: ( rule__StringLiteral__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:610:2: rule__StringLiteral__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getStringLiteralAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:666:1: ( rule__StringLiteral__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:666:2: rule__StringLiteral__Group__0
{
- pushFollow(FOLLOW_rule__StringLiteral__Group__0_in_ruleStringLiteral1236);
+ pushFollow(FOLLOW_rule__StringLiteral__Group__0_in_ruleStringLiteral1356);
rule__StringLiteral__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getStringLiteralAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getStringLiteralAccess().getGroup());
+ }
}
@@ -1636,20 +1976,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleInteger"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:622:1: entryRuleInteger : ruleInteger EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:678:1: entryRuleInteger : ruleInteger EOF ;
public final void entryRuleInteger() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:623:1: ( ruleInteger EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:624:1: ruleInteger EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:679:1: ( ruleInteger EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:680:1: ruleInteger EOF
{
- before(grammarAccess.getIntegerRule());
- pushFollow(FOLLOW_ruleInteger_in_entryRuleInteger1263);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getIntegerRule());
+ }
+ pushFollow(FOLLOW_ruleInteger_in_entryRuleInteger1383);
ruleInteger();
state._fsp--;
-
- after(grammarAccess.getIntegerRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleInteger1270);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getIntegerRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleInteger1390); if (state.failed) return ;
}
@@ -1666,31 +2010,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleInteger"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:631:1: ruleInteger : ( ( rule__Integer__Alternatives ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:687:1: ruleInteger : ( ( rule__Integer__Alternatives ) ) ;
public final void ruleInteger() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:635:2: ( ( ( rule__Integer__Alternatives ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:636:1: ( ( rule__Integer__Alternatives ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:691:2: ( ( ( rule__Integer__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:692:1: ( ( rule__Integer__Alternatives ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:636:1: ( ( rule__Integer__Alternatives ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:637:1: ( rule__Integer__Alternatives )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:692:1: ( ( rule__Integer__Alternatives ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:693:1: ( rule__Integer__Alternatives )
{
- before(grammarAccess.getIntegerAccess().getAlternatives());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:638:1: ( rule__Integer__Alternatives )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:638:2: rule__Integer__Alternatives
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getIntegerAccess().getAlternatives());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:694:1: ( rule__Integer__Alternatives )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:694:2: rule__Integer__Alternatives
{
- pushFollow(FOLLOW_rule__Integer__Alternatives_in_ruleInteger1296);
+ pushFollow(FOLLOW_rule__Integer__Alternatives_in_ruleInteger1416);
rule__Integer__Alternatives();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getIntegerAccess().getAlternatives());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getIntegerAccess().getAlternatives());
+ }
}
@@ -1713,23 +2061,27 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleSignedInteger"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:650:1: entryRuleSignedInteger : ruleSignedInteger EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:706:1: entryRuleSignedInteger : ruleSignedInteger EOF ;
public final void entryRuleSignedInteger() throws RecognitionException {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:654:1: ( ruleSignedInteger EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:655:1: ruleSignedInteger EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:710:1: ( ruleSignedInteger EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:711:1: ruleSignedInteger EOF
{
- before(grammarAccess.getSignedIntegerRule());
- pushFollow(FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger1328);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSignedIntegerRule());
+ }
+ pushFollow(FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger1448);
ruleSignedInteger();
state._fsp--;
-
- after(grammarAccess.getSignedIntegerRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleSignedInteger1335);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSignedIntegerRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleSignedInteger1455); if (state.failed) return ;
}
@@ -1749,32 +2101,36 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleSignedInteger"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:665:1: ruleSignedInteger : ( ( rule__SignedInteger__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:721: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:670:2: ( ( ( rule__SignedInteger__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:671:1: ( ( rule__SignedInteger__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:726:2: ( ( ( rule__SignedInteger__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:727:1: ( ( rule__SignedInteger__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:671:1: ( ( rule__SignedInteger__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:672:1: ( rule__SignedInteger__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:727:1: ( ( rule__SignedInteger__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:728:1: ( rule__SignedInteger__Group__0 )
{
- before(grammarAccess.getSignedIntegerAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:673:1: ( rule__SignedInteger__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:673:2: rule__SignedInteger__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSignedIntegerAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:729:1: ( rule__SignedInteger__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:729:2: rule__SignedInteger__Group__0
{
- pushFollow(FOLLOW_rule__SignedInteger__Group__0_in_ruleSignedInteger1365);
+ pushFollow(FOLLOW_rule__SignedInteger__Group__0_in_ruleSignedInteger1485);
rule__SignedInteger__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getSignedIntegerAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSignedIntegerAccess().getGroup());
+ }
}
@@ -1798,23 +2154,27 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleHexadecimal"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:686:1: entryRuleHexadecimal : ruleHexadecimal EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:742:1: entryRuleHexadecimal : ruleHexadecimal EOF ;
public final void entryRuleHexadecimal() throws RecognitionException {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:690:1: ( ruleHexadecimal EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:691:1: ruleHexadecimal EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:746:1: ( ruleHexadecimal EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:747:1: ruleHexadecimal EOF
{
- before(grammarAccess.getHexadecimalRule());
- pushFollow(FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal1397);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getHexadecimalRule());
+ }
+ pushFollow(FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal1517);
ruleHexadecimal();
state._fsp--;
-
- after(grammarAccess.getHexadecimalRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleHexadecimal1404);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getHexadecimalRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleHexadecimal1524); if (state.failed) return ;
}
@@ -1834,22 +2194,26 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleHexadecimal"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:701:1: ruleHexadecimal : ( RULE_HEX ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:757:1: ruleHexadecimal : ( RULE_HEX ) ;
public final void ruleHexadecimal() throws RecognitionException {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:706:2: ( ( RULE_HEX ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:707:1: ( RULE_HEX )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:762:2: ( ( RULE_HEX ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:763:1: ( RULE_HEX )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:707:1: ( RULE_HEX )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:708:1: RULE_HEX
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:763:1: ( RULE_HEX )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:764:1: RULE_HEX
{
- before(grammarAccess.getHexadecimalAccess().getHEXTerminalRuleCall());
- match(input,RULE_HEX,FOLLOW_RULE_HEX_in_ruleHexadecimal1434);
- after(grammarAccess.getHexadecimalAccess().getHEXTerminalRuleCall());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getHexadecimalAccess().getHEXTerminalRuleCall());
+ }
+ match(input,RULE_HEX,FOLLOW_RULE_HEX_in_ruleHexadecimal1554); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getHexadecimalAccess().getHEXTerminalRuleCall());
+ }
}
@@ -1873,20 +2237,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleReal"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:722:1: entryRuleReal : ruleReal EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:778:1: entryRuleReal : ruleReal EOF ;
public final void entryRuleReal() throws RecognitionException {
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:723:1: ( ruleReal EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:724:1: ruleReal EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:779:1: ( ruleReal EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:780:1: ruleReal EOF
{
- before(grammarAccess.getRealRule());
- pushFollow(FOLLOW_ruleReal_in_entryRuleReal1460);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealRule());
+ }
+ pushFollow(FOLLOW_ruleReal_in_entryRuleReal1580);
ruleReal();
state._fsp--;
-
- after(grammarAccess.getRealRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleReal1467);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleReal1587); if (state.failed) return ;
}
@@ -1903,31 +2271,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleReal"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:731:1: ruleReal : ( ( rule__Real__Alternatives ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:787:1: ruleReal : ( ( rule__Real__Alternatives ) ) ;
public final void ruleReal() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:735:2: ( ( ( rule__Real__Alternatives ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:736:1: ( ( rule__Real__Alternatives ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:791:2: ( ( ( rule__Real__Alternatives ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:792:1: ( ( rule__Real__Alternatives ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:736:1: ( ( rule__Real__Alternatives ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:737:1: ( rule__Real__Alternatives )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:792:1: ( ( rule__Real__Alternatives ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:793:1: ( rule__Real__Alternatives )
{
- before(grammarAccess.getRealAccess().getAlternatives());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:738:1: ( rule__Real__Alternatives )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:738:2: rule__Real__Alternatives
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealAccess().getAlternatives());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:794:1: ( rule__Real__Alternatives )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:794:2: rule__Real__Alternatives
{
- pushFollow(FOLLOW_rule__Real__Alternatives_in_ruleReal1493);
+ pushFollow(FOLLOW_rule__Real__Alternatives_in_ruleReal1613);
rule__Real__Alternatives();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getRealAccess().getAlternatives());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealAccess().getAlternatives());
+ }
}
@@ -1950,23 +2322,27 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleDecimal"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:750:1: entryRuleDecimal : ruleDecimal EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:806:1: entryRuleDecimal : ruleDecimal EOF ;
public final void entryRuleDecimal() throws RecognitionException {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:754:1: ( ruleDecimal EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:755:1: ruleDecimal EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:810:1: ( ruleDecimal EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:811:1: ruleDecimal EOF
{
- before(grammarAccess.getDecimalRule());
- pushFollow(FOLLOW_ruleDecimal_in_entryRuleDecimal1525);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalRule());
+ }
+ pushFollow(FOLLOW_ruleDecimal_in_entryRuleDecimal1645);
ruleDecimal();
state._fsp--;
-
- after(grammarAccess.getDecimalRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleDecimal1532);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDecimal1652); if (state.failed) return ;
}
@@ -1986,32 +2362,36 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleDecimal"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:765:1: ruleDecimal : ( ( rule__Decimal__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:821: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:770:2: ( ( ( rule__Decimal__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:771:1: ( ( rule__Decimal__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:826:2: ( ( ( rule__Decimal__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:827:1: ( ( rule__Decimal__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:771:1: ( ( rule__Decimal__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:772:1: ( rule__Decimal__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:827:1: ( ( rule__Decimal__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:828:1: ( rule__Decimal__Group__0 )
{
- before(grammarAccess.getDecimalAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:773:1: ( rule__Decimal__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:773:2: rule__Decimal__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:829:1: ( rule__Decimal__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:829:2: rule__Decimal__Group__0
{
- pushFollow(FOLLOW_rule__Decimal__Group__0_in_ruleDecimal1562);
+ pushFollow(FOLLOW_rule__Decimal__Group__0_in_ruleDecimal1682);
rule__Decimal__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getDecimalAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalAccess().getGroup());
+ }
}
@@ -2035,23 +2415,27 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleDotDecimal"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:786:1: entryRuleDotDecimal : ruleDotDecimal EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:842:1: entryRuleDotDecimal : ruleDotDecimal EOF ;
public final void entryRuleDotDecimal() throws RecognitionException {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:790:1: ( ruleDotDecimal EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:791:1: ruleDotDecimal EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:846:1: ( ruleDotDecimal EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:847:1: ruleDotDecimal EOF
{
- before(grammarAccess.getDotDecimalRule());
- pushFollow(FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal1594);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDotDecimalRule());
+ }
+ pushFollow(FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal1714);
ruleDotDecimal();
state._fsp--;
-
- after(grammarAccess.getDotDecimalRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleDotDecimal1601);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDotDecimalRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDotDecimal1721); if (state.failed) return ;
}
@@ -2071,32 +2455,36 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleDotDecimal"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:801:1: ruleDotDecimal : ( ( rule__DotDecimal__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:857: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:806:2: ( ( ( rule__DotDecimal__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:807:1: ( ( rule__DotDecimal__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:862:2: ( ( ( rule__DotDecimal__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:863:1: ( ( rule__DotDecimal__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:807:1: ( ( rule__DotDecimal__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:808:1: ( rule__DotDecimal__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:863:1: ( ( rule__DotDecimal__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:864:1: ( rule__DotDecimal__Group__0 )
{
- before(grammarAccess.getDotDecimalAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:809:1: ( rule__DotDecimal__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:809:2: rule__DotDecimal__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDotDecimalAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:865:1: ( rule__DotDecimal__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:865:2: rule__DotDecimal__Group__0
{
- pushFollow(FOLLOW_rule__DotDecimal__Group__0_in_ruleDotDecimal1631);
+ pushFollow(FOLLOW_rule__DotDecimal__Group__0_in_ruleDotDecimal1751);
rule__DotDecimal__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getDotDecimalAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDotDecimalAccess().getGroup());
+ }
}
@@ -2120,23 +2508,27 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleDecimalDot"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:822:1: entryRuleDecimalDot : ruleDecimalDot EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:878:1: entryRuleDecimalDot : ruleDecimalDot EOF ;
public final void entryRuleDecimalDot() throws RecognitionException {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:826:1: ( ruleDecimalDot EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:827:1: ruleDecimalDot EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:882:1: ( ruleDecimalDot EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:883:1: ruleDecimalDot EOF
{
- before(grammarAccess.getDecimalDotRule());
- pushFollow(FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot1663);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalDotRule());
+ }
+ pushFollow(FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot1783);
ruleDecimalDot();
state._fsp--;
-
- after(grammarAccess.getDecimalDotRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalDot1670);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalDotRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalDot1790); if (state.failed) return ;
}
@@ -2156,32 +2548,36 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleDecimalDot"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:837:1: ruleDecimalDot : ( ( rule__DecimalDot__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:893: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:842:2: ( ( ( rule__DecimalDot__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:843:1: ( ( rule__DecimalDot__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:898:2: ( ( ( rule__DecimalDot__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:899:1: ( ( rule__DecimalDot__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:843:1: ( ( rule__DecimalDot__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:844:1: ( rule__DecimalDot__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:899:1: ( ( rule__DecimalDot__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:900:1: ( rule__DecimalDot__Group__0 )
{
- before(grammarAccess.getDecimalDotAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:845:1: ( rule__DecimalDot__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:845:2: rule__DecimalDot__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalDotAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:901:1: ( rule__DecimalDot__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:901:2: rule__DecimalDot__Group__0
{
- pushFollow(FOLLOW_rule__DecimalDot__Group__0_in_ruleDecimalDot1700);
+ pushFollow(FOLLOW_rule__DecimalDot__Group__0_in_ruleDecimalDot1820);
rule__DecimalDot__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getDecimalDotAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalDotAccess().getGroup());
+ }
}
@@ -2205,23 +2601,27 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "entryRuleDecimalExp"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:858:1: entryRuleDecimalExp : ruleDecimalExp EOF ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:914:1: entryRuleDecimalExp : ruleDecimalExp EOF ;
public final void entryRuleDecimalExp() throws RecognitionException {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:862:1: ( ruleDecimalExp EOF )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:863:1: ruleDecimalExp EOF
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:918:1: ( ruleDecimalExp EOF )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:919:1: ruleDecimalExp EOF
{
- before(grammarAccess.getDecimalExpRule());
- pushFollow(FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp1732);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalExpRule());
+ }
+ pushFollow(FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp1852);
ruleDecimalExp();
state._fsp--;
-
- after(grammarAccess.getDecimalExpRule());
- match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalExp1739);
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalExpRule());
+ }
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalExp1859); if (state.failed) return ;
}
@@ -2241,32 +2641,36 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "ruleDecimalExp"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:873:1: ruleDecimalExp : ( ( rule__DecimalExp__Group__0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:929: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:878:2: ( ( ( rule__DecimalExp__Group__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:879:1: ( ( rule__DecimalExp__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:934:2: ( ( ( rule__DecimalExp__Group__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:935:1: ( ( rule__DecimalExp__Group__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:879:1: ( ( rule__DecimalExp__Group__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:880:1: ( rule__DecimalExp__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:935:1: ( ( rule__DecimalExp__Group__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:936:1: ( rule__DecimalExp__Group__0 )
{
- before(grammarAccess.getDecimalExpAccess().getGroup());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:881:1: ( rule__DecimalExp__Group__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:881:2: rule__DecimalExp__Group__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalExpAccess().getGroup());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:937:1: ( rule__DecimalExp__Group__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:937:2: rule__DecimalExp__Group__0
{
- pushFollow(FOLLOW_rule__DecimalExp__Group__0_in_ruleDecimalExp1769);
+ pushFollow(FOLLOW_rule__DecimalExp__Group__0_in_ruleDecimalExp1889);
rule__DecimalExp__Group__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getDecimalExpAccess().getGroup());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalExpAccess().getGroup());
+ }
}
@@ -2290,31 +2694,37 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ConfigElement__Alternatives"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:894:1: rule__ConfigElement__Alternatives : ( ( ruleActorClassConfig ) | ( ruleActorInstanceConfig ) | ( ruleProtocolClassConfig ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:950:1: rule__ConfigElement__Alternatives : ( ( ruleSubSystemConfig ) | ( ruleActorClassConfig ) | ( ruleActorInstanceConfig ) | ( ruleProtocolClassConfig ) );
public final void rule__ConfigElement__Alternatives() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:898:1: ( ( ruleActorClassConfig ) | ( ruleActorInstanceConfig ) | ( ruleProtocolClassConfig ) )
- int alt1=3;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:954:1: ( ( ruleSubSystemConfig ) | ( ruleActorClassConfig ) | ( ruleActorInstanceConfig ) | ( ruleProtocolClassConfig ) )
+ int alt1=4;
switch ( input.LA(1) ) {
- case 16:
+ case 18:
{
alt1=1;
}
break;
- case 19:
+ case 26:
{
alt1=2;
}
break;
- case 21:
+ case 27:
{
alt1=3;
}
break;
+ case 29:
+ {
+ alt1=4;
+ }
+ break;
default:
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
new NoViableAltException("", 1, 0, input);
@@ -2323,18 +2733,22 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
switch (alt1) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:899:1: ( ruleActorClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:955:1: ( ruleSubSystemConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:899:1: ( ruleActorClassConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:900:1: ruleActorClassConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:955:1: ( ruleSubSystemConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:956:1: ruleSubSystemConfig
{
- before(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_0());
- pushFollow(FOLLOW_ruleActorClassConfig_in_rule__ConfigElement__Alternatives1805);
- ruleActorClassConfig();
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigElementAccess().getSubSystemConfigParserRuleCall_0());
+ }
+ pushFollow(FOLLOW_ruleSubSystemConfig_in_rule__ConfigElement__Alternatives1925);
+ ruleSubSystemConfig();
state._fsp--;
-
- after(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigElementAccess().getSubSystemConfigParserRuleCall_0());
+ }
}
@@ -2342,18 +2756,22 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:905:6: ( ruleActorInstanceConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:961:6: ( ruleActorClassConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:905:6: ( ruleActorInstanceConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:906:1: ruleActorInstanceConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:961:6: ( ruleActorClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:962:1: ruleActorClassConfig
{
- before(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_1());
- pushFollow(FOLLOW_ruleActorInstanceConfig_in_rule__ConfigElement__Alternatives1822);
- ruleActorInstanceConfig();
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_1());
+ }
+ pushFollow(FOLLOW_ruleActorClassConfig_in_rule__ConfigElement__Alternatives1942);
+ ruleActorClassConfig();
state._fsp--;
-
- after(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_1());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_1());
+ }
}
@@ -2361,18 +2779,45 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 3 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:911:6: ( ruleProtocolClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:967:6: ( ruleActorInstanceConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:911:6: ( ruleProtocolClassConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:912:1: ruleProtocolClassConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:967:6: ( ruleActorInstanceConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:968:1: ruleActorInstanceConfig
{
- before(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_2());
- pushFollow(FOLLOW_ruleProtocolClassConfig_in_rule__ConfigElement__Alternatives1839);
- ruleProtocolClassConfig();
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_2());
+ }
+ pushFollow(FOLLOW_ruleActorInstanceConfig_in_rule__ConfigElement__Alternatives1959);
+ ruleActorInstanceConfig();
state._fsp--;
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_2());
+ }
+
+ }
- after(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_2());
+
+ }
+ break;
+ case 4 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:973:6: ( ruleProtocolClassConfig )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:973:6: ( ruleProtocolClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:974:1: ruleProtocolClassConfig
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_3());
+ }
+ pushFollow(FOLLOW_ruleProtocolClassConfig_in_rule__ConfigElement__Alternatives1976);
+ ruleProtocolClassConfig();
+
+ state._fsp--;
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_3());
+ }
}
@@ -2396,24 +2841,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__ConfigElement__Alternatives"
- // $ANTLR start "rule__Import__Alternatives_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:923:1: rule__Import__Alternatives_1 : ( ( ( rule__Import__Group_1_0__0 ) ) | ( 'model' ) );
- public final void rule__Import__Alternatives_1() throws RecognitionException {
+ // $ANTLR start "rule__DynamicConfig__Alternatives_2_0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:984:1: rule__DynamicConfig__Alternatives_2_0 : ( ( ( rule__DynamicConfig__Group_2_0_0__0 ) ) | ( ( rule__DynamicConfig__Group_2_0_1__0 ) ) );
+ public final void rule__DynamicConfig__Alternatives_2_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:927:1: ( ( ( rule__Import__Group_1_0__0 ) ) | ( 'model' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:988:1: ( ( ( rule__DynamicConfig__Group_2_0_0__0 ) ) | ( ( rule__DynamicConfig__Group_2_0_1__0 ) ) )
int alt2=2;
int LA2_0 = input.LA(1);
- if ( (LA2_0==RULE_ID) ) {
+ if ( (LA2_0==22) ) {
alt2=1;
}
- else if ( (LA2_0==12) ) {
+ else if ( (LA2_0==23) ) {
alt2=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
new NoViableAltException("", 2, 0, input);
@@ -2421,24 +2867,218 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
switch (alt2) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:928:1: ( ( rule__Import__Group_1_0__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:989:1: ( ( rule__DynamicConfig__Group_2_0_0__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:928:1: ( ( rule__Import__Group_1_0__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:929:1: ( rule__Import__Group_1_0__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:989:1: ( ( rule__DynamicConfig__Group_2_0_0__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:990:1: ( rule__DynamicConfig__Group_2_0_0__0 )
{
- before(grammarAccess.getImportAccess().getGroup_1_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:930:1: ( rule__Import__Group_1_0__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:930:2: rule__Import__Group_1_0__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getGroup_2_0_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:991:1: ( rule__DynamicConfig__Group_2_0_0__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:991:2: rule__DynamicConfig__Group_2_0_0__0
{
- pushFollow(FOLLOW_rule__Import__Group_1_0__0_in_rule__Import__Alternatives_11872);
- rule__Import__Group_1_0__0();
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_0__0_in_rule__DynamicConfig__Alternatives_2_02008);
+ rule__DynamicConfig__Group_2_0_0__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getGroup_2_0_0());
+ }
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:995:6: ( ( rule__DynamicConfig__Group_2_0_1__0 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:995:6: ( ( rule__DynamicConfig__Group_2_0_1__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:996:1: ( rule__DynamicConfig__Group_2_0_1__0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:997:1: ( rule__DynamicConfig__Group_2_0_1__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:997:2: rule__DynamicConfig__Group_2_0_1__0
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1__0_in_rule__DynamicConfig__Alternatives_2_02026);
+ rule__DynamicConfig__Group_2_0_1__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1());
+ }
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Alternatives_2_0"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Alternatives_3_1_0_1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1007:1: rule__AttrInstanceConfig__Alternatives_3_1_0_1 : ( ( ( rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0 ) ) | ( 'write' ) );
+ public final void rule__AttrInstanceConfig__Alternatives_3_1_0_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1011:1: ( ( ( rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0 ) ) | ( 'write' ) )
+ int alt3=2;
+ int LA3_0 = input.LA(1);
+
+ if ( (LA3_0==43) ) {
+ alt3=1;
+ }
+ else if ( (LA3_0==13) ) {
+ alt3=2;
+ }
+ else {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ NoViableAltException nvae =
+ new NoViableAltException("", 3, 0, input);
+
+ throw nvae;
+ }
+ switch (alt3) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1012:1: ( ( rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1012:1: ( ( rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1013:1: ( rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyAssignment_3_1_0_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1014:1: ( rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1014:2: rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0_in_rule__AttrInstanceConfig__Alternatives_3_1_0_12060);
+ rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0();
state._fsp--;
+ if (state.failed) return ;
+ }
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyAssignment_3_1_0_1_0());
}
- after(grammarAccess.getImportAccess().getGroup_1_0());
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1018:6: ( 'write' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1018:6: ( 'write' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1019:1: 'write'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getWriteKeyword_3_1_0_1_1());
+ }
+ match(input,13,FOLLOW_13_in_rule__AttrInstanceConfig__Alternatives_3_1_0_12079); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getWriteKeyword_3_1_0_1_1());
+ }
+
+ }
+
+
+ }
+ break;
+
+ }
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Alternatives_3_1_0_1"
+
+
+ // $ANTLR start "rule__Import__Alternatives_1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1031:1: rule__Import__Alternatives_1 : ( ( ( rule__Import__Group_1_0__0 ) ) | ( 'model' ) );
+ public final void rule__Import__Alternatives_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1035:1: ( ( ( rule__Import__Group_1_0__0 ) ) | ( 'model' ) )
+ int alt4=2;
+ int LA4_0 = input.LA(1);
+
+ if ( (LA4_0==RULE_ID) ) {
+ alt4=1;
+ }
+ else if ( (LA4_0==14) ) {
+ alt4=2;
+ }
+ else {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ NoViableAltException nvae =
+ new NoViableAltException("", 4, 0, input);
+
+ throw nvae;
+ }
+ switch (alt4) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1036:1: ( ( rule__Import__Group_1_0__0 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1036:1: ( ( rule__Import__Group_1_0__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1037:1: ( rule__Import__Group_1_0__0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getGroup_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1038:1: ( rule__Import__Group_1_0__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1038:2: rule__Import__Group_1_0__0
+ {
+ pushFollow(FOLLOW_rule__Import__Group_1_0__0_in_rule__Import__Alternatives_12113);
+ rule__Import__Group_1_0__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getGroup_1_0());
+ }
}
@@ -2446,14 +3086,18 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:934:6: ( 'model' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1042:6: ( 'model' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:934:6: ( 'model' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:935:1: 'model'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1042:6: ( 'model' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1043:1: 'model'
{
- before(grammarAccess.getImportAccess().getModelKeyword_1_1());
- match(input,12,FOLLOW_12_in_rule__Import__Alternatives_11891);
- after(grammarAccess.getImportAccess().getModelKeyword_1_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getModelKeyword_1_1());
+ }
+ match(input,14,FOLLOW_14_in_rule__Import__Alternatives_12132); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getModelKeyword_1_1());
+ }
}
@@ -2478,56 +3122,61 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Literal__Alternatives"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:947:1: rule__Literal__Alternatives : ( ( ruleBooleanLiteral ) | ( ruleNumberLiteral ) | ( ruleStringLiteral ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1055:1: rule__Literal__Alternatives : ( ( ruleBooleanLiteral ) | ( ruleNumberLiteral ) | ( ruleStringLiteral ) );
public final void rule__Literal__Alternatives() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:951:1: ( ( ruleBooleanLiteral ) | ( ruleNumberLiteral ) | ( ruleStringLiteral ) )
- int alt3=3;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1059:1: ( ( ruleBooleanLiteral ) | ( ruleNumberLiteral ) | ( ruleStringLiteral ) )
+ int alt5=3;
switch ( input.LA(1) ) {
- case 13:
- case 35:
+ case 15:
+ case 44:
{
- alt3=1;
+ alt5=1;
}
break;
case RULE_HEX:
case RULE_INT:
- case 14:
- case 15:
- case 33:
+ case 16:
+ case 17:
+ case 41:
{
- alt3=2;
+ alt5=2;
}
break;
case RULE_STRING:
{
- alt3=3;
+ alt5=3;
}
break;
default:
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 3, 0, input);
+ new NoViableAltException("", 5, 0, input);
throw nvae;
}
- switch (alt3) {
+ switch (alt5) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:952:1: ( ruleBooleanLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1060:1: ( ruleBooleanLiteral )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:952:1: ( ruleBooleanLiteral )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:953:1: ruleBooleanLiteral
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1060:1: ( ruleBooleanLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1061:1: ruleBooleanLiteral
{
- before(grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0());
- pushFollow(FOLLOW_ruleBooleanLiteral_in_rule__Literal__Alternatives1925);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0());
+ }
+ pushFollow(FOLLOW_ruleBooleanLiteral_in_rule__Literal__Alternatives2166);
ruleBooleanLiteral();
state._fsp--;
-
- after(grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0());
+ }
}
@@ -2535,18 +3184,22 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:958:6: ( ruleNumberLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1066:6: ( ruleNumberLiteral )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:958:6: ( ruleNumberLiteral )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:959:1: ruleNumberLiteral
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1066:6: ( ruleNumberLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1067:1: ruleNumberLiteral
{
- before(grammarAccess.getLiteralAccess().getNumberLiteralParserRuleCall_1());
- pushFollow(FOLLOW_ruleNumberLiteral_in_rule__Literal__Alternatives1942);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralAccess().getNumberLiteralParserRuleCall_1());
+ }
+ pushFollow(FOLLOW_ruleNumberLiteral_in_rule__Literal__Alternatives2183);
ruleNumberLiteral();
state._fsp--;
-
- after(grammarAccess.getLiteralAccess().getNumberLiteralParserRuleCall_1());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralAccess().getNumberLiteralParserRuleCall_1());
+ }
}
@@ -2554,18 +3207,22 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 3 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:964:6: ( ruleStringLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1072:6: ( ruleStringLiteral )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:964:6: ( ruleStringLiteral )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:965:1: ruleStringLiteral
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1072:6: ( ruleStringLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1073:1: ruleStringLiteral
{
- before(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_2());
- pushFollow(FOLLOW_ruleStringLiteral_in_rule__Literal__Alternatives1959);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_2());
+ }
+ pushFollow(FOLLOW_ruleStringLiteral_in_rule__Literal__Alternatives2200);
ruleStringLiteral();
state._fsp--;
-
- after(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_2());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_2());
+ }
}
@@ -2590,38 +3247,43 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__BooleanLiteral__Alternatives_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:975:1: rule__BooleanLiteral__Alternatives_1 : ( ( 'false' ) | ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1083: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:979:1: ( ( 'false' ) | ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) ) )
- int alt4=2;
- int LA4_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1087:1: ( ( 'false' ) | ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) ) )
+ int alt6=2;
+ int LA6_0 = input.LA(1);
- if ( (LA4_0==13) ) {
- alt4=1;
+ if ( (LA6_0==15) ) {
+ alt6=1;
}
- else if ( (LA4_0==35) ) {
- alt4=2;
+ else if ( (LA6_0==44) ) {
+ alt6=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 4, 0, input);
+ new NoViableAltException("", 6, 0, input);
throw nvae;
}
- switch (alt4) {
+ switch (alt6) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:980:1: ( 'false' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1088:1: ( 'false' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:980:1: ( 'false' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:981:1: 'false'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1088:1: ( 'false' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1089:1: 'false'
{
- before(grammarAccess.getBooleanLiteralAccess().getFalseKeyword_1_0());
- match(input,13,FOLLOW_13_in_rule__BooleanLiteral__Alternatives_11992);
- after(grammarAccess.getBooleanLiteralAccess().getFalseKeyword_1_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getBooleanLiteralAccess().getFalseKeyword_1_0());
+ }
+ match(input,15,FOLLOW_15_in_rule__BooleanLiteral__Alternatives_12233); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getBooleanLiteralAccess().getFalseKeyword_1_0());
+ }
}
@@ -2629,24 +3291,28 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:988:6: ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1096:6: ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:988:6: ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:989:1: ( rule__BooleanLiteral__IsTrueAssignment_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1096:6: ( ( rule__BooleanLiteral__IsTrueAssignment_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1097:1: ( rule__BooleanLiteral__IsTrueAssignment_1_1 )
{
- before(grammarAccess.getBooleanLiteralAccess().getIsTrueAssignment_1_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:990:1: ( rule__BooleanLiteral__IsTrueAssignment_1_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:990:2: rule__BooleanLiteral__IsTrueAssignment_1_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getBooleanLiteralAccess().getIsTrueAssignment_1_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1098:1: ( rule__BooleanLiteral__IsTrueAssignment_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1098:2: rule__BooleanLiteral__IsTrueAssignment_1_1
{
- pushFollow(FOLLOW_rule__BooleanLiteral__IsTrueAssignment_1_1_in_rule__BooleanLiteral__Alternatives_12011);
+ pushFollow(FOLLOW_rule__BooleanLiteral__IsTrueAssignment_1_1_in_rule__BooleanLiteral__Alternatives_12252);
rule__BooleanLiteral__IsTrueAssignment_1_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getBooleanLiteralAccess().getIsTrueAssignment_1_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getBooleanLiteralAccess().getIsTrueAssignment_1_1());
+ }
}
@@ -2671,72 +3337,76 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__NumberLiteral__Alternatives"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:999:1: rule__NumberLiteral__Alternatives : ( ( ruleIntLiteral ) | ( ruleRealLiteral ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1107:1: rule__NumberLiteral__Alternatives : ( ( ruleIntLiteral ) | ( ruleRealLiteral ) );
public final void rule__NumberLiteral__Alternatives() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1003:1: ( ( ruleIntLiteral ) | ( ruleRealLiteral ) )
- int alt5=2;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1111:1: ( ( ruleIntLiteral ) | ( ruleRealLiteral ) )
+ int alt7=2;
switch ( input.LA(1) ) {
- case 14:
+ case 16:
{
- int LA5_1 = input.LA(2);
+ int LA7_1 = input.LA(2);
- if ( (LA5_1==RULE_INT) ) {
- int LA5_3 = input.LA(3);
+ if ( (LA7_1==RULE_INT) ) {
+ int LA7_3 = input.LA(3);
- if ( (LA5_3==33) ) {
- alt5=2;
+ if ( (LA7_3==EOF||(LA7_3>=19 && LA7_3<=20)||(LA7_3>=33 && LA7_3<=34)||LA7_3==37||LA7_3==42) ) {
+ alt7=1;
}
- else if ( (LA5_3==EOF||(LA5_3>=17 && LA5_3<=18)||(LA5_3>=25 && LA5_3<=26)||(LA5_3>=28 && LA5_3<=29)||LA5_3==34) ) {
- alt5=1;
+ else if ( (LA7_3==41) ) {
+ alt7=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 5, 3, input);
+ new NoViableAltException("", 7, 3, input);
throw nvae;
}
}
- else if ( (LA5_1==33) ) {
- alt5=2;
+ else if ( (LA7_1==41) ) {
+ alt7=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 5, 1, input);
+ new NoViableAltException("", 7, 1, input);
throw nvae;
}
}
break;
- case 15:
+ case 17:
{
- int LA5_2 = input.LA(2);
+ int LA7_2 = input.LA(2);
- if ( (LA5_2==RULE_INT) ) {
- int LA5_3 = input.LA(3);
+ if ( (LA7_2==RULE_INT) ) {
+ int LA7_3 = input.LA(3);
- if ( (LA5_3==33) ) {
- alt5=2;
+ if ( (LA7_3==EOF||(LA7_3>=19 && LA7_3<=20)||(LA7_3>=33 && LA7_3<=34)||LA7_3==37||LA7_3==42) ) {
+ alt7=1;
}
- else if ( (LA5_3==EOF||(LA5_3>=17 && LA5_3<=18)||(LA5_3>=25 && LA5_3<=26)||(LA5_3>=28 && LA5_3<=29)||LA5_3==34) ) {
- alt5=1;
+ else if ( (LA7_3==41) ) {
+ alt7=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 5, 3, input);
+ new NoViableAltException("", 7, 3, input);
throw nvae;
}
}
- else if ( (LA5_2==33) ) {
- alt5=2;
+ else if ( (LA7_2==41) ) {
+ alt7=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 5, 2, input);
+ new NoViableAltException("", 7, 2, input);
throw nvae;
}
@@ -2744,17 +3414,18 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
break;
case RULE_INT:
{
- int LA5_3 = input.LA(2);
+ int LA7_3 = input.LA(2);
- if ( (LA5_3==33) ) {
- alt5=2;
+ if ( (LA7_3==EOF||(LA7_3>=19 && LA7_3<=20)||(LA7_3>=33 && LA7_3<=34)||LA7_3==37||LA7_3==42) ) {
+ alt7=1;
}
- else if ( (LA5_3==EOF||(LA5_3>=17 && LA5_3<=18)||(LA5_3>=25 && LA5_3<=26)||(LA5_3>=28 && LA5_3<=29)||LA5_3==34) ) {
- alt5=1;
+ else if ( (LA7_3==41) ) {
+ alt7=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 5, 3, input);
+ new NoViableAltException("", 7, 3, input);
throw nvae;
}
@@ -2762,35 +3433,40 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
break;
case RULE_HEX:
{
- alt5=1;
+ alt7=1;
}
break;
- case 33:
+ case 41:
{
- alt5=2;
+ alt7=2;
}
break;
default:
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 5, 0, input);
+ new NoViableAltException("", 7, 0, input);
throw nvae;
}
- switch (alt5) {
+ switch (alt7) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1004:1: ( ruleIntLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1112:1: ( ruleIntLiteral )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1004:1: ( ruleIntLiteral )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1005:1: ruleIntLiteral
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1112:1: ( ruleIntLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1113:1: ruleIntLiteral
{
- before(grammarAccess.getNumberLiteralAccess().getIntLiteralParserRuleCall_0());
- pushFollow(FOLLOW_ruleIntLiteral_in_rule__NumberLiteral__Alternatives2044);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getNumberLiteralAccess().getIntLiteralParserRuleCall_0());
+ }
+ pushFollow(FOLLOW_ruleIntLiteral_in_rule__NumberLiteral__Alternatives2285);
ruleIntLiteral();
state._fsp--;
-
- after(grammarAccess.getNumberLiteralAccess().getIntLiteralParserRuleCall_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getNumberLiteralAccess().getIntLiteralParserRuleCall_0());
+ }
}
@@ -2798,18 +3474,22 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1010:6: ( ruleRealLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1118:6: ( ruleRealLiteral )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1010:6: ( ruleRealLiteral )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1011:1: ruleRealLiteral
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1118:6: ( ruleRealLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1119:1: ruleRealLiteral
{
- before(grammarAccess.getNumberLiteralAccess().getRealLiteralParserRuleCall_1());
- pushFollow(FOLLOW_ruleRealLiteral_in_rule__NumberLiteral__Alternatives2061);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getNumberLiteralAccess().getRealLiteralParserRuleCall_1());
+ }
+ pushFollow(FOLLOW_ruleRealLiteral_in_rule__NumberLiteral__Alternatives2302);
ruleRealLiteral();
state._fsp--;
-
- after(grammarAccess.getNumberLiteralAccess().getRealLiteralParserRuleCall_1());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getNumberLiteralAccess().getRealLiteralParserRuleCall_1());
+ }
}
@@ -2834,42 +3514,47 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Integer__Alternatives"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1021:1: rule__Integer__Alternatives : ( ( ruleSignedInteger ) | ( ruleHexadecimal ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1129:1: rule__Integer__Alternatives : ( ( ruleSignedInteger ) | ( ruleHexadecimal ) );
public final void rule__Integer__Alternatives() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1025:1: ( ( ruleSignedInteger ) | ( ruleHexadecimal ) )
- int alt6=2;
- int LA6_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1133:1: ( ( ruleSignedInteger ) | ( ruleHexadecimal ) )
+ int alt8=2;
+ int LA8_0 = input.LA(1);
- if ( (LA6_0==RULE_INT||(LA6_0>=14 && LA6_0<=15)) ) {
- alt6=1;
+ if ( (LA8_0==RULE_INT||(LA8_0>=16 && LA8_0<=17)) ) {
+ alt8=1;
}
- else if ( (LA6_0==RULE_HEX) ) {
- alt6=2;
+ else if ( (LA8_0==RULE_HEX) ) {
+ alt8=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 6, 0, input);
+ new NoViableAltException("", 8, 0, input);
throw nvae;
}
- switch (alt6) {
+ switch (alt8) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1026:1: ( ruleSignedInteger )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1134:1: ( ruleSignedInteger )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1026:1: ( ruleSignedInteger )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1027:1: ruleSignedInteger
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1134:1: ( ruleSignedInteger )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1135:1: ruleSignedInteger
{
- before(grammarAccess.getIntegerAccess().getSignedIntegerParserRuleCall_0());
- pushFollow(FOLLOW_ruleSignedInteger_in_rule__Integer__Alternatives2093);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getIntegerAccess().getSignedIntegerParserRuleCall_0());
+ }
+ pushFollow(FOLLOW_ruleSignedInteger_in_rule__Integer__Alternatives2334);
ruleSignedInteger();
state._fsp--;
-
- after(grammarAccess.getIntegerAccess().getSignedIntegerParserRuleCall_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getIntegerAccess().getSignedIntegerParserRuleCall_0());
+ }
}
@@ -2877,18 +3562,22 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1032:6: ( ruleHexadecimal )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1140:6: ( ruleHexadecimal )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1032:6: ( ruleHexadecimal )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1033:1: ruleHexadecimal
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1140:6: ( ruleHexadecimal )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1141:1: ruleHexadecimal
{
- before(grammarAccess.getIntegerAccess().getHexadecimalParserRuleCall_1());
- pushFollow(FOLLOW_ruleHexadecimal_in_rule__Integer__Alternatives2110);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getIntegerAccess().getHexadecimalParserRuleCall_1());
+ }
+ pushFollow(FOLLOW_ruleHexadecimal_in_rule__Integer__Alternatives2351);
ruleHexadecimal();
state._fsp--;
-
- after(grammarAccess.getIntegerAccess().getHexadecimalParserRuleCall_1());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getIntegerAccess().getHexadecimalParserRuleCall_1());
+ }
}
@@ -2913,38 +3602,43 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__SignedInteger__Alternatives_0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1043:1: rule__SignedInteger__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1151:1: rule__SignedInteger__Alternatives_0 : ( ( '+' ) | ( '-' ) );
public final void rule__SignedInteger__Alternatives_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1047:1: ( ( '+' ) | ( '-' ) )
- int alt7=2;
- int LA7_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1155:1: ( ( '+' ) | ( '-' ) )
+ int alt9=2;
+ int LA9_0 = input.LA(1);
- if ( (LA7_0==14) ) {
- alt7=1;
+ if ( (LA9_0==16) ) {
+ alt9=1;
}
- else if ( (LA7_0==15) ) {
- alt7=2;
+ else if ( (LA9_0==17) ) {
+ alt9=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 7, 0, input);
+ new NoViableAltException("", 9, 0, input);
throw nvae;
}
- switch (alt7) {
+ switch (alt9) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1048:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1156:1: ( '+' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1048:1: ( '+' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1049:1: '+'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1156:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1157:1: '+'
{
- before(grammarAccess.getSignedIntegerAccess().getPlusSignKeyword_0_0());
- match(input,14,FOLLOW_14_in_rule__SignedInteger__Alternatives_02143);
- after(grammarAccess.getSignedIntegerAccess().getPlusSignKeyword_0_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSignedIntegerAccess().getPlusSignKeyword_0_0());
+ }
+ match(input,16,FOLLOW_16_in_rule__SignedInteger__Alternatives_02384); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSignedIntegerAccess().getPlusSignKeyword_0_0());
+ }
}
@@ -2952,14 +3646,18 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1056:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1164:6: ( '-' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1056:6: ( '-' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1057:1: '-'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1164:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1165:1: '-'
{
- before(grammarAccess.getSignedIntegerAccess().getHyphenMinusKeyword_0_1());
- match(input,15,FOLLOW_15_in_rule__SignedInteger__Alternatives_02163);
- after(grammarAccess.getSignedIntegerAccess().getHyphenMinusKeyword_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSignedIntegerAccess().getHyphenMinusKeyword_0_1());
+ }
+ match(input,17,FOLLOW_17_in_rule__SignedInteger__Alternatives_02404); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSignedIntegerAccess().getHyphenMinusKeyword_0_1());
+ }
}
@@ -2984,29 +3682,33 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Real__Alternatives"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1069:1: rule__Real__Alternatives : ( ( ruleDecimal ) | ( ruleDotDecimal ) | ( ruleDecimalDot ) | ( ruleDecimalExp ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1177:1: rule__Real__Alternatives : ( ( ruleDecimal ) | ( ruleDotDecimal ) | ( ruleDecimalDot ) | ( ruleDecimalExp ) );
public final void rule__Real__Alternatives() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1073:1: ( ( ruleDecimal ) | ( ruleDotDecimal ) | ( ruleDecimalDot ) | ( ruleDecimalExp ) )
- int alt8=4;
- alt8 = dfa8.predict(input);
- switch (alt8) {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1181:1: ( ( ruleDecimal ) | ( ruleDotDecimal ) | ( ruleDecimalDot ) | ( ruleDecimalExp ) )
+ int alt10=4;
+ alt10 = dfa10.predict(input);
+ switch (alt10) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1074:1: ( ruleDecimal )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1182:1: ( ruleDecimal )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1074:1: ( ruleDecimal )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1075:1: ruleDecimal
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1182:1: ( ruleDecimal )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1183:1: ruleDecimal
{
- before(grammarAccess.getRealAccess().getDecimalParserRuleCall_0());
- pushFollow(FOLLOW_ruleDecimal_in_rule__Real__Alternatives2197);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealAccess().getDecimalParserRuleCall_0());
+ }
+ pushFollow(FOLLOW_ruleDecimal_in_rule__Real__Alternatives2438);
ruleDecimal();
state._fsp--;
-
- after(grammarAccess.getRealAccess().getDecimalParserRuleCall_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealAccess().getDecimalParserRuleCall_0());
+ }
}
@@ -3014,18 +3716,22 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1080:6: ( ruleDotDecimal )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1188:6: ( ruleDotDecimal )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1080:6: ( ruleDotDecimal )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1081:1: ruleDotDecimal
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1188:6: ( ruleDotDecimal )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1189:1: ruleDotDecimal
{
- before(grammarAccess.getRealAccess().getDotDecimalParserRuleCall_1());
- pushFollow(FOLLOW_ruleDotDecimal_in_rule__Real__Alternatives2214);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealAccess().getDotDecimalParserRuleCall_1());
+ }
+ pushFollow(FOLLOW_ruleDotDecimal_in_rule__Real__Alternatives2455);
ruleDotDecimal();
state._fsp--;
-
- after(grammarAccess.getRealAccess().getDotDecimalParserRuleCall_1());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealAccess().getDotDecimalParserRuleCall_1());
+ }
}
@@ -3033,18 +3739,22 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 3 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1086:6: ( ruleDecimalDot )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1194:6: ( ruleDecimalDot )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1086:6: ( ruleDecimalDot )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1087:1: ruleDecimalDot
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1194:6: ( ruleDecimalDot )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1195:1: ruleDecimalDot
{
- before(grammarAccess.getRealAccess().getDecimalDotParserRuleCall_2());
- pushFollow(FOLLOW_ruleDecimalDot_in_rule__Real__Alternatives2231);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealAccess().getDecimalDotParserRuleCall_2());
+ }
+ pushFollow(FOLLOW_ruleDecimalDot_in_rule__Real__Alternatives2472);
ruleDecimalDot();
state._fsp--;
-
- after(grammarAccess.getRealAccess().getDecimalDotParserRuleCall_2());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealAccess().getDecimalDotParserRuleCall_2());
+ }
}
@@ -3052,18 +3762,22 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 4 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1092:6: ( ruleDecimalExp )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1200:6: ( ruleDecimalExp )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1092:6: ( ruleDecimalExp )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1093:1: ruleDecimalExp
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1200:6: ( ruleDecimalExp )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1201:1: ruleDecimalExp
{
- before(grammarAccess.getRealAccess().getDecimalExpParserRuleCall_3());
- pushFollow(FOLLOW_ruleDecimalExp_in_rule__Real__Alternatives2248);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealAccess().getDecimalExpParserRuleCall_3());
+ }
+ pushFollow(FOLLOW_ruleDecimalExp_in_rule__Real__Alternatives2489);
ruleDecimalExp();
state._fsp--;
-
- after(grammarAccess.getRealAccess().getDecimalExpParserRuleCall_3());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealAccess().getDecimalExpParserRuleCall_3());
+ }
}
@@ -3088,38 +3802,43 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Decimal__Alternatives_0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1103:1: rule__Decimal__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1211:1: rule__Decimal__Alternatives_0 : ( ( '+' ) | ( '-' ) );
public final void rule__Decimal__Alternatives_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1107:1: ( ( '+' ) | ( '-' ) )
- int alt9=2;
- int LA9_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1215:1: ( ( '+' ) | ( '-' ) )
+ int alt11=2;
+ int LA11_0 = input.LA(1);
- if ( (LA9_0==14) ) {
- alt9=1;
+ if ( (LA11_0==16) ) {
+ alt11=1;
}
- else if ( (LA9_0==15) ) {
- alt9=2;
+ else if ( (LA11_0==17) ) {
+ alt11=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 9, 0, input);
+ new NoViableAltException("", 11, 0, input);
throw nvae;
}
- switch (alt9) {
+ switch (alt11) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1108:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1216:1: ( '+' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1108:1: ( '+' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1109:1: '+'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1216:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1217:1: '+'
{
- before(grammarAccess.getDecimalAccess().getPlusSignKeyword_0_0());
- match(input,14,FOLLOW_14_in_rule__Decimal__Alternatives_02281);
- after(grammarAccess.getDecimalAccess().getPlusSignKeyword_0_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalAccess().getPlusSignKeyword_0_0());
+ }
+ match(input,16,FOLLOW_16_in_rule__Decimal__Alternatives_02522); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalAccess().getPlusSignKeyword_0_0());
+ }
}
@@ -3127,14 +3846,18 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1116:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1224:6: ( '-' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1116:6: ( '-' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1117:1: '-'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1224:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1225:1: '-'
{
- before(grammarAccess.getDecimalAccess().getHyphenMinusKeyword_0_1());
- match(input,15,FOLLOW_15_in_rule__Decimal__Alternatives_02301);
- after(grammarAccess.getDecimalAccess().getHyphenMinusKeyword_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalAccess().getHyphenMinusKeyword_0_1());
+ }
+ match(input,17,FOLLOW_17_in_rule__Decimal__Alternatives_02542); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalAccess().getHyphenMinusKeyword_0_1());
+ }
}
@@ -3159,38 +3882,43 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DotDecimal__Alternatives_0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1129:1: rule__DotDecimal__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1237:1: rule__DotDecimal__Alternatives_0 : ( ( '+' ) | ( '-' ) );
public final void rule__DotDecimal__Alternatives_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1133:1: ( ( '+' ) | ( '-' ) )
- int alt10=2;
- int LA10_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1241:1: ( ( '+' ) | ( '-' ) )
+ int alt12=2;
+ int LA12_0 = input.LA(1);
- if ( (LA10_0==14) ) {
- alt10=1;
+ if ( (LA12_0==16) ) {
+ alt12=1;
}
- else if ( (LA10_0==15) ) {
- alt10=2;
+ else if ( (LA12_0==17) ) {
+ alt12=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 10, 0, input);
+ new NoViableAltException("", 12, 0, input);
throw nvae;
}
- switch (alt10) {
+ switch (alt12) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1134:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1242:1: ( '+' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1134:1: ( '+' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1135:1: '+'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1242:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1243:1: '+'
{
- before(grammarAccess.getDotDecimalAccess().getPlusSignKeyword_0_0());
- match(input,14,FOLLOW_14_in_rule__DotDecimal__Alternatives_02336);
- after(grammarAccess.getDotDecimalAccess().getPlusSignKeyword_0_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDotDecimalAccess().getPlusSignKeyword_0_0());
+ }
+ match(input,16,FOLLOW_16_in_rule__DotDecimal__Alternatives_02577); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDotDecimalAccess().getPlusSignKeyword_0_0());
+ }
}
@@ -3198,14 +3926,18 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1142:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1250:6: ( '-' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1142:6: ( '-' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1143:1: '-'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1250:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1251:1: '-'
{
- before(grammarAccess.getDotDecimalAccess().getHyphenMinusKeyword_0_1());
- match(input,15,FOLLOW_15_in_rule__DotDecimal__Alternatives_02356);
- after(grammarAccess.getDotDecimalAccess().getHyphenMinusKeyword_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDotDecimalAccess().getHyphenMinusKeyword_0_1());
+ }
+ match(input,17,FOLLOW_17_in_rule__DotDecimal__Alternatives_02597); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDotDecimalAccess().getHyphenMinusKeyword_0_1());
+ }
}
@@ -3230,38 +3962,43 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalDot__Alternatives_0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1155:1: rule__DecimalDot__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1263:1: rule__DecimalDot__Alternatives_0 : ( ( '+' ) | ( '-' ) );
public final void rule__DecimalDot__Alternatives_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1159:1: ( ( '+' ) | ( '-' ) )
- int alt11=2;
- int LA11_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1267:1: ( ( '+' ) | ( '-' ) )
+ int alt13=2;
+ int LA13_0 = input.LA(1);
- if ( (LA11_0==14) ) {
- alt11=1;
+ if ( (LA13_0==16) ) {
+ alt13=1;
}
- else if ( (LA11_0==15) ) {
- alt11=2;
+ else if ( (LA13_0==17) ) {
+ alt13=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 11, 0, input);
+ new NoViableAltException("", 13, 0, input);
throw nvae;
}
- switch (alt11) {
+ switch (alt13) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1160:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1268:1: ( '+' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1160:1: ( '+' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1161:1: '+'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1268:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1269:1: '+'
{
- before(grammarAccess.getDecimalDotAccess().getPlusSignKeyword_0_0());
- match(input,14,FOLLOW_14_in_rule__DecimalDot__Alternatives_02391);
- after(grammarAccess.getDecimalDotAccess().getPlusSignKeyword_0_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalDotAccess().getPlusSignKeyword_0_0());
+ }
+ match(input,16,FOLLOW_16_in_rule__DecimalDot__Alternatives_02632); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalDotAccess().getPlusSignKeyword_0_0());
+ }
}
@@ -3269,14 +4006,18 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1168:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1276:6: ( '-' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1168:6: ( '-' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1169:1: '-'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1276:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1277:1: '-'
{
- before(grammarAccess.getDecimalDotAccess().getHyphenMinusKeyword_0_1());
- match(input,15,FOLLOW_15_in_rule__DecimalDot__Alternatives_02411);
- after(grammarAccess.getDecimalDotAccess().getHyphenMinusKeyword_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalDotAccess().getHyphenMinusKeyword_0_1());
+ }
+ match(input,17,FOLLOW_17_in_rule__DecimalDot__Alternatives_02652); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalDotAccess().getHyphenMinusKeyword_0_1());
+ }
}
@@ -3301,38 +4042,43 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Alternatives_0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1181:1: rule__DecimalExp__Alternatives_0 : ( ( '+' ) | ( '-' ) );
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1289:1: rule__DecimalExp__Alternatives_0 : ( ( '+' ) | ( '-' ) );
public final void rule__DecimalExp__Alternatives_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1185:1: ( ( '+' ) | ( '-' ) )
- int alt12=2;
- int LA12_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1293:1: ( ( '+' ) | ( '-' ) )
+ int alt14=2;
+ int LA14_0 = input.LA(1);
- if ( (LA12_0==14) ) {
- alt12=1;
+ if ( (LA14_0==16) ) {
+ alt14=1;
}
- else if ( (LA12_0==15) ) {
- alt12=2;
+ else if ( (LA14_0==17) ) {
+ alt14=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 12, 0, input);
+ new NoViableAltException("", 14, 0, input);
throw nvae;
}
- switch (alt12) {
+ switch (alt14) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1186:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1294:1: ( '+' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1186:1: ( '+' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1187:1: '+'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1294:1: ( '+' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1295:1: '+'
{
- before(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_0_0());
- match(input,14,FOLLOW_14_in_rule__DecimalExp__Alternatives_02446);
- after(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_0_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_0_0());
+ }
+ match(input,16,FOLLOW_16_in_rule__DecimalExp__Alternatives_02687); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_0_0());
+ }
}
@@ -3340,14 +4086,18 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1194:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1302:6: ( '-' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1194:6: ( '-' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1195:1: '-'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1302:6: ( '-' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1303:1: '-'
{
- before(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_0_1());
- match(input,15,FOLLOW_15_in_rule__DecimalExp__Alternatives_02466);
- after(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_0_1());
+ }
+ match(input,17,FOLLOW_17_in_rule__DecimalExp__Alternatives_02707); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_0_1());
+ }
}
@@ -3371,62 +4121,98 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__DecimalExp__Alternatives_0"
- // $ANTLR start "rule__DecimalExp__Alternatives_5"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1207:1: rule__DecimalExp__Alternatives_5 : ( ( '+' ) | ( '-' ) );
- public final void rule__DecimalExp__Alternatives_5() throws RecognitionException {
+ // $ANTLR start "rule__ConfigModel__Group__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1317:1: rule__ConfigModel__Group__0 : rule__ConfigModel__Group__0__Impl rule__ConfigModel__Group__1 ;
+ public final void rule__ConfigModel__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1211:1: ( ( '+' ) | ( '-' ) )
- int alt13=2;
- int LA13_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1321:1: ( rule__ConfigModel__Group__0__Impl rule__ConfigModel__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1322:2: rule__ConfigModel__Group__0__Impl rule__ConfigModel__Group__1
+ {
+ pushFollow(FOLLOW_rule__ConfigModel__Group__0__Impl_in_rule__ConfigModel__Group__02739);
+ rule__ConfigModel__Group__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ConfigModel__Group__1_in_rule__ConfigModel__Group__02742);
+ rule__ConfigModel__Group__1();
+
+ state._fsp--;
+ if (state.failed) return ;
- if ( (LA13_0==14) ) {
- alt13=1;
- }
- else if ( (LA13_0==15) ) {
- alt13=2;
}
- else {
- NoViableAltException nvae =
- new NoViableAltException("", 13, 0, input);
- throw nvae;
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__ConfigModel__Group__0"
+
+
+ // $ANTLR start "rule__ConfigModel__Group__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1329:1: rule__ConfigModel__Group__0__Impl : ( ( rule__ConfigModel__ImportsAssignment_0 )* ) ;
+ public final void rule__ConfigModel__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1333:1: ( ( ( rule__ConfigModel__ImportsAssignment_0 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1334:1: ( ( rule__ConfigModel__ImportsAssignment_0 )* )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1334:1: ( ( rule__ConfigModel__ImportsAssignment_0 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1335:1: ( rule__ConfigModel__ImportsAssignment_0 )*
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigModelAccess().getImportsAssignment_0());
}
- switch (alt13) {
- case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1212:1: ( '+' )
- {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1212:1: ( '+' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1213:1: '+'
- {
- before(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_5_0());
- match(input,14,FOLLOW_14_in_rule__DecimalExp__Alternatives_52501);
- after(grammarAccess.getDecimalExpAccess().getPlusSignKeyword_5_0());
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1336:1: ( rule__ConfigModel__ImportsAssignment_0 )*
+ loop15:
+ do {
+ int alt15=2;
+ int LA15_0 = input.LA(1);
- }
+ if ( (LA15_0==38) ) {
+ alt15=1;
+ }
- }
- break;
- case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1220:6: ( '-' )
- {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1220:6: ( '-' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1221:1: '-'
- {
- before(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_5_1());
- match(input,15,FOLLOW_15_in_rule__DecimalExp__Alternatives_52521);
- after(grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_5_1());
+ switch (alt15) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1336:2: rule__ConfigModel__ImportsAssignment_0
+ {
+ pushFollow(FOLLOW_rule__ConfigModel__ImportsAssignment_0_in_rule__ConfigModel__Group__0__Impl2769);
+ rule__ConfigModel__ImportsAssignment_0();
- }
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+ default :
+ break loop15;
+ }
+ } while (true);
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigModelAccess().getImportsAssignment_0());
+ }
+
+ }
- }
- break;
}
+
}
catch (RecognitionException re) {
reportError(re);
@@ -3439,29 +4225,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__DecimalExp__Alternatives_5"
+ // $ANTLR end "rule__ConfigModel__Group__0__Impl"
- // $ANTLR start "rule__ConfigModel__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1235:1: rule__ConfigModel__Group__0 : rule__ConfigModel__Group__0__Impl rule__ConfigModel__Group__1 ;
- public final void rule__ConfigModel__Group__0() throws RecognitionException {
+ // $ANTLR start "rule__ConfigModel__Group__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1346:1: rule__ConfigModel__Group__1 : rule__ConfigModel__Group__1__Impl ;
+ public final void rule__ConfigModel__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1239:1: ( rule__ConfigModel__Group__0__Impl rule__ConfigModel__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1240:2: rule__ConfigModel__Group__0__Impl rule__ConfigModel__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1350:1: ( rule__ConfigModel__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1351:2: rule__ConfigModel__Group__1__Impl
{
- pushFollow(FOLLOW_rule__ConfigModel__Group__0__Impl_in_rule__ConfigModel__Group__02553);
- rule__ConfigModel__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_rule__ConfigModel__Group__1_in_rule__ConfigModel__Group__02556);
- rule__ConfigModel__Group__1();
+ pushFollow(FOLLOW_rule__ConfigModel__Group__1__Impl_in_rule__ConfigModel__Group__12800);
+ rule__ConfigModel__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -3477,53 +4258,57 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__ConfigModel__Group__0"
+ // $ANTLR end "rule__ConfigModel__Group__1"
- // $ANTLR start "rule__ConfigModel__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1247:1: rule__ConfigModel__Group__0__Impl : ( ( rule__ConfigModel__ImportsAssignment_0 )* ) ;
- public final void rule__ConfigModel__Group__0__Impl() throws RecognitionException {
+ // $ANTLR start "rule__ConfigModel__Group__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1357:1: rule__ConfigModel__Group__1__Impl : ( ( rule__ConfigModel__ConfigElementsAssignment_1 )* ) ;
+ public final void rule__ConfigModel__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1251:1: ( ( ( rule__ConfigModel__ImportsAssignment_0 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1252:1: ( ( rule__ConfigModel__ImportsAssignment_0 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1361:1: ( ( ( rule__ConfigModel__ConfigElementsAssignment_1 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1362:1: ( ( rule__ConfigModel__ConfigElementsAssignment_1 )* )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1252:1: ( ( rule__ConfigModel__ImportsAssignment_0 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1253:1: ( rule__ConfigModel__ImportsAssignment_0 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1362:1: ( ( rule__ConfigModel__ConfigElementsAssignment_1 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1363:1: ( rule__ConfigModel__ConfigElementsAssignment_1 )*
{
- before(grammarAccess.getConfigModelAccess().getImportsAssignment_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1254:1: ( rule__ConfigModel__ImportsAssignment_0 )*
- loop14:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigModelAccess().getConfigElementsAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1364:1: ( rule__ConfigModel__ConfigElementsAssignment_1 )*
+ loop16:
do {
- int alt14=2;
- int LA14_0 = input.LA(1);
+ int alt16=2;
+ int LA16_0 = input.LA(1);
- if ( (LA14_0==30) ) {
- alt14=1;
+ if ( (LA16_0==18||(LA16_0>=26 && LA16_0<=27)||LA16_0==29) ) {
+ alt16=1;
}
- switch (alt14) {
+ switch (alt16) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1254:2: rule__ConfigModel__ImportsAssignment_0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1364:2: rule__ConfigModel__ConfigElementsAssignment_1
{
- pushFollow(FOLLOW_rule__ConfigModel__ImportsAssignment_0_in_rule__ConfigModel__Group__0__Impl2583);
- rule__ConfigModel__ImportsAssignment_0();
+ pushFollow(FOLLOW_rule__ConfigModel__ConfigElementsAssignment_1_in_rule__ConfigModel__Group__1__Impl2827);
+ rule__ConfigModel__ConfigElementsAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
default :
- break loop14;
+ break loop16;
}
} while (true);
- after(grammarAccess.getConfigModelAccess().getImportsAssignment_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigModelAccess().getConfigElementsAssignment_1());
+ }
}
@@ -3542,24 +4327,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__ConfigModel__Group__0__Impl"
+ // $ANTLR end "rule__ConfigModel__Group__1__Impl"
- // $ANTLR start "rule__ConfigModel__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1264:1: rule__ConfigModel__Group__1 : rule__ConfigModel__Group__1__Impl ;
- public final void rule__ConfigModel__Group__1() throws RecognitionException {
+ // $ANTLR start "rule__SubSystemConfig__Group__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1378:1: rule__SubSystemConfig__Group__0 : rule__SubSystemConfig__Group__0__Impl rule__SubSystemConfig__Group__1 ;
+ public final void rule__SubSystemConfig__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1268:1: ( rule__ConfigModel__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1269:2: rule__ConfigModel__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1382:1: ( rule__SubSystemConfig__Group__0__Impl rule__SubSystemConfig__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1383:2: rule__SubSystemConfig__Group__0__Impl rule__SubSystemConfig__Group__1
{
- pushFollow(FOLLOW_rule__ConfigModel__Group__1__Impl_in_rule__ConfigModel__Group__12614);
- rule__ConfigModel__Group__1__Impl();
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__0__Impl_in_rule__SubSystemConfig__Group__02862);
+ rule__SubSystemConfig__Group__0__Impl();
state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__1_in_rule__SubSystemConfig__Group__02865);
+ rule__SubSystemConfig__Group__1();
+ state._fsp--;
+ if (state.failed) return ;
}
@@ -3575,53 +4365,118 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__ConfigModel__Group__1"
+ // $ANTLR end "rule__SubSystemConfig__Group__0"
- // $ANTLR start "rule__ConfigModel__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1275:1: rule__ConfigModel__Group__1__Impl : ( ( rule__ConfigModel__ConfigElementsAssignment_1 )* ) ;
- public final void rule__ConfigModel__Group__1__Impl() throws RecognitionException {
+ // $ANTLR start "rule__SubSystemConfig__Group__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1390:1: rule__SubSystemConfig__Group__0__Impl : ( 'SubSystemConfig' ) ;
+ public final void rule__SubSystemConfig__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1279:1: ( ( ( rule__ConfigModel__ConfigElementsAssignment_1 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1280:1: ( ( rule__ConfigModel__ConfigElementsAssignment_1 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1394:1: ( ( 'SubSystemConfig' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1395:1: ( 'SubSystemConfig' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1280:1: ( ( rule__ConfigModel__ConfigElementsAssignment_1 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1281:1: ( rule__ConfigModel__ConfigElementsAssignment_1 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1395:1: ( 'SubSystemConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1396:1: 'SubSystemConfig'
{
- before(grammarAccess.getConfigModelAccess().getConfigElementsAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1282:1: ( rule__ConfigModel__ConfigElementsAssignment_1 )*
- loop15:
- do {
- int alt15=2;
- int LA15_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigAccess().getSubSystemConfigKeyword_0());
+ }
+ match(input,18,FOLLOW_18_in_rule__SubSystemConfig__Group__0__Impl2893); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigAccess().getSubSystemConfigKeyword_0());
+ }
- if ( (LA15_0==16||LA15_0==19||LA15_0==21) ) {
- alt15=1;
- }
+ }
- switch (alt15) {
- case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1282:2: rule__ConfigModel__ConfigElementsAssignment_1
- {
- pushFollow(FOLLOW_rule__ConfigModel__ConfigElementsAssignment_1_in_rule__ConfigModel__Group__1__Impl2641);
- rule__ConfigModel__ConfigElementsAssignment_1();
+ }
- state._fsp--;
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ restoreStackSize(stackSize);
- }
- break;
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__Group__0__Impl"
- default :
- break loop15;
- }
- } while (true);
- after(grammarAccess.getConfigModelAccess().getConfigElementsAssignment_1());
+ // $ANTLR start "rule__SubSystemConfig__Group__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1409:1: rule__SubSystemConfig__Group__1 : rule__SubSystemConfig__Group__1__Impl rule__SubSystemConfig__Group__2 ;
+ public final void rule__SubSystemConfig__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1413:1: ( rule__SubSystemConfig__Group__1__Impl rule__SubSystemConfig__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1414:2: rule__SubSystemConfig__Group__1__Impl rule__SubSystemConfig__Group__2
+ {
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__1__Impl_in_rule__SubSystemConfig__Group__12924);
+ rule__SubSystemConfig__Group__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__2_in_rule__SubSystemConfig__Group__12927);
+ rule__SubSystemConfig__Group__2();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__Group__1"
+
+
+ // $ANTLR start "rule__SubSystemConfig__Group__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1421:1: rule__SubSystemConfig__Group__1__Impl : ( ( rule__SubSystemConfig__SubSystemAssignment_1 ) ) ;
+ public final void rule__SubSystemConfig__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1425:1: ( ( ( rule__SubSystemConfig__SubSystemAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1426:1: ( ( rule__SubSystemConfig__SubSystemAssignment_1 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1426:1: ( ( rule__SubSystemConfig__SubSystemAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1427:1: ( rule__SubSystemConfig__SubSystemAssignment_1 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigAccess().getSubSystemAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1428:1: ( rule__SubSystemConfig__SubSystemAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1428:2: rule__SubSystemConfig__SubSystemAssignment_1
+ {
+ pushFollow(FOLLOW_rule__SubSystemConfig__SubSystemAssignment_1_in_rule__SubSystemConfig__Group__1__Impl2954);
+ rule__SubSystemConfig__SubSystemAssignment_1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigAccess().getSubSystemAssignment_1());
+ }
}
@@ -3640,29 +4495,1417 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__ConfigModel__Group__1__Impl"
+ // $ANTLR end "rule__SubSystemConfig__Group__1__Impl"
+
+
+ // $ANTLR start "rule__SubSystemConfig__Group__2"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1438:1: rule__SubSystemConfig__Group__2 : rule__SubSystemConfig__Group__2__Impl rule__SubSystemConfig__Group__3 ;
+ public final void rule__SubSystemConfig__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1442:1: ( rule__SubSystemConfig__Group__2__Impl rule__SubSystemConfig__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1443:2: rule__SubSystemConfig__Group__2__Impl rule__SubSystemConfig__Group__3
+ {
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__2__Impl_in_rule__SubSystemConfig__Group__22984);
+ rule__SubSystemConfig__Group__2__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__3_in_rule__SubSystemConfig__Group__22987);
+ rule__SubSystemConfig__Group__3();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__Group__2"
+
+
+ // $ANTLR start "rule__SubSystemConfig__Group__2__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1450:1: rule__SubSystemConfig__Group__2__Impl : ( '{' ) ;
+ public final void rule__SubSystemConfig__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1454:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1455:1: ( '{' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1455:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1456:1: '{'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
+ match(input,19,FOLLOW_19_in_rule__SubSystemConfig__Group__2__Impl3015); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__Group__2__Impl"
+
+
+ // $ANTLR start "rule__SubSystemConfig__Group__3"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1469:1: rule__SubSystemConfig__Group__3 : rule__SubSystemConfig__Group__3__Impl rule__SubSystemConfig__Group__4 ;
+ public final void rule__SubSystemConfig__Group__3() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1473:1: ( rule__SubSystemConfig__Group__3__Impl rule__SubSystemConfig__Group__4 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1474:2: rule__SubSystemConfig__Group__3__Impl rule__SubSystemConfig__Group__4
+ {
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__3__Impl_in_rule__SubSystemConfig__Group__33046);
+ rule__SubSystemConfig__Group__3__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__4_in_rule__SubSystemConfig__Group__33049);
+ rule__SubSystemConfig__Group__4();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__Group__3"
+
+
+ // $ANTLR start "rule__SubSystemConfig__Group__3__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1481:1: rule__SubSystemConfig__Group__3__Impl : ( ( rule__SubSystemConfig__DynConfigAssignment_3 ) ) ;
+ public final void rule__SubSystemConfig__Group__3__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1485:1: ( ( ( rule__SubSystemConfig__DynConfigAssignment_3 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1486:1: ( ( rule__SubSystemConfig__DynConfigAssignment_3 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1486:1: ( ( rule__SubSystemConfig__DynConfigAssignment_3 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1487:1: ( rule__SubSystemConfig__DynConfigAssignment_3 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigAccess().getDynConfigAssignment_3());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1488:1: ( rule__SubSystemConfig__DynConfigAssignment_3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1488:2: rule__SubSystemConfig__DynConfigAssignment_3
+ {
+ pushFollow(FOLLOW_rule__SubSystemConfig__DynConfigAssignment_3_in_rule__SubSystemConfig__Group__3__Impl3076);
+ rule__SubSystemConfig__DynConfigAssignment_3();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigAccess().getDynConfigAssignment_3());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__Group__3__Impl"
+
+
+ // $ANTLR start "rule__SubSystemConfig__Group__4"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1498:1: rule__SubSystemConfig__Group__4 : rule__SubSystemConfig__Group__4__Impl ;
+ public final void rule__SubSystemConfig__Group__4() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1502:1: ( rule__SubSystemConfig__Group__4__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1503:2: rule__SubSystemConfig__Group__4__Impl
+ {
+ pushFollow(FOLLOW_rule__SubSystemConfig__Group__4__Impl_in_rule__SubSystemConfig__Group__43106);
+ rule__SubSystemConfig__Group__4__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__Group__4"
+
+
+ // $ANTLR start "rule__SubSystemConfig__Group__4__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1509:1: rule__SubSystemConfig__Group__4__Impl : ( '}' ) ;
+ public final void rule__SubSystemConfig__Group__4__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1513:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1514:1: ( '}' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1514:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1515:1: '}'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigAccess().getRightCurlyBracketKeyword_4());
+ }
+ match(input,20,FOLLOW_20_in_rule__SubSystemConfig__Group__4__Impl3134); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigAccess().getRightCurlyBracketKeyword_4());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__Group__4__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1538:1: rule__DynamicConfig__Group__0 : rule__DynamicConfig__Group__0__Impl rule__DynamicConfig__Group__1 ;
+ public final void rule__DynamicConfig__Group__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1542:1: ( rule__DynamicConfig__Group__0__Impl rule__DynamicConfig__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1543:2: rule__DynamicConfig__Group__0__Impl rule__DynamicConfig__Group__1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group__0__Impl_in_rule__DynamicConfig__Group__03175);
+ rule__DynamicConfig__Group__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DynamicConfig__Group__1_in_rule__DynamicConfig__Group__03178);
+ rule__DynamicConfig__Group__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group__0"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1550:1: rule__DynamicConfig__Group__0__Impl : ( 'dynamic configuration' ) ;
+ public final void rule__DynamicConfig__Group__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1554:1: ( ( 'dynamic configuration' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1555:1: ( 'dynamic configuration' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1555:1: ( 'dynamic configuration' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1556:1: 'dynamic configuration'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getDynamicConfigurationKeyword_0());
+ }
+ match(input,21,FOLLOW_21_in_rule__DynamicConfig__Group__0__Impl3206); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getDynamicConfigurationKeyword_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group__0__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1569:1: rule__DynamicConfig__Group__1 : rule__DynamicConfig__Group__1__Impl rule__DynamicConfig__Group__2 ;
+ public final void rule__DynamicConfig__Group__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1573:1: ( rule__DynamicConfig__Group__1__Impl rule__DynamicConfig__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1574:2: rule__DynamicConfig__Group__1__Impl rule__DynamicConfig__Group__2
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group__1__Impl_in_rule__DynamicConfig__Group__13237);
+ rule__DynamicConfig__Group__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DynamicConfig__Group__2_in_rule__DynamicConfig__Group__13240);
+ rule__DynamicConfig__Group__2();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group__1"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1581:1: rule__DynamicConfig__Group__1__Impl : ( '{' ) ;
+ public final void rule__DynamicConfig__Group__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1585:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1586:1: ( '{' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1586:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1587:1: '{'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getLeftCurlyBracketKeyword_1());
+ }
+ match(input,19,FOLLOW_19_in_rule__DynamicConfig__Group__1__Impl3268); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getLeftCurlyBracketKeyword_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group__1__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group__2"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1600:1: rule__DynamicConfig__Group__2 : rule__DynamicConfig__Group__2__Impl rule__DynamicConfig__Group__3 ;
+ public final void rule__DynamicConfig__Group__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1604:1: ( rule__DynamicConfig__Group__2__Impl rule__DynamicConfig__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1605:2: rule__DynamicConfig__Group__2__Impl rule__DynamicConfig__Group__3
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group__2__Impl_in_rule__DynamicConfig__Group__23299);
+ rule__DynamicConfig__Group__2__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DynamicConfig__Group__3_in_rule__DynamicConfig__Group__23302);
+ rule__DynamicConfig__Group__3();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group__2"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group__2__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1612:1: rule__DynamicConfig__Group__2__Impl : ( ( rule__DynamicConfig__UnorderedGroup_2 ) ) ;
+ public final void rule__DynamicConfig__Group__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1616:1: ( ( ( rule__DynamicConfig__UnorderedGroup_2 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1617:1: ( ( rule__DynamicConfig__UnorderedGroup_2 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1617:1: ( ( rule__DynamicConfig__UnorderedGroup_2 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1618:1: ( rule__DynamicConfig__UnorderedGroup_2 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1619:1: ( rule__DynamicConfig__UnorderedGroup_2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1619:2: rule__DynamicConfig__UnorderedGroup_2
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__UnorderedGroup_2_in_rule__DynamicConfig__Group__2__Impl3329);
+ rule__DynamicConfig__UnorderedGroup_2();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group__2__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group__3"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1629:1: rule__DynamicConfig__Group__3 : rule__DynamicConfig__Group__3__Impl ;
+ public final void rule__DynamicConfig__Group__3() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1633:1: ( rule__DynamicConfig__Group__3__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1634:2: rule__DynamicConfig__Group__3__Impl
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group__3__Impl_in_rule__DynamicConfig__Group__33359);
+ rule__DynamicConfig__Group__3__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group__3"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group__3__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1640:1: rule__DynamicConfig__Group__3__Impl : ( '}' ) ;
+ public final void rule__DynamicConfig__Group__3__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1644:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1645:1: ( '}' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1645:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1646:1: '}'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getRightCurlyBracketKeyword_3());
+ }
+ match(input,20,FOLLOW_20_in_rule__DynamicConfig__Group__3__Impl3387); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getRightCurlyBracketKeyword_3());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group__3__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_0__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1667:1: rule__DynamicConfig__Group_2_0_0__0 : rule__DynamicConfig__Group_2_0_0__0__Impl rule__DynamicConfig__Group_2_0_0__1 ;
+ public final void rule__DynamicConfig__Group_2_0_0__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1671:1: ( rule__DynamicConfig__Group_2_0_0__0__Impl rule__DynamicConfig__Group_2_0_0__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1672:2: rule__DynamicConfig__Group_2_0_0__0__Impl rule__DynamicConfig__Group_2_0_0__1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_0__0__Impl_in_rule__DynamicConfig__Group_2_0_0__03426);
+ rule__DynamicConfig__Group_2_0_0__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_0__1_in_rule__DynamicConfig__Group_2_0_0__03429);
+ rule__DynamicConfig__Group_2_0_0__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_0__0"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_0__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1679:1: rule__DynamicConfig__Group_2_0_0__0__Impl : ( 'file path' ) ;
+ public final void rule__DynamicConfig__Group_2_0_0__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1683:1: ( ( 'file path' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1684:1: ( 'file path' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1684:1: ( 'file path' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1685:1: 'file path'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getFilePathKeyword_2_0_0_0());
+ }
+ match(input,22,FOLLOW_22_in_rule__DynamicConfig__Group_2_0_0__0__Impl3457); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getFilePathKeyword_2_0_0_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_0__0__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_0__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1698:1: rule__DynamicConfig__Group_2_0_0__1 : rule__DynamicConfig__Group_2_0_0__1__Impl ;
+ public final void rule__DynamicConfig__Group_2_0_0__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1702:1: ( rule__DynamicConfig__Group_2_0_0__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1703:2: rule__DynamicConfig__Group_2_0_0__1__Impl
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_0__1__Impl_in_rule__DynamicConfig__Group_2_0_0__13488);
+ rule__DynamicConfig__Group_2_0_0__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_0__1"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_0__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1709:1: rule__DynamicConfig__Group_2_0_0__1__Impl : ( ( rule__DynamicConfig__FilePathAssignment_2_0_0_1 ) ) ;
+ public final void rule__DynamicConfig__Group_2_0_0__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1713:1: ( ( ( rule__DynamicConfig__FilePathAssignment_2_0_0_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1714:1: ( ( rule__DynamicConfig__FilePathAssignment_2_0_0_1 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1714:1: ( ( rule__DynamicConfig__FilePathAssignment_2_0_0_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1715:1: ( rule__DynamicConfig__FilePathAssignment_2_0_0_1 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getFilePathAssignment_2_0_0_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1716:1: ( rule__DynamicConfig__FilePathAssignment_2_0_0_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1716:2: rule__DynamicConfig__FilePathAssignment_2_0_0_1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__FilePathAssignment_2_0_0_1_in_rule__DynamicConfig__Group_2_0_0__1__Impl3515);
+ rule__DynamicConfig__FilePathAssignment_2_0_0_1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getFilePathAssignment_2_0_0_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_0__1__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1730:1: rule__DynamicConfig__Group_2_0_1__0 : rule__DynamicConfig__Group_2_0_1__0__Impl rule__DynamicConfig__Group_2_0_1__1 ;
+ public final void rule__DynamicConfig__Group_2_0_1__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1734:1: ( rule__DynamicConfig__Group_2_0_1__0__Impl rule__DynamicConfig__Group_2_0_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1735:2: rule__DynamicConfig__Group_2_0_1__0__Impl rule__DynamicConfig__Group_2_0_1__1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1__0__Impl_in_rule__DynamicConfig__Group_2_0_1__03549);
+ rule__DynamicConfig__Group_2_0_1__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1__1_in_rule__DynamicConfig__Group_2_0_1__03552);
+ rule__DynamicConfig__Group_2_0_1__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1__0"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1742:1: rule__DynamicConfig__Group_2_0_1__0__Impl : ( ( rule__DynamicConfig__Group_2_0_1_0__0 ) ) ;
+ public final void rule__DynamicConfig__Group_2_0_1__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1746:1: ( ( ( rule__DynamicConfig__Group_2_0_1_0__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1747:1: ( ( rule__DynamicConfig__Group_2_0_1_0__0 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1747:1: ( ( rule__DynamicConfig__Group_2_0_1_0__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1748:1: ( rule__DynamicConfig__Group_2_0_1_0__0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1749:1: ( rule__DynamicConfig__Group_2_0_1_0__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1749:2: rule__DynamicConfig__Group_2_0_1_0__0
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1_0__0_in_rule__DynamicConfig__Group_2_0_1__0__Impl3579);
+ rule__DynamicConfig__Group_2_0_1_0__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1__0__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1759:1: rule__DynamicConfig__Group_2_0_1__1 : rule__DynamicConfig__Group_2_0_1__1__Impl ;
+ public final void rule__DynamicConfig__Group_2_0_1__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1763:1: ( rule__DynamicConfig__Group_2_0_1__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1764:2: rule__DynamicConfig__Group_2_0_1__1__Impl
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1__1__Impl_in_rule__DynamicConfig__Group_2_0_1__13609);
+ rule__DynamicConfig__Group_2_0_1__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1__1"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1770:1: rule__DynamicConfig__Group_2_0_1__1__Impl : ( ( rule__DynamicConfig__Group_2_0_1_1__0 ) ) ;
+ public final void rule__DynamicConfig__Group_2_0_1__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1774:1: ( ( ( rule__DynamicConfig__Group_2_0_1_1__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1775:1: ( ( rule__DynamicConfig__Group_2_0_1_1__0 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1775:1: ( ( rule__DynamicConfig__Group_2_0_1_1__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1776:1: ( rule__DynamicConfig__Group_2_0_1_1__0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1777:1: ( rule__DynamicConfig__Group_2_0_1_1__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1777:2: rule__DynamicConfig__Group_2_0_1_1__0
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1_1__0_in_rule__DynamicConfig__Group_2_0_1__1__Impl3636);
+ rule__DynamicConfig__Group_2_0_1_1__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getGroup_2_0_1_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1__1__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1_0__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1791:1: rule__DynamicConfig__Group_2_0_1_0__0 : rule__DynamicConfig__Group_2_0_1_0__0__Impl rule__DynamicConfig__Group_2_0_1_0__1 ;
+ public final void rule__DynamicConfig__Group_2_0_1_0__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1795:1: ( rule__DynamicConfig__Group_2_0_1_0__0__Impl rule__DynamicConfig__Group_2_0_1_0__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1796:2: rule__DynamicConfig__Group_2_0_1_0__0__Impl rule__DynamicConfig__Group_2_0_1_0__1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1_0__0__Impl_in_rule__DynamicConfig__Group_2_0_1_0__03670);
+ rule__DynamicConfig__Group_2_0_1_0__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1_0__1_in_rule__DynamicConfig__Group_2_0_1_0__03673);
+ rule__DynamicConfig__Group_2_0_1_0__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1_0__0"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1_0__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1803:1: rule__DynamicConfig__Group_2_0_1_0__0__Impl : ( 'user import' ) ;
+ public final void rule__DynamicConfig__Group_2_0_1_0__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1807:1: ( ( 'user import' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1808:1: ( 'user import' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1808:1: ( 'user import' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1809:1: 'user import'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getUserImportKeyword_2_0_1_0_0());
+ }
+ match(input,23,FOLLOW_23_in_rule__DynamicConfig__Group_2_0_1_0__0__Impl3701); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getUserImportKeyword_2_0_1_0_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1_0__0__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1_0__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1822:1: rule__DynamicConfig__Group_2_0_1_0__1 : rule__DynamicConfig__Group_2_0_1_0__1__Impl ;
+ public final void rule__DynamicConfig__Group_2_0_1_0__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1826:1: ( rule__DynamicConfig__Group_2_0_1_0__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1827:2: rule__DynamicConfig__Group_2_0_1_0__1__Impl
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1_0__1__Impl_in_rule__DynamicConfig__Group_2_0_1_0__13732);
+ rule__DynamicConfig__Group_2_0_1_0__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1_0__1"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1_0__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1833:1: rule__DynamicConfig__Group_2_0_1_0__1__Impl : ( ( rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1 ) ) ;
+ public final void rule__DynamicConfig__Group_2_0_1_0__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1837:1: ( ( ( rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1838:1: ( ( rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1838:1: ( ( rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1839:1: ( rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getUserCode1Assignment_2_0_1_0_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1840:1: ( rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1840:2: rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1_in_rule__DynamicConfig__Group_2_0_1_0__1__Impl3759);
+ rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getUserCode1Assignment_2_0_1_0_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1_0__1__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1_1__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1854:1: rule__DynamicConfig__Group_2_0_1_1__0 : rule__DynamicConfig__Group_2_0_1_1__0__Impl rule__DynamicConfig__Group_2_0_1_1__1 ;
+ public final void rule__DynamicConfig__Group_2_0_1_1__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1858:1: ( rule__DynamicConfig__Group_2_0_1_1__0__Impl rule__DynamicConfig__Group_2_0_1_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1859:2: rule__DynamicConfig__Group_2_0_1_1__0__Impl rule__DynamicConfig__Group_2_0_1_1__1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1_1__0__Impl_in_rule__DynamicConfig__Group_2_0_1_1__03793);
+ rule__DynamicConfig__Group_2_0_1_1__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1_1__1_in_rule__DynamicConfig__Group_2_0_1_1__03796);
+ rule__DynamicConfig__Group_2_0_1_1__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1_1__0"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1_1__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1866:1: rule__DynamicConfig__Group_2_0_1_1__0__Impl : ( 'user constructor' ) ;
+ public final void rule__DynamicConfig__Group_2_0_1_1__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1870:1: ( ( 'user constructor' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1871:1: ( 'user constructor' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1871:1: ( 'user constructor' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1872:1: 'user constructor'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getUserConstructorKeyword_2_0_1_1_0());
+ }
+ match(input,24,FOLLOW_24_in_rule__DynamicConfig__Group_2_0_1_1__0__Impl3824); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getUserConstructorKeyword_2_0_1_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1_1__0__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1_1__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1885:1: rule__DynamicConfig__Group_2_0_1_1__1 : rule__DynamicConfig__Group_2_0_1_1__1__Impl ;
+ public final void rule__DynamicConfig__Group_2_0_1_1__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1889:1: ( rule__DynamicConfig__Group_2_0_1_1__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1890:2: rule__DynamicConfig__Group_2_0_1_1__1__Impl
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_0_1_1__1__Impl_in_rule__DynamicConfig__Group_2_0_1_1__13855);
+ rule__DynamicConfig__Group_2_0_1_1__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1_1__1"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_0_1_1__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1896:1: rule__DynamicConfig__Group_2_0_1_1__1__Impl : ( ( rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1 ) ) ;
+ public final void rule__DynamicConfig__Group_2_0_1_1__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1900:1: ( ( ( rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1901:1: ( ( rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1901:1: ( ( rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1902:1: ( rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getUserCode2Assignment_2_0_1_1_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1903:1: ( rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1903:2: rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1_in_rule__DynamicConfig__Group_2_0_1_1__1__Impl3882);
+ rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getUserCode2Assignment_2_0_1_1_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_0_1_1__1__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_1__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1917:1: rule__DynamicConfig__Group_2_1__0 : rule__DynamicConfig__Group_2_1__0__Impl rule__DynamicConfig__Group_2_1__1 ;
+ public final void rule__DynamicConfig__Group_2_1__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1921:1: ( rule__DynamicConfig__Group_2_1__0__Impl rule__DynamicConfig__Group_2_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1922:2: rule__DynamicConfig__Group_2_1__0__Impl rule__DynamicConfig__Group_2_1__1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_1__0__Impl_in_rule__DynamicConfig__Group_2_1__03916);
+ rule__DynamicConfig__Group_2_1__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_1__1_in_rule__DynamicConfig__Group_2_1__03919);
+ rule__DynamicConfig__Group_2_1__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_1__0"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_1__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1929:1: rule__DynamicConfig__Group_2_1__0__Impl : ( 'polling timer [ms]' ) ;
+ public final void rule__DynamicConfig__Group_2_1__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1933:1: ( ( 'polling timer [ms]' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1934:1: ( 'polling timer [ms]' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1934:1: ( 'polling timer [ms]' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1935:1: 'polling timer [ms]'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getPollingTimerMsKeyword_2_1_0());
+ }
+ match(input,25,FOLLOW_25_in_rule__DynamicConfig__Group_2_1__0__Impl3947); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getPollingTimerMsKeyword_2_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_1__0__Impl"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_1__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1948:1: rule__DynamicConfig__Group_2_1__1 : rule__DynamicConfig__Group_2_1__1__Impl ;
+ public final void rule__DynamicConfig__Group_2_1__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1952:1: ( rule__DynamicConfig__Group_2_1__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1953:2: rule__DynamicConfig__Group_2_1__1__Impl
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_1__1__Impl_in_rule__DynamicConfig__Group_2_1__13978);
+ rule__DynamicConfig__Group_2_1__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_1__1"
+
+
+ // $ANTLR start "rule__DynamicConfig__Group_2_1__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1959:1: rule__DynamicConfig__Group_2_1__1__Impl : ( ( rule__DynamicConfig__PollingAssignment_2_1_1 ) ) ;
+ public final void rule__DynamicConfig__Group_2_1__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1963:1: ( ( ( rule__DynamicConfig__PollingAssignment_2_1_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1964:1: ( ( rule__DynamicConfig__PollingAssignment_2_1_1 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1964:1: ( ( rule__DynamicConfig__PollingAssignment_2_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1965:1: ( rule__DynamicConfig__PollingAssignment_2_1_1 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getPollingAssignment_2_1_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1966:1: ( rule__DynamicConfig__PollingAssignment_2_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1966:2: rule__DynamicConfig__PollingAssignment_2_1_1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__PollingAssignment_2_1_1_in_rule__DynamicConfig__Group_2_1__1__Impl4005);
+ rule__DynamicConfig__PollingAssignment_2_1_1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getPollingAssignment_2_1_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__Group_2_1__1__Impl"
// $ANTLR start "rule__ActorClassConfig__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1296:1: rule__ActorClassConfig__Group__0 : rule__ActorClassConfig__Group__0__Impl rule__ActorClassConfig__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1980:1: rule__ActorClassConfig__Group__0 : rule__ActorClassConfig__Group__0__Impl rule__ActorClassConfig__Group__1 ;
public final void rule__ActorClassConfig__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1300:1: ( rule__ActorClassConfig__Group__0__Impl rule__ActorClassConfig__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1301:2: rule__ActorClassConfig__Group__0__Impl rule__ActorClassConfig__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1984:1: ( rule__ActorClassConfig__Group__0__Impl rule__ActorClassConfig__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1985:2: rule__ActorClassConfig__Group__0__Impl rule__ActorClassConfig__Group__1
{
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__0__Impl_in_rule__ActorClassConfig__Group__02676);
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__0__Impl_in_rule__ActorClassConfig__Group__04039);
rule__ActorClassConfig__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__1_in_rule__ActorClassConfig__Group__02679);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__1_in_rule__ActorClassConfig__Group__04042);
rule__ActorClassConfig__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -3682,21 +5925,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1308:1: rule__ActorClassConfig__Group__0__Impl : ( 'ActorClassConfig' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1992:1: rule__ActorClassConfig__Group__0__Impl : ( 'ActorClassConfig' ) ;
public final void rule__ActorClassConfig__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1312:1: ( ( 'ActorClassConfig' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1313:1: ( 'ActorClassConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1996:1: ( ( 'ActorClassConfig' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1997:1: ( 'ActorClassConfig' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1313:1: ( 'ActorClassConfig' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1314:1: 'ActorClassConfig'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1997:1: ( 'ActorClassConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1998:1: 'ActorClassConfig'
{
- before(grammarAccess.getActorClassConfigAccess().getActorClassConfigKeyword_0());
- match(input,16,FOLLOW_16_in_rule__ActorClassConfig__Group__0__Impl2707);
- after(grammarAccess.getActorClassConfigAccess().getActorClassConfigKeyword_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigAccess().getActorClassConfigKeyword_0());
+ }
+ match(input,26,FOLLOW_26_in_rule__ActorClassConfig__Group__0__Impl4070); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigAccess().getActorClassConfigKeyword_0());
+ }
}
@@ -3719,25 +5966,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1327:1: rule__ActorClassConfig__Group__1 : rule__ActorClassConfig__Group__1__Impl rule__ActorClassConfig__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2011:1: rule__ActorClassConfig__Group__1 : rule__ActorClassConfig__Group__1__Impl rule__ActorClassConfig__Group__2 ;
public final void rule__ActorClassConfig__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1331:1: ( rule__ActorClassConfig__Group__1__Impl rule__ActorClassConfig__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1332:2: rule__ActorClassConfig__Group__1__Impl rule__ActorClassConfig__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2015:1: ( rule__ActorClassConfig__Group__1__Impl rule__ActorClassConfig__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2016:2: rule__ActorClassConfig__Group__1__Impl rule__ActorClassConfig__Group__2
{
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__1__Impl_in_rule__ActorClassConfig__Group__12738);
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__1__Impl_in_rule__ActorClassConfig__Group__14101);
rule__ActorClassConfig__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__2_in_rule__ActorClassConfig__Group__12741);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__2_in_rule__ActorClassConfig__Group__14104);
rule__ActorClassConfig__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -3757,31 +6004,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1339:1: rule__ActorClassConfig__Group__1__Impl : ( ( rule__ActorClassConfig__ActorAssignment_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2023:1: rule__ActorClassConfig__Group__1__Impl : ( ( rule__ActorClassConfig__ActorAssignment_1 ) ) ;
public final void rule__ActorClassConfig__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1343:1: ( ( ( rule__ActorClassConfig__ActorAssignment_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1344:1: ( ( rule__ActorClassConfig__ActorAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2027:1: ( ( ( rule__ActorClassConfig__ActorAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2028:1: ( ( rule__ActorClassConfig__ActorAssignment_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1344:1: ( ( rule__ActorClassConfig__ActorAssignment_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1345:1: ( rule__ActorClassConfig__ActorAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2028:1: ( ( rule__ActorClassConfig__ActorAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2029:1: ( rule__ActorClassConfig__ActorAssignment_1 )
{
- before(grammarAccess.getActorClassConfigAccess().getActorAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1346:1: ( rule__ActorClassConfig__ActorAssignment_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1346:2: rule__ActorClassConfig__ActorAssignment_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigAccess().getActorAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2030:1: ( rule__ActorClassConfig__ActorAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2030:2: rule__ActorClassConfig__ActorAssignment_1
{
- pushFollow(FOLLOW_rule__ActorClassConfig__ActorAssignment_1_in_rule__ActorClassConfig__Group__1__Impl2768);
+ pushFollow(FOLLOW_rule__ActorClassConfig__ActorAssignment_1_in_rule__ActorClassConfig__Group__1__Impl4131);
rule__ActorClassConfig__ActorAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getActorClassConfigAccess().getActorAssignment_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigAccess().getActorAssignment_1());
+ }
}
@@ -3804,25 +6055,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1356:1: rule__ActorClassConfig__Group__2 : rule__ActorClassConfig__Group__2__Impl rule__ActorClassConfig__Group__3 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2040:1: rule__ActorClassConfig__Group__2 : rule__ActorClassConfig__Group__2__Impl rule__ActorClassConfig__Group__3 ;
public final void rule__ActorClassConfig__Group__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1360:1: ( rule__ActorClassConfig__Group__2__Impl rule__ActorClassConfig__Group__3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1361:2: rule__ActorClassConfig__Group__2__Impl rule__ActorClassConfig__Group__3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2044:1: ( rule__ActorClassConfig__Group__2__Impl rule__ActorClassConfig__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2045:2: rule__ActorClassConfig__Group__2__Impl rule__ActorClassConfig__Group__3
{
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__2__Impl_in_rule__ActorClassConfig__Group__22798);
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__2__Impl_in_rule__ActorClassConfig__Group__24161);
rule__ActorClassConfig__Group__2__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__3_in_rule__ActorClassConfig__Group__22801);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__3_in_rule__ActorClassConfig__Group__24164);
rule__ActorClassConfig__Group__3();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -3842,21 +6093,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1368:1: rule__ActorClassConfig__Group__2__Impl : ( '{' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2052:1: rule__ActorClassConfig__Group__2__Impl : ( '{' ) ;
public final void rule__ActorClassConfig__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1372:1: ( ( '{' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1373:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2056:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2057:1: ( '{' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1373:1: ( '{' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1374:1: '{'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2057:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2058:1: '{'
{
- before(grammarAccess.getActorClassConfigAccess().getLeftCurlyBracketKeyword_2());
- match(input,17,FOLLOW_17_in_rule__ActorClassConfig__Group__2__Impl2829);
- after(grammarAccess.getActorClassConfigAccess().getLeftCurlyBracketKeyword_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
+ match(input,19,FOLLOW_19_in_rule__ActorClassConfig__Group__2__Impl4192); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
}
@@ -3879,25 +6134,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__Group__3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1387:1: rule__ActorClassConfig__Group__3 : rule__ActorClassConfig__Group__3__Impl rule__ActorClassConfig__Group__4 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2071:1: rule__ActorClassConfig__Group__3 : rule__ActorClassConfig__Group__3__Impl rule__ActorClassConfig__Group__4 ;
public final void rule__ActorClassConfig__Group__3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1391:1: ( rule__ActorClassConfig__Group__3__Impl rule__ActorClassConfig__Group__4 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1392:2: rule__ActorClassConfig__Group__3__Impl rule__ActorClassConfig__Group__4
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2075:1: ( rule__ActorClassConfig__Group__3__Impl rule__ActorClassConfig__Group__4 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2076:2: rule__ActorClassConfig__Group__3__Impl rule__ActorClassConfig__Group__4
{
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__3__Impl_in_rule__ActorClassConfig__Group__32860);
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__3__Impl_in_rule__ActorClassConfig__Group__34223);
rule__ActorClassConfig__Group__3__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__4_in_rule__ActorClassConfig__Group__32863);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__4_in_rule__ActorClassConfig__Group__34226);
rule__ActorClassConfig__Group__4();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -3917,49 +6172,53 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__Group__3__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1399:1: rule__ActorClassConfig__Group__3__Impl : ( ( rule__ActorClassConfig__AttributesAssignment_3 )* ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2083:1: rule__ActorClassConfig__Group__3__Impl : ( ( rule__ActorClassConfig__AttributesAssignment_3 )* ) ;
public final void rule__ActorClassConfig__Group__3__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1403:1: ( ( ( rule__ActorClassConfig__AttributesAssignment_3 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1404:1: ( ( rule__ActorClassConfig__AttributesAssignment_3 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2087:1: ( ( ( rule__ActorClassConfig__AttributesAssignment_3 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2088:1: ( ( rule__ActorClassConfig__AttributesAssignment_3 )* )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1404:1: ( ( rule__ActorClassConfig__AttributesAssignment_3 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1405:1: ( rule__ActorClassConfig__AttributesAssignment_3 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2088:1: ( ( rule__ActorClassConfig__AttributesAssignment_3 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2089:1: ( rule__ActorClassConfig__AttributesAssignment_3 )*
{
- before(grammarAccess.getActorClassConfigAccess().getAttributesAssignment_3());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1406:1: ( rule__ActorClassConfig__AttributesAssignment_3 )*
- loop16:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigAccess().getAttributesAssignment_3());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2090:1: ( rule__ActorClassConfig__AttributesAssignment_3 )*
+ loop17:
do {
- int alt16=2;
- int LA16_0 = input.LA(1);
+ int alt17=2;
+ int LA17_0 = input.LA(1);
- if ( (LA16_0==26) ) {
- alt16=1;
+ if ( (LA17_0==34) ) {
+ alt17=1;
}
- switch (alt16) {
+ switch (alt17) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1406:2: rule__ActorClassConfig__AttributesAssignment_3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2090:2: rule__ActorClassConfig__AttributesAssignment_3
{
- pushFollow(FOLLOW_rule__ActorClassConfig__AttributesAssignment_3_in_rule__ActorClassConfig__Group__3__Impl2890);
+ pushFollow(FOLLOW_rule__ActorClassConfig__AttributesAssignment_3_in_rule__ActorClassConfig__Group__3__Impl4253);
rule__ActorClassConfig__AttributesAssignment_3();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
default :
- break loop16;
+ break loop17;
}
} while (true);
- after(grammarAccess.getActorClassConfigAccess().getAttributesAssignment_3());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigAccess().getAttributesAssignment_3());
+ }
}
@@ -3982,20 +6241,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__Group__4"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1416:1: rule__ActorClassConfig__Group__4 : rule__ActorClassConfig__Group__4__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2100:1: rule__ActorClassConfig__Group__4 : rule__ActorClassConfig__Group__4__Impl ;
public final void rule__ActorClassConfig__Group__4() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1420:1: ( rule__ActorClassConfig__Group__4__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1421:2: rule__ActorClassConfig__Group__4__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2104:1: ( rule__ActorClassConfig__Group__4__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2105:2: rule__ActorClassConfig__Group__4__Impl
{
- pushFollow(FOLLOW_rule__ActorClassConfig__Group__4__Impl_in_rule__ActorClassConfig__Group__42921);
+ pushFollow(FOLLOW_rule__ActorClassConfig__Group__4__Impl_in_rule__ActorClassConfig__Group__44284);
rule__ActorClassConfig__Group__4__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4015,21 +6274,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__Group__4__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1427:1: rule__ActorClassConfig__Group__4__Impl : ( '}' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2111:1: rule__ActorClassConfig__Group__4__Impl : ( '}' ) ;
public final void rule__ActorClassConfig__Group__4__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1431:1: ( ( '}' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1432:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2115:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2116:1: ( '}' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1432:1: ( '}' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1433:1: '}'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2116:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2117:1: '}'
{
- before(grammarAccess.getActorClassConfigAccess().getRightCurlyBracketKeyword_4());
- match(input,18,FOLLOW_18_in_rule__ActorClassConfig__Group__4__Impl2949);
- after(grammarAccess.getActorClassConfigAccess().getRightCurlyBracketKeyword_4());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigAccess().getRightCurlyBracketKeyword_4());
+ }
+ match(input,20,FOLLOW_20_in_rule__ActorClassConfig__Group__4__Impl4312); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigAccess().getRightCurlyBracketKeyword_4());
+ }
}
@@ -4052,25 +6315,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1456:1: rule__ActorInstanceConfig__Group__0 : rule__ActorInstanceConfig__Group__0__Impl rule__ActorInstanceConfig__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2140:1: rule__ActorInstanceConfig__Group__0 : rule__ActorInstanceConfig__Group__0__Impl rule__ActorInstanceConfig__Group__1 ;
public final void rule__ActorInstanceConfig__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1460:1: ( rule__ActorInstanceConfig__Group__0__Impl rule__ActorInstanceConfig__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1461:2: rule__ActorInstanceConfig__Group__0__Impl rule__ActorInstanceConfig__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2144:1: ( rule__ActorInstanceConfig__Group__0__Impl rule__ActorInstanceConfig__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2145:2: rule__ActorInstanceConfig__Group__0__Impl rule__ActorInstanceConfig__Group__1
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__0__Impl_in_rule__ActorInstanceConfig__Group__02990);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__0__Impl_in_rule__ActorInstanceConfig__Group__04353);
rule__ActorInstanceConfig__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__1_in_rule__ActorInstanceConfig__Group__02993);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__1_in_rule__ActorInstanceConfig__Group__04356);
rule__ActorInstanceConfig__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4090,21 +6353,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1468:1: rule__ActorInstanceConfig__Group__0__Impl : ( 'ActorInstanceConfig' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2152:1: rule__ActorInstanceConfig__Group__0__Impl : ( 'ActorInstanceConfig' ) ;
public final void rule__ActorInstanceConfig__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1472:1: ( ( 'ActorInstanceConfig' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1473:1: ( 'ActorInstanceConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2156:1: ( ( 'ActorInstanceConfig' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2157:1: ( 'ActorInstanceConfig' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1473:1: ( 'ActorInstanceConfig' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1474:1: 'ActorInstanceConfig'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2157:1: ( 'ActorInstanceConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2158:1: 'ActorInstanceConfig'
{
- before(grammarAccess.getActorInstanceConfigAccess().getActorInstanceConfigKeyword_0());
- match(input,19,FOLLOW_19_in_rule__ActorInstanceConfig__Group__0__Impl3021);
- after(grammarAccess.getActorInstanceConfigAccess().getActorInstanceConfigKeyword_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getActorInstanceConfigKeyword_0());
+ }
+ match(input,27,FOLLOW_27_in_rule__ActorInstanceConfig__Group__0__Impl4384); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getActorInstanceConfigKeyword_0());
+ }
}
@@ -4127,25 +6394,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1487:1: rule__ActorInstanceConfig__Group__1 : rule__ActorInstanceConfig__Group__1__Impl rule__ActorInstanceConfig__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2171:1: rule__ActorInstanceConfig__Group__1 : rule__ActorInstanceConfig__Group__1__Impl rule__ActorInstanceConfig__Group__2 ;
public final void rule__ActorInstanceConfig__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1491:1: ( rule__ActorInstanceConfig__Group__1__Impl rule__ActorInstanceConfig__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1492:2: rule__ActorInstanceConfig__Group__1__Impl rule__ActorInstanceConfig__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2175:1: ( rule__ActorInstanceConfig__Group__1__Impl rule__ActorInstanceConfig__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2176:2: rule__ActorInstanceConfig__Group__1__Impl rule__ActorInstanceConfig__Group__2
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__1__Impl_in_rule__ActorInstanceConfig__Group__13052);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__1__Impl_in_rule__ActorInstanceConfig__Group__14415);
rule__ActorInstanceConfig__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__2_in_rule__ActorInstanceConfig__Group__13055);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__2_in_rule__ActorInstanceConfig__Group__14418);
rule__ActorInstanceConfig__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4165,31 +6432,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1499:1: rule__ActorInstanceConfig__Group__1__Impl : ( ( rule__ActorInstanceConfig__RootAssignment_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2183:1: rule__ActorInstanceConfig__Group__1__Impl : ( ( rule__ActorInstanceConfig__RootAssignment_1 ) ) ;
public final void rule__ActorInstanceConfig__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1503:1: ( ( ( rule__ActorInstanceConfig__RootAssignment_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1504:1: ( ( rule__ActorInstanceConfig__RootAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2187:1: ( ( ( rule__ActorInstanceConfig__RootAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2188:1: ( ( rule__ActorInstanceConfig__RootAssignment_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1504:1: ( ( rule__ActorInstanceConfig__RootAssignment_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1505:1: ( rule__ActorInstanceConfig__RootAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2188:1: ( ( rule__ActorInstanceConfig__RootAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2189:1: ( rule__ActorInstanceConfig__RootAssignment_1 )
{
- before(grammarAccess.getActorInstanceConfigAccess().getRootAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1506:1: ( rule__ActorInstanceConfig__RootAssignment_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1506:2: rule__ActorInstanceConfig__RootAssignment_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getRootAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2190:1: ( rule__ActorInstanceConfig__RootAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2190:2: rule__ActorInstanceConfig__RootAssignment_1
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__RootAssignment_1_in_rule__ActorInstanceConfig__Group__1__Impl3082);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__RootAssignment_1_in_rule__ActorInstanceConfig__Group__1__Impl4445);
rule__ActorInstanceConfig__RootAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getActorInstanceConfigAccess().getRootAssignment_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getRootAssignment_1());
+ }
}
@@ -4212,25 +6483,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1516:1: rule__ActorInstanceConfig__Group__2 : rule__ActorInstanceConfig__Group__2__Impl rule__ActorInstanceConfig__Group__3 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2200:1: rule__ActorInstanceConfig__Group__2 : rule__ActorInstanceConfig__Group__2__Impl rule__ActorInstanceConfig__Group__3 ;
public final void rule__ActorInstanceConfig__Group__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1520:1: ( rule__ActorInstanceConfig__Group__2__Impl rule__ActorInstanceConfig__Group__3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1521:2: rule__ActorInstanceConfig__Group__2__Impl rule__ActorInstanceConfig__Group__3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2204:1: ( rule__ActorInstanceConfig__Group__2__Impl rule__ActorInstanceConfig__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2205:2: rule__ActorInstanceConfig__Group__2__Impl rule__ActorInstanceConfig__Group__3
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__2__Impl_in_rule__ActorInstanceConfig__Group__23112);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__2__Impl_in_rule__ActorInstanceConfig__Group__24475);
rule__ActorInstanceConfig__Group__2__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__3_in_rule__ActorInstanceConfig__Group__23115);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__3_in_rule__ActorInstanceConfig__Group__24478);
rule__ActorInstanceConfig__Group__3();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4250,21 +6521,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1528:1: rule__ActorInstanceConfig__Group__2__Impl : ( '/' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2212:1: rule__ActorInstanceConfig__Group__2__Impl : ( '/' ) ;
public final void rule__ActorInstanceConfig__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1532:1: ( ( '/' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1533:1: ( '/' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2216:1: ( ( '/' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2217:1: ( '/' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1533:1: ( '/' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1534:1: '/'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2217:1: ( '/' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2218:1: '/'
{
- before(grammarAccess.getActorInstanceConfigAccess().getSolidusKeyword_2());
- match(input,20,FOLLOW_20_in_rule__ActorInstanceConfig__Group__2__Impl3143);
- after(grammarAccess.getActorInstanceConfigAccess().getSolidusKeyword_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getSolidusKeyword_2());
+ }
+ match(input,28,FOLLOW_28_in_rule__ActorInstanceConfig__Group__2__Impl4506); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getSolidusKeyword_2());
+ }
}
@@ -4287,25 +6562,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1547:1: rule__ActorInstanceConfig__Group__3 : rule__ActorInstanceConfig__Group__3__Impl rule__ActorInstanceConfig__Group__4 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2231:1: rule__ActorInstanceConfig__Group__3 : rule__ActorInstanceConfig__Group__3__Impl rule__ActorInstanceConfig__Group__4 ;
public final void rule__ActorInstanceConfig__Group__3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1551:1: ( rule__ActorInstanceConfig__Group__3__Impl rule__ActorInstanceConfig__Group__4 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1552:2: rule__ActorInstanceConfig__Group__3__Impl rule__ActorInstanceConfig__Group__4
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2235:1: ( rule__ActorInstanceConfig__Group__3__Impl rule__ActorInstanceConfig__Group__4 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2236:2: rule__ActorInstanceConfig__Group__3__Impl rule__ActorInstanceConfig__Group__4
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__3__Impl_in_rule__ActorInstanceConfig__Group__33174);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__3__Impl_in_rule__ActorInstanceConfig__Group__34537);
rule__ActorInstanceConfig__Group__3__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__4_in_rule__ActorInstanceConfig__Group__33177);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__4_in_rule__ActorInstanceConfig__Group__34540);
rule__ActorInstanceConfig__Group__4();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4325,31 +6600,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__3__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1559:1: rule__ActorInstanceConfig__Group__3__Impl : ( ( rule__ActorInstanceConfig__PathAssignment_3 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2243:1: rule__ActorInstanceConfig__Group__3__Impl : ( ( rule__ActorInstanceConfig__PathAssignment_3 ) ) ;
public final void rule__ActorInstanceConfig__Group__3__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1563:1: ( ( ( rule__ActorInstanceConfig__PathAssignment_3 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1564:1: ( ( rule__ActorInstanceConfig__PathAssignment_3 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2247:1: ( ( ( rule__ActorInstanceConfig__PathAssignment_3 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2248:1: ( ( rule__ActorInstanceConfig__PathAssignment_3 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1564:1: ( ( rule__ActorInstanceConfig__PathAssignment_3 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1565:1: ( rule__ActorInstanceConfig__PathAssignment_3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2248:1: ( ( rule__ActorInstanceConfig__PathAssignment_3 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2249:1: ( rule__ActorInstanceConfig__PathAssignment_3 )
{
- before(grammarAccess.getActorInstanceConfigAccess().getPathAssignment_3());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1566:1: ( rule__ActorInstanceConfig__PathAssignment_3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1566:2: rule__ActorInstanceConfig__PathAssignment_3
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getPathAssignment_3());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2250:1: ( rule__ActorInstanceConfig__PathAssignment_3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2250:2: rule__ActorInstanceConfig__PathAssignment_3
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__PathAssignment_3_in_rule__ActorInstanceConfig__Group__3__Impl3204);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__PathAssignment_3_in_rule__ActorInstanceConfig__Group__3__Impl4567);
rule__ActorInstanceConfig__PathAssignment_3();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getActorInstanceConfigAccess().getPathAssignment_3());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getPathAssignment_3());
+ }
}
@@ -4372,25 +6651,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__4"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1576:1: rule__ActorInstanceConfig__Group__4 : rule__ActorInstanceConfig__Group__4__Impl rule__ActorInstanceConfig__Group__5 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2260:1: rule__ActorInstanceConfig__Group__4 : rule__ActorInstanceConfig__Group__4__Impl rule__ActorInstanceConfig__Group__5 ;
public final void rule__ActorInstanceConfig__Group__4() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1580:1: ( rule__ActorInstanceConfig__Group__4__Impl rule__ActorInstanceConfig__Group__5 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1581:2: rule__ActorInstanceConfig__Group__4__Impl rule__ActorInstanceConfig__Group__5
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2264:1: ( rule__ActorInstanceConfig__Group__4__Impl rule__ActorInstanceConfig__Group__5 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2265:2: rule__ActorInstanceConfig__Group__4__Impl rule__ActorInstanceConfig__Group__5
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__4__Impl_in_rule__ActorInstanceConfig__Group__43234);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__4__Impl_in_rule__ActorInstanceConfig__Group__44597);
rule__ActorInstanceConfig__Group__4__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__5_in_rule__ActorInstanceConfig__Group__43237);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__5_in_rule__ActorInstanceConfig__Group__44600);
rule__ActorInstanceConfig__Group__5();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4410,21 +6689,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__4__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1588:1: rule__ActorInstanceConfig__Group__4__Impl : ( '{' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2272:1: rule__ActorInstanceConfig__Group__4__Impl : ( '{' ) ;
public final void rule__ActorInstanceConfig__Group__4__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1592:1: ( ( '{' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1593:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2276:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2277:1: ( '{' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1593:1: ( '{' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1594:1: '{'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2277:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2278:1: '{'
{
- before(grammarAccess.getActorInstanceConfigAccess().getLeftCurlyBracketKeyword_4());
- match(input,17,FOLLOW_17_in_rule__ActorInstanceConfig__Group__4__Impl3265);
- after(grammarAccess.getActorInstanceConfigAccess().getLeftCurlyBracketKeyword_4());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getLeftCurlyBracketKeyword_4());
+ }
+ match(input,19,FOLLOW_19_in_rule__ActorInstanceConfig__Group__4__Impl4628); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getLeftCurlyBracketKeyword_4());
+ }
}
@@ -4447,25 +6730,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__5"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1607:1: rule__ActorInstanceConfig__Group__5 : rule__ActorInstanceConfig__Group__5__Impl rule__ActorInstanceConfig__Group__6 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2291:1: rule__ActorInstanceConfig__Group__5 : rule__ActorInstanceConfig__Group__5__Impl rule__ActorInstanceConfig__Group__6 ;
public final void rule__ActorInstanceConfig__Group__5() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1611:1: ( rule__ActorInstanceConfig__Group__5__Impl rule__ActorInstanceConfig__Group__6 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1612:2: rule__ActorInstanceConfig__Group__5__Impl rule__ActorInstanceConfig__Group__6
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2295:1: ( rule__ActorInstanceConfig__Group__5__Impl rule__ActorInstanceConfig__Group__6 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2296:2: rule__ActorInstanceConfig__Group__5__Impl rule__ActorInstanceConfig__Group__6
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__5__Impl_in_rule__ActorInstanceConfig__Group__53296);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__5__Impl_in_rule__ActorInstanceConfig__Group__54659);
rule__ActorInstanceConfig__Group__5__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__6_in_rule__ActorInstanceConfig__Group__53299);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__6_in_rule__ActorInstanceConfig__Group__54662);
rule__ActorInstanceConfig__Group__6();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4485,49 +6768,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__5__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1619:1: rule__ActorInstanceConfig__Group__5__Impl : ( ( rule__ActorInstanceConfig__AttributesAssignment_5 )* ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2303:1: rule__ActorInstanceConfig__Group__5__Impl : ( ( rule__ActorInstanceConfig__UnorderedGroup_5 ) ) ;
public final void rule__ActorInstanceConfig__Group__5__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1623:1: ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1624:1: ( ( rule__ActorInstanceConfig__AttributesAssignment_5 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2307:1: ( ( ( rule__ActorInstanceConfig__UnorderedGroup_5 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2308:1: ( ( rule__ActorInstanceConfig__UnorderedGroup_5 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1624:1: ( ( rule__ActorInstanceConfig__AttributesAssignment_5 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1625:1: ( rule__ActorInstanceConfig__AttributesAssignment_5 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2308:1: ( ( rule__ActorInstanceConfig__UnorderedGroup_5 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2309:1: ( rule__ActorInstanceConfig__UnorderedGroup_5 )
{
- before(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1626:1: ( rule__ActorInstanceConfig__AttributesAssignment_5 )*
- loop17:
- do {
- int alt17=2;
- int LA17_0 = input.LA(1);
-
- if ( (LA17_0==26) ) {
- alt17=1;
- }
-
-
- switch (alt17) {
- case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1626:2: rule__ActorInstanceConfig__AttributesAssignment_5
- {
- pushFollow(FOLLOW_rule__ActorInstanceConfig__AttributesAssignment_5_in_rule__ActorInstanceConfig__Group__5__Impl3326);
- rule__ActorInstanceConfig__AttributesAssignment_5();
-
- state._fsp--;
-
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2310:1: ( rule__ActorInstanceConfig__UnorderedGroup_5 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2310:2: rule__ActorInstanceConfig__UnorderedGroup_5
+ {
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5_in_rule__ActorInstanceConfig__Group__5__Impl4689);
+ rule__ActorInstanceConfig__UnorderedGroup_5();
- }
- break;
+ state._fsp--;
+ if (state.failed) return ;
- default :
- break loop17;
- }
- } while (true);
+ }
- after(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+ }
}
@@ -4550,25 +6819,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__6"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1636:1: rule__ActorInstanceConfig__Group__6 : rule__ActorInstanceConfig__Group__6__Impl rule__ActorInstanceConfig__Group__7 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2320:1: rule__ActorInstanceConfig__Group__6 : rule__ActorInstanceConfig__Group__6__Impl ;
public final void rule__ActorInstanceConfig__Group__6() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1640:1: ( rule__ActorInstanceConfig__Group__6__Impl rule__ActorInstanceConfig__Group__7 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1641:2: rule__ActorInstanceConfig__Group__6__Impl rule__ActorInstanceConfig__Group__7
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2324:1: ( rule__ActorInstanceConfig__Group__6__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2325:2: rule__ActorInstanceConfig__Group__6__Impl
{
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__6__Impl_in_rule__ActorInstanceConfig__Group__63357);
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__6__Impl_in_rule__ActorInstanceConfig__Group__64719);
rule__ActorInstanceConfig__Group__6__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__7_in_rule__ActorInstanceConfig__Group__63360);
- rule__ActorInstanceConfig__Group__7();
-
- state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4588,120 +6852,26 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__Group__6__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1648:1: rule__ActorInstanceConfig__Group__6__Impl : ( ( rule__ActorInstanceConfig__PortsAssignment_6 )* ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2331:1: rule__ActorInstanceConfig__Group__6__Impl : ( '}' ) ;
public final void rule__ActorInstanceConfig__Group__6__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1652:1: ( ( ( rule__ActorInstanceConfig__PortsAssignment_6 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1653:1: ( ( rule__ActorInstanceConfig__PortsAssignment_6 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2335:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2336:1: ( '}' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1653:1: ( ( rule__ActorInstanceConfig__PortsAssignment_6 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1654:1: ( rule__ActorInstanceConfig__PortsAssignment_6 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2336:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2337:1: '}'
{
- before(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_6());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1655:1: ( rule__ActorInstanceConfig__PortsAssignment_6 )*
- loop18:
- do {
- int alt18=2;
- int LA18_0 = input.LA(1);
-
- if ( (LA18_0==25) ) {
- alt18=1;
- }
-
-
- switch (alt18) {
- case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1655:2: rule__ActorInstanceConfig__PortsAssignment_6
- {
- pushFollow(FOLLOW_rule__ActorInstanceConfig__PortsAssignment_6_in_rule__ActorInstanceConfig__Group__6__Impl3387);
- rule__ActorInstanceConfig__PortsAssignment_6();
-
- state._fsp--;
-
-
- }
- break;
-
- default :
- break loop18;
- }
- } while (true);
-
- after(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_6());
-
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_6());
}
-
-
+ match(input,20,FOLLOW_20_in_rule__ActorInstanceConfig__Group__6__Impl4747); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_6());
}
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ActorInstanceConfig__Group__6__Impl"
-
-
- // $ANTLR start "rule__ActorInstanceConfig__Group__7"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1665:1: rule__ActorInstanceConfig__Group__7 : rule__ActorInstanceConfig__Group__7__Impl ;
- public final void rule__ActorInstanceConfig__Group__7() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1669:1: ( rule__ActorInstanceConfig__Group__7__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1670:2: rule__ActorInstanceConfig__Group__7__Impl
- {
- pushFollow(FOLLOW_rule__ActorInstanceConfig__Group__7__Impl_in_rule__ActorInstanceConfig__Group__73418);
- rule__ActorInstanceConfig__Group__7__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ActorInstanceConfig__Group__7"
-
-
- // $ANTLR start "rule__ActorInstanceConfig__Group__7__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1676:1: rule__ActorInstanceConfig__Group__7__Impl : ( '}' ) ;
- public final void rule__ActorInstanceConfig__Group__7__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1680:1: ( ( '}' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1681:1: ( '}' )
- {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1681:1: ( '}' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1682:1: '}'
- {
- before(grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_7());
- match(input,18,FOLLOW_18_in_rule__ActorInstanceConfig__Group__7__Impl3446);
- after(grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_7());
-
}
@@ -4719,29 +6889,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__ActorInstanceConfig__Group__7__Impl"
+ // $ANTLR end "rule__ActorInstanceConfig__Group__6__Impl"
// $ANTLR start "rule__ProtocolClassConfig__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1711:1: rule__ProtocolClassConfig__Group__0 : rule__ProtocolClassConfig__Group__0__Impl rule__ProtocolClassConfig__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2364:1: rule__ProtocolClassConfig__Group__0 : rule__ProtocolClassConfig__Group__0__Impl rule__ProtocolClassConfig__Group__1 ;
public final void rule__ProtocolClassConfig__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1715:1: ( rule__ProtocolClassConfig__Group__0__Impl rule__ProtocolClassConfig__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1716:2: rule__ProtocolClassConfig__Group__0__Impl rule__ProtocolClassConfig__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2368:1: ( rule__ProtocolClassConfig__Group__0__Impl rule__ProtocolClassConfig__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2369:2: rule__ProtocolClassConfig__Group__0__Impl rule__ProtocolClassConfig__Group__1
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__0__Impl_in_rule__ProtocolClassConfig__Group__03493);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__0__Impl_in_rule__ProtocolClassConfig__Group__04792);
rule__ProtocolClassConfig__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__1_in_rule__ProtocolClassConfig__Group__03496);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__1_in_rule__ProtocolClassConfig__Group__04795);
rule__ProtocolClassConfig__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4761,21 +6931,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1723:1: rule__ProtocolClassConfig__Group__0__Impl : ( 'ProtocolClassConfig' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2376:1: rule__ProtocolClassConfig__Group__0__Impl : ( 'ProtocolClassConfig' ) ;
public final void rule__ProtocolClassConfig__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1727:1: ( ( 'ProtocolClassConfig' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1728:1: ( 'ProtocolClassConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2380:1: ( ( 'ProtocolClassConfig' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2381:1: ( 'ProtocolClassConfig' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1728:1: ( 'ProtocolClassConfig' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1729:1: 'ProtocolClassConfig'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2381:1: ( 'ProtocolClassConfig' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2382:1: 'ProtocolClassConfig'
{
- before(grammarAccess.getProtocolClassConfigAccess().getProtocolClassConfigKeyword_0());
- match(input,21,FOLLOW_21_in_rule__ProtocolClassConfig__Group__0__Impl3524);
- after(grammarAccess.getProtocolClassConfigAccess().getProtocolClassConfigKeyword_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getProtocolClassConfigKeyword_0());
+ }
+ match(input,29,FOLLOW_29_in_rule__ProtocolClassConfig__Group__0__Impl4823); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getProtocolClassConfigKeyword_0());
+ }
}
@@ -4798,25 +6972,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1742:1: rule__ProtocolClassConfig__Group__1 : rule__ProtocolClassConfig__Group__1__Impl rule__ProtocolClassConfig__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2395:1: rule__ProtocolClassConfig__Group__1 : rule__ProtocolClassConfig__Group__1__Impl rule__ProtocolClassConfig__Group__2 ;
public final void rule__ProtocolClassConfig__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1746:1: ( rule__ProtocolClassConfig__Group__1__Impl rule__ProtocolClassConfig__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1747:2: rule__ProtocolClassConfig__Group__1__Impl rule__ProtocolClassConfig__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2399:1: ( rule__ProtocolClassConfig__Group__1__Impl rule__ProtocolClassConfig__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2400:2: rule__ProtocolClassConfig__Group__1__Impl rule__ProtocolClassConfig__Group__2
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__1__Impl_in_rule__ProtocolClassConfig__Group__13555);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__1__Impl_in_rule__ProtocolClassConfig__Group__14854);
rule__ProtocolClassConfig__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__2_in_rule__ProtocolClassConfig__Group__13558);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__2_in_rule__ProtocolClassConfig__Group__14857);
rule__ProtocolClassConfig__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4836,31 +7010,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1754:1: rule__ProtocolClassConfig__Group__1__Impl : ( ( rule__ProtocolClassConfig__ProtocolAssignment_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2407:1: rule__ProtocolClassConfig__Group__1__Impl : ( ( rule__ProtocolClassConfig__ProtocolAssignment_1 ) ) ;
public final void rule__ProtocolClassConfig__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1758:1: ( ( ( rule__ProtocolClassConfig__ProtocolAssignment_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1759:1: ( ( rule__ProtocolClassConfig__ProtocolAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2411:1: ( ( ( rule__ProtocolClassConfig__ProtocolAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2412:1: ( ( rule__ProtocolClassConfig__ProtocolAssignment_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1759:1: ( ( rule__ProtocolClassConfig__ProtocolAssignment_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1760:1: ( rule__ProtocolClassConfig__ProtocolAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2412:1: ( ( rule__ProtocolClassConfig__ProtocolAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2413:1: ( rule__ProtocolClassConfig__ProtocolAssignment_1 )
{
- before(grammarAccess.getProtocolClassConfigAccess().getProtocolAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1761:1: ( rule__ProtocolClassConfig__ProtocolAssignment_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1761:2: rule__ProtocolClassConfig__ProtocolAssignment_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getProtocolAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2414:1: ( rule__ProtocolClassConfig__ProtocolAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2414:2: rule__ProtocolClassConfig__ProtocolAssignment_1
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__ProtocolAssignment_1_in_rule__ProtocolClassConfig__Group__1__Impl3585);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__ProtocolAssignment_1_in_rule__ProtocolClassConfig__Group__1__Impl4884);
rule__ProtocolClassConfig__ProtocolAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getProtocolClassConfigAccess().getProtocolAssignment_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getProtocolAssignment_1());
+ }
}
@@ -4883,25 +7061,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1771:1: rule__ProtocolClassConfig__Group__2 : rule__ProtocolClassConfig__Group__2__Impl rule__ProtocolClassConfig__Group__3 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2424:1: rule__ProtocolClassConfig__Group__2 : rule__ProtocolClassConfig__Group__2__Impl rule__ProtocolClassConfig__Group__3 ;
public final void rule__ProtocolClassConfig__Group__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1775:1: ( rule__ProtocolClassConfig__Group__2__Impl rule__ProtocolClassConfig__Group__3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1776:2: rule__ProtocolClassConfig__Group__2__Impl rule__ProtocolClassConfig__Group__3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2428:1: ( rule__ProtocolClassConfig__Group__2__Impl rule__ProtocolClassConfig__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2429:2: rule__ProtocolClassConfig__Group__2__Impl rule__ProtocolClassConfig__Group__3
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__2__Impl_in_rule__ProtocolClassConfig__Group__23615);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__2__Impl_in_rule__ProtocolClassConfig__Group__24914);
rule__ProtocolClassConfig__Group__2__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__3_in_rule__ProtocolClassConfig__Group__23618);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__3_in_rule__ProtocolClassConfig__Group__24917);
rule__ProtocolClassConfig__Group__3();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4921,21 +7099,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1783:1: rule__ProtocolClassConfig__Group__2__Impl : ( '{' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2436:1: rule__ProtocolClassConfig__Group__2__Impl : ( '{' ) ;
public final void rule__ProtocolClassConfig__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1787:1: ( ( '{' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1788:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2440:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2441:1: ( '{' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1788:1: ( '{' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1789:1: '{'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2441:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2442:1: '{'
{
- before(grammarAccess.getProtocolClassConfigAccess().getLeftCurlyBracketKeyword_2());
- match(input,17,FOLLOW_17_in_rule__ProtocolClassConfig__Group__2__Impl3646);
- after(grammarAccess.getProtocolClassConfigAccess().getLeftCurlyBracketKeyword_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
+ match(input,19,FOLLOW_19_in_rule__ProtocolClassConfig__Group__2__Impl4945); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
}
@@ -4958,25 +7140,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group__3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1802:1: rule__ProtocolClassConfig__Group__3 : rule__ProtocolClassConfig__Group__3__Impl rule__ProtocolClassConfig__Group__4 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2455:1: rule__ProtocolClassConfig__Group__3 : rule__ProtocolClassConfig__Group__3__Impl rule__ProtocolClassConfig__Group__4 ;
public final void rule__ProtocolClassConfig__Group__3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1806:1: ( rule__ProtocolClassConfig__Group__3__Impl rule__ProtocolClassConfig__Group__4 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1807:2: rule__ProtocolClassConfig__Group__3__Impl rule__ProtocolClassConfig__Group__4
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2459:1: ( rule__ProtocolClassConfig__Group__3__Impl rule__ProtocolClassConfig__Group__4 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2460:2: rule__ProtocolClassConfig__Group__3__Impl rule__ProtocolClassConfig__Group__4
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__3__Impl_in_rule__ProtocolClassConfig__Group__33677);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__3__Impl_in_rule__ProtocolClassConfig__Group__34976);
rule__ProtocolClassConfig__Group__3__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__4_in_rule__ProtocolClassConfig__Group__33680);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__4_in_rule__ProtocolClassConfig__Group__34979);
rule__ProtocolClassConfig__Group__4();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -4996,31 +7178,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group__3__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1814:1: rule__ProtocolClassConfig__Group__3__Impl : ( ( rule__ProtocolClassConfig__UnorderedGroup_3 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2467:1: rule__ProtocolClassConfig__Group__3__Impl : ( ( rule__ProtocolClassConfig__UnorderedGroup_3 ) ) ;
public final void rule__ProtocolClassConfig__Group__3__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1818:1: ( ( ( rule__ProtocolClassConfig__UnorderedGroup_3 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1819:1: ( ( rule__ProtocolClassConfig__UnorderedGroup_3 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2471:1: ( ( ( rule__ProtocolClassConfig__UnorderedGroup_3 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2472:1: ( ( rule__ProtocolClassConfig__UnorderedGroup_3 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1819:1: ( ( rule__ProtocolClassConfig__UnorderedGroup_3 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1820:1: ( rule__ProtocolClassConfig__UnorderedGroup_3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2472:1: ( ( rule__ProtocolClassConfig__UnorderedGroup_3 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2473:1: ( rule__ProtocolClassConfig__UnorderedGroup_3 )
{
- before(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1821:1: ( rule__ProtocolClassConfig__UnorderedGroup_3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1821:2: rule__ProtocolClassConfig__UnorderedGroup_3
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2474:1: ( rule__ProtocolClassConfig__UnorderedGroup_3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2474:2: rule__ProtocolClassConfig__UnorderedGroup_3
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3_in_rule__ProtocolClassConfig__Group__3__Impl3707);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3_in_rule__ProtocolClassConfig__Group__3__Impl5006);
rule__ProtocolClassConfig__UnorderedGroup_3();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
+ }
}
@@ -5043,20 +7229,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group__4"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1831:1: rule__ProtocolClassConfig__Group__4 : rule__ProtocolClassConfig__Group__4__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2484:1: rule__ProtocolClassConfig__Group__4 : rule__ProtocolClassConfig__Group__4__Impl ;
public final void rule__ProtocolClassConfig__Group__4() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1835:1: ( rule__ProtocolClassConfig__Group__4__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1836:2: rule__ProtocolClassConfig__Group__4__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2488:1: ( rule__ProtocolClassConfig__Group__4__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2489:2: rule__ProtocolClassConfig__Group__4__Impl
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__4__Impl_in_rule__ProtocolClassConfig__Group__43737);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group__4__Impl_in_rule__ProtocolClassConfig__Group__45036);
rule__ProtocolClassConfig__Group__4__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5076,21 +7262,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group__4__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1842:1: rule__ProtocolClassConfig__Group__4__Impl : ( '}' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2495:1: rule__ProtocolClassConfig__Group__4__Impl : ( '}' ) ;
public final void rule__ProtocolClassConfig__Group__4__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1846:1: ( ( '}' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1847:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2499:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2500:1: ( '}' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1847:1: ( '}' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1848:1: '}'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2500:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2501:1: '}'
{
- before(grammarAccess.getProtocolClassConfigAccess().getRightCurlyBracketKeyword_4());
- match(input,18,FOLLOW_18_in_rule__ProtocolClassConfig__Group__4__Impl3765);
- after(grammarAccess.getProtocolClassConfigAccess().getRightCurlyBracketKeyword_4());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getRightCurlyBracketKeyword_4());
+ }
+ match(input,20,FOLLOW_20_in_rule__ProtocolClassConfig__Group__4__Impl5064); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getRightCurlyBracketKeyword_4());
+ }
}
@@ -5113,25 +7303,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group_3_0__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1871:1: rule__ProtocolClassConfig__Group_3_0__0 : rule__ProtocolClassConfig__Group_3_0__0__Impl rule__ProtocolClassConfig__Group_3_0__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2524:1: rule__ProtocolClassConfig__Group_3_0__0 : rule__ProtocolClassConfig__Group_3_0__0__Impl rule__ProtocolClassConfig__Group_3_0__1 ;
public final void rule__ProtocolClassConfig__Group_3_0__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1875:1: ( rule__ProtocolClassConfig__Group_3_0__0__Impl rule__ProtocolClassConfig__Group_3_0__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1876:2: rule__ProtocolClassConfig__Group_3_0__0__Impl rule__ProtocolClassConfig__Group_3_0__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2528:1: ( rule__ProtocolClassConfig__Group_3_0__0__Impl rule__ProtocolClassConfig__Group_3_0__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2529:2: rule__ProtocolClassConfig__Group_3_0__0__Impl rule__ProtocolClassConfig__Group_3_0__1
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_0__0__Impl_in_rule__ProtocolClassConfig__Group_3_0__03806);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_0__0__Impl_in_rule__ProtocolClassConfig__Group_3_0__05105);
rule__ProtocolClassConfig__Group_3_0__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_0__1_in_rule__ProtocolClassConfig__Group_3_0__03809);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_0__1_in_rule__ProtocolClassConfig__Group_3_0__05108);
rule__ProtocolClassConfig__Group_3_0__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5151,21 +7341,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group_3_0__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1883:1: rule__ProtocolClassConfig__Group_3_0__0__Impl : ( 'regular' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2536:1: rule__ProtocolClassConfig__Group_3_0__0__Impl : ( 'regular' ) ;
public final void rule__ProtocolClassConfig__Group_3_0__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1887:1: ( ( 'regular' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1888:1: ( 'regular' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2540:1: ( ( 'regular' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2541:1: ( 'regular' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1888:1: ( 'regular' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1889:1: 'regular'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2541:1: ( 'regular' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2542:1: 'regular'
{
- before(grammarAccess.getProtocolClassConfigAccess().getRegularKeyword_3_0_0());
- match(input,22,FOLLOW_22_in_rule__ProtocolClassConfig__Group_3_0__0__Impl3837);
- after(grammarAccess.getProtocolClassConfigAccess().getRegularKeyword_3_0_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getRegularKeyword_3_0_0());
+ }
+ match(input,30,FOLLOW_30_in_rule__ProtocolClassConfig__Group_3_0__0__Impl5136); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getRegularKeyword_3_0_0());
+ }
}
@@ -5188,20 +7382,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group_3_0__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1902:1: rule__ProtocolClassConfig__Group_3_0__1 : rule__ProtocolClassConfig__Group_3_0__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2555:1: rule__ProtocolClassConfig__Group_3_0__1 : rule__ProtocolClassConfig__Group_3_0__1__Impl ;
public final void rule__ProtocolClassConfig__Group_3_0__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1906:1: ( rule__ProtocolClassConfig__Group_3_0__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1907:2: rule__ProtocolClassConfig__Group_3_0__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2559:1: ( rule__ProtocolClassConfig__Group_3_0__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2560:2: rule__ProtocolClassConfig__Group_3_0__1__Impl
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_0__1__Impl_in_rule__ProtocolClassConfig__Group_3_0__13868);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_0__1__Impl_in_rule__ProtocolClassConfig__Group_3_0__15167);
rule__ProtocolClassConfig__Group_3_0__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5221,31 +7415,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group_3_0__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1913:1: rule__ProtocolClassConfig__Group_3_0__1__Impl : ( ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2566:1: rule__ProtocolClassConfig__Group_3_0__1__Impl : ( ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 ) ) ;
public final void rule__ProtocolClassConfig__Group_3_0__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1917:1: ( ( ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1918:1: ( ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2570:1: ( ( ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2571:1: ( ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1918:1: ( ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1919:1: ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2571:1: ( ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2572:1: ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 )
{
- before(grammarAccess.getProtocolClassConfigAccess().getRegularAssignment_3_0_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1920:1: ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1920:2: rule__ProtocolClassConfig__RegularAssignment_3_0_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getRegularAssignment_3_0_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2573:1: ( rule__ProtocolClassConfig__RegularAssignment_3_0_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2573:2: rule__ProtocolClassConfig__RegularAssignment_3_0_1
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__RegularAssignment_3_0_1_in_rule__ProtocolClassConfig__Group_3_0__1__Impl3895);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__RegularAssignment_3_0_1_in_rule__ProtocolClassConfig__Group_3_0__1__Impl5194);
rule__ProtocolClassConfig__RegularAssignment_3_0_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getProtocolClassConfigAccess().getRegularAssignment_3_0_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getRegularAssignment_3_0_1());
+ }
}
@@ -5268,25 +7466,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group_3_1__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1934:1: rule__ProtocolClassConfig__Group_3_1__0 : rule__ProtocolClassConfig__Group_3_1__0__Impl rule__ProtocolClassConfig__Group_3_1__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2587:1: rule__ProtocolClassConfig__Group_3_1__0 : rule__ProtocolClassConfig__Group_3_1__0__Impl rule__ProtocolClassConfig__Group_3_1__1 ;
public final void rule__ProtocolClassConfig__Group_3_1__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1938:1: ( rule__ProtocolClassConfig__Group_3_1__0__Impl rule__ProtocolClassConfig__Group_3_1__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1939:2: rule__ProtocolClassConfig__Group_3_1__0__Impl rule__ProtocolClassConfig__Group_3_1__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2591:1: ( rule__ProtocolClassConfig__Group_3_1__0__Impl rule__ProtocolClassConfig__Group_3_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2592:2: rule__ProtocolClassConfig__Group_3_1__0__Impl rule__ProtocolClassConfig__Group_3_1__1
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_1__0__Impl_in_rule__ProtocolClassConfig__Group_3_1__03929);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_1__0__Impl_in_rule__ProtocolClassConfig__Group_3_1__05228);
rule__ProtocolClassConfig__Group_3_1__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_1__1_in_rule__ProtocolClassConfig__Group_3_1__03932);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_1__1_in_rule__ProtocolClassConfig__Group_3_1__05231);
rule__ProtocolClassConfig__Group_3_1__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5306,21 +7504,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group_3_1__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1946:1: rule__ProtocolClassConfig__Group_3_1__0__Impl : ( 'conjugate' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2599:1: rule__ProtocolClassConfig__Group_3_1__0__Impl : ( 'conjugate' ) ;
public final void rule__ProtocolClassConfig__Group_3_1__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1950:1: ( ( 'conjugate' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1951:1: ( 'conjugate' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2603:1: ( ( 'conjugate' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2604:1: ( 'conjugate' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1951:1: ( 'conjugate' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1952:1: 'conjugate'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2604:1: ( 'conjugate' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2605:1: 'conjugate'
{
- before(grammarAccess.getProtocolClassConfigAccess().getConjugateKeyword_3_1_0());
- match(input,23,FOLLOW_23_in_rule__ProtocolClassConfig__Group_3_1__0__Impl3960);
- after(grammarAccess.getProtocolClassConfigAccess().getConjugateKeyword_3_1_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getConjugateKeyword_3_1_0());
+ }
+ match(input,31,FOLLOW_31_in_rule__ProtocolClassConfig__Group_3_1__0__Impl5259); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getConjugateKeyword_3_1_0());
+ }
}
@@ -5343,20 +7545,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group_3_1__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1965:1: rule__ProtocolClassConfig__Group_3_1__1 : rule__ProtocolClassConfig__Group_3_1__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2618:1: rule__ProtocolClassConfig__Group_3_1__1 : rule__ProtocolClassConfig__Group_3_1__1__Impl ;
public final void rule__ProtocolClassConfig__Group_3_1__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1969:1: ( rule__ProtocolClassConfig__Group_3_1__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1970:2: rule__ProtocolClassConfig__Group_3_1__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2622:1: ( rule__ProtocolClassConfig__Group_3_1__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2623:2: rule__ProtocolClassConfig__Group_3_1__1__Impl
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_1__1__Impl_in_rule__ProtocolClassConfig__Group_3_1__13991);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_1__1__Impl_in_rule__ProtocolClassConfig__Group_3_1__15290);
rule__ProtocolClassConfig__Group_3_1__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5376,31 +7578,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__Group_3_1__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1976:1: rule__ProtocolClassConfig__Group_3_1__1__Impl : ( ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2629:1: rule__ProtocolClassConfig__Group_3_1__1__Impl : ( ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 ) ) ;
public final void rule__ProtocolClassConfig__Group_3_1__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1980:1: ( ( ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1981:1: ( ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2633:1: ( ( ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2634:1: ( ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1981:1: ( ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1982:1: ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2634:1: ( ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2635:1: ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 )
{
- before(grammarAccess.getProtocolClassConfigAccess().getConjugatedAssignment_3_1_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1983:1: ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1983:2: rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getConjugatedAssignment_3_1_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2636:1: ( rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2636:2: rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1_in_rule__ProtocolClassConfig__Group_3_1__1__Impl4018);
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1_in_rule__ProtocolClassConfig__Group_3_1__1__Impl5317);
rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getProtocolClassConfigAccess().getConjugatedAssignment_3_1_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getConjugatedAssignment_3_1_1());
+ }
}
@@ -5423,25 +7629,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:1997:1: rule__PortClassConfig__Group__0 : rule__PortClassConfig__Group__0__Impl rule__PortClassConfig__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2650:1: rule__PortClassConfig__Group__0 : rule__PortClassConfig__Group__0__Impl rule__PortClassConfig__Group__1 ;
public final void rule__PortClassConfig__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2001:1: ( rule__PortClassConfig__Group__0__Impl rule__PortClassConfig__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2002:2: rule__PortClassConfig__Group__0__Impl rule__PortClassConfig__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2654:1: ( rule__PortClassConfig__Group__0__Impl rule__PortClassConfig__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2655:2: rule__PortClassConfig__Group__0__Impl rule__PortClassConfig__Group__1
{
- pushFollow(FOLLOW_rule__PortClassConfig__Group__0__Impl_in_rule__PortClassConfig__Group__04052);
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__0__Impl_in_rule__PortClassConfig__Group__05351);
rule__PortClassConfig__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__PortClassConfig__Group__1_in_rule__PortClassConfig__Group__04055);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__1_in_rule__PortClassConfig__Group__05354);
rule__PortClassConfig__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5461,25 +7667,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2009:1: rule__PortClassConfig__Group__0__Impl : ( () ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2662:1: rule__PortClassConfig__Group__0__Impl : ( () ) ;
public final void rule__PortClassConfig__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2013:1: ( ( () ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2014:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2666:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2667:1: ( () )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2014:1: ( () )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2015:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2667:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2668:1: ()
{
- before(grammarAccess.getPortClassConfigAccess().getPortClassConfigAction_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2016:1: ()
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2018:1:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortClassConfigAccess().getPortClassConfigAction_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2669:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2671:1:
{
}
- after(grammarAccess.getPortClassConfigAccess().getPortClassConfigAction_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortClassConfigAccess().getPortClassConfigAction_0());
+ }
}
@@ -5498,25 +7708,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2028:1: rule__PortClassConfig__Group__1 : rule__PortClassConfig__Group__1__Impl rule__PortClassConfig__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2681:1: rule__PortClassConfig__Group__1 : rule__PortClassConfig__Group__1__Impl rule__PortClassConfig__Group__2 ;
public final void rule__PortClassConfig__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2032:1: ( rule__PortClassConfig__Group__1__Impl rule__PortClassConfig__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2033:2: rule__PortClassConfig__Group__1__Impl rule__PortClassConfig__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2685:1: ( rule__PortClassConfig__Group__1__Impl rule__PortClassConfig__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2686:2: rule__PortClassConfig__Group__1__Impl rule__PortClassConfig__Group__2
{
- pushFollow(FOLLOW_rule__PortClassConfig__Group__1__Impl_in_rule__PortClassConfig__Group__14113);
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__1__Impl_in_rule__PortClassConfig__Group__15412);
rule__PortClassConfig__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__PortClassConfig__Group__2_in_rule__PortClassConfig__Group__14116);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__2_in_rule__PortClassConfig__Group__15415);
rule__PortClassConfig__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5536,21 +7746,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2040:1: rule__PortClassConfig__Group__1__Impl : ( 'Port' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2693:1: rule__PortClassConfig__Group__1__Impl : ( 'Port' ) ;
public final void rule__PortClassConfig__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2044:1: ( ( 'Port' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2045:1: ( 'Port' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2697:1: ( ( 'Port' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2698:1: ( 'Port' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2045:1: ( 'Port' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2046:1: 'Port'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2698:1: ( 'Port' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2699:1: 'Port'
{
- before(grammarAccess.getPortClassConfigAccess().getPortKeyword_1());
- match(input,24,FOLLOW_24_in_rule__PortClassConfig__Group__1__Impl4144);
- after(grammarAccess.getPortClassConfigAccess().getPortKeyword_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortClassConfigAccess().getPortKeyword_1());
+ }
+ match(input,32,FOLLOW_32_in_rule__PortClassConfig__Group__1__Impl5443); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortClassConfigAccess().getPortKeyword_1());
+ }
}
@@ -5573,25 +7787,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2059:1: rule__PortClassConfig__Group__2 : rule__PortClassConfig__Group__2__Impl rule__PortClassConfig__Group__3 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2712:1: rule__PortClassConfig__Group__2 : rule__PortClassConfig__Group__2__Impl rule__PortClassConfig__Group__3 ;
public final void rule__PortClassConfig__Group__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2063:1: ( rule__PortClassConfig__Group__2__Impl rule__PortClassConfig__Group__3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2064:2: rule__PortClassConfig__Group__2__Impl rule__PortClassConfig__Group__3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2716:1: ( rule__PortClassConfig__Group__2__Impl rule__PortClassConfig__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2717:2: rule__PortClassConfig__Group__2__Impl rule__PortClassConfig__Group__3
{
- pushFollow(FOLLOW_rule__PortClassConfig__Group__2__Impl_in_rule__PortClassConfig__Group__24175);
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__2__Impl_in_rule__PortClassConfig__Group__25474);
rule__PortClassConfig__Group__2__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__PortClassConfig__Group__3_in_rule__PortClassConfig__Group__24178);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__3_in_rule__PortClassConfig__Group__25477);
rule__PortClassConfig__Group__3();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5611,21 +7825,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2071:1: rule__PortClassConfig__Group__2__Impl : ( '{' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2724:1: rule__PortClassConfig__Group__2__Impl : ( '{' ) ;
public final void rule__PortClassConfig__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2075:1: ( ( '{' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2076:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2728:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2729:1: ( '{' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2076:1: ( '{' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2077:1: '{'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2729:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2730:1: '{'
{
- before(grammarAccess.getPortClassConfigAccess().getLeftCurlyBracketKeyword_2());
- match(input,17,FOLLOW_17_in_rule__PortClassConfig__Group__2__Impl4206);
- after(grammarAccess.getPortClassConfigAccess().getLeftCurlyBracketKeyword_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortClassConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
+ match(input,19,FOLLOW_19_in_rule__PortClassConfig__Group__2__Impl5505); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortClassConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
}
@@ -5648,25 +7866,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2090:1: rule__PortClassConfig__Group__3 : rule__PortClassConfig__Group__3__Impl rule__PortClassConfig__Group__4 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2743:1: rule__PortClassConfig__Group__3 : rule__PortClassConfig__Group__3__Impl rule__PortClassConfig__Group__4 ;
public final void rule__PortClassConfig__Group__3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2094:1: ( rule__PortClassConfig__Group__3__Impl rule__PortClassConfig__Group__4 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2095:2: rule__PortClassConfig__Group__3__Impl rule__PortClassConfig__Group__4
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2747:1: ( rule__PortClassConfig__Group__3__Impl rule__PortClassConfig__Group__4 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2748:2: rule__PortClassConfig__Group__3__Impl rule__PortClassConfig__Group__4
{
- pushFollow(FOLLOW_rule__PortClassConfig__Group__3__Impl_in_rule__PortClassConfig__Group__34237);
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__3__Impl_in_rule__PortClassConfig__Group__35536);
rule__PortClassConfig__Group__3__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__PortClassConfig__Group__4_in_rule__PortClassConfig__Group__34240);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__4_in_rule__PortClassConfig__Group__35539);
rule__PortClassConfig__Group__4();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5686,49 +7904,53 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__3__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2102:1: rule__PortClassConfig__Group__3__Impl : ( ( rule__PortClassConfig__AttributesAssignment_3 )* ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2755:1: rule__PortClassConfig__Group__3__Impl : ( ( rule__PortClassConfig__AttributesAssignment_3 )* ) ;
public final void rule__PortClassConfig__Group__3__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2106:1: ( ( ( rule__PortClassConfig__AttributesAssignment_3 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2107:1: ( ( rule__PortClassConfig__AttributesAssignment_3 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2759:1: ( ( ( rule__PortClassConfig__AttributesAssignment_3 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2760:1: ( ( rule__PortClassConfig__AttributesAssignment_3 )* )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2107:1: ( ( rule__PortClassConfig__AttributesAssignment_3 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2108:1: ( rule__PortClassConfig__AttributesAssignment_3 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2760:1: ( ( rule__PortClassConfig__AttributesAssignment_3 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2761:1: ( rule__PortClassConfig__AttributesAssignment_3 )*
{
- before(grammarAccess.getPortClassConfigAccess().getAttributesAssignment_3());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2109:1: ( rule__PortClassConfig__AttributesAssignment_3 )*
- loop19:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortClassConfigAccess().getAttributesAssignment_3());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2762:1: ( rule__PortClassConfig__AttributesAssignment_3 )*
+ loop18:
do {
- int alt19=2;
- int LA19_0 = input.LA(1);
+ int alt18=2;
+ int LA18_0 = input.LA(1);
- if ( (LA19_0==26) ) {
- alt19=1;
+ if ( (LA18_0==34) ) {
+ alt18=1;
}
- switch (alt19) {
+ switch (alt18) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2109:2: rule__PortClassConfig__AttributesAssignment_3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2762:2: rule__PortClassConfig__AttributesAssignment_3
{
- pushFollow(FOLLOW_rule__PortClassConfig__AttributesAssignment_3_in_rule__PortClassConfig__Group__3__Impl4267);
+ pushFollow(FOLLOW_rule__PortClassConfig__AttributesAssignment_3_in_rule__PortClassConfig__Group__3__Impl5566);
rule__PortClassConfig__AttributesAssignment_3();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
default :
- break loop19;
+ break loop18;
}
} while (true);
- after(grammarAccess.getPortClassConfigAccess().getAttributesAssignment_3());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortClassConfigAccess().getAttributesAssignment_3());
+ }
}
@@ -5751,20 +7973,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__4"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2119:1: rule__PortClassConfig__Group__4 : rule__PortClassConfig__Group__4__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2772:1: rule__PortClassConfig__Group__4 : rule__PortClassConfig__Group__4__Impl ;
public final void rule__PortClassConfig__Group__4() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2123:1: ( rule__PortClassConfig__Group__4__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2124:2: rule__PortClassConfig__Group__4__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2776:1: ( rule__PortClassConfig__Group__4__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2777:2: rule__PortClassConfig__Group__4__Impl
{
- pushFollow(FOLLOW_rule__PortClassConfig__Group__4__Impl_in_rule__PortClassConfig__Group__44298);
+ pushFollow(FOLLOW_rule__PortClassConfig__Group__4__Impl_in_rule__PortClassConfig__Group__45597);
rule__PortClassConfig__Group__4__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5784,21 +8006,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__Group__4__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2130:1: rule__PortClassConfig__Group__4__Impl : ( '}' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2783:1: rule__PortClassConfig__Group__4__Impl : ( '}' ) ;
public final void rule__PortClassConfig__Group__4__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2134:1: ( ( '}' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2135:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2787:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2788:1: ( '}' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2135:1: ( '}' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2136:1: '}'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2788:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2789:1: '}'
{
- before(grammarAccess.getPortClassConfigAccess().getRightCurlyBracketKeyword_4());
- match(input,18,FOLLOW_18_in_rule__PortClassConfig__Group__4__Impl4326);
- after(grammarAccess.getPortClassConfigAccess().getRightCurlyBracketKeyword_4());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortClassConfigAccess().getRightCurlyBracketKeyword_4());
+ }
+ match(input,20,FOLLOW_20_in_rule__PortClassConfig__Group__4__Impl5625); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortClassConfigAccess().getRightCurlyBracketKeyword_4());
+ }
}
@@ -5821,25 +8047,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2159:1: rule__PortInstanceConfig__Group__0 : rule__PortInstanceConfig__Group__0__Impl rule__PortInstanceConfig__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2812:1: rule__PortInstanceConfig__Group__0 : rule__PortInstanceConfig__Group__0__Impl rule__PortInstanceConfig__Group__1 ;
public final void rule__PortInstanceConfig__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2163:1: ( rule__PortInstanceConfig__Group__0__Impl rule__PortInstanceConfig__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2164:2: rule__PortInstanceConfig__Group__0__Impl rule__PortInstanceConfig__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2816:1: ( rule__PortInstanceConfig__Group__0__Impl rule__PortInstanceConfig__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2817:2: rule__PortInstanceConfig__Group__0__Impl rule__PortInstanceConfig__Group__1
{
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__0__Impl_in_rule__PortInstanceConfig__Group__04367);
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__0__Impl_in_rule__PortInstanceConfig__Group__05666);
rule__PortInstanceConfig__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__1_in_rule__PortInstanceConfig__Group__04370);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__1_in_rule__PortInstanceConfig__Group__05669);
rule__PortInstanceConfig__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5859,21 +8085,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2171:1: rule__PortInstanceConfig__Group__0__Impl : ( 'InterfaceItem' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2824:1: rule__PortInstanceConfig__Group__0__Impl : ( 'InterfaceItem' ) ;
public final void rule__PortInstanceConfig__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2175:1: ( ( 'InterfaceItem' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2176:1: ( 'InterfaceItem' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2828:1: ( ( 'InterfaceItem' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2829:1: ( 'InterfaceItem' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2176:1: ( 'InterfaceItem' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2177:1: 'InterfaceItem'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2829:1: ( 'InterfaceItem' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2830:1: 'InterfaceItem'
{
- before(grammarAccess.getPortInstanceConfigAccess().getInterfaceItemKeyword_0());
- match(input,25,FOLLOW_25_in_rule__PortInstanceConfig__Group__0__Impl4398);
- after(grammarAccess.getPortInstanceConfigAccess().getInterfaceItemKeyword_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigAccess().getInterfaceItemKeyword_0());
+ }
+ match(input,33,FOLLOW_33_in_rule__PortInstanceConfig__Group__0__Impl5697); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigAccess().getInterfaceItemKeyword_0());
+ }
}
@@ -5896,25 +8126,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2190:1: rule__PortInstanceConfig__Group__1 : rule__PortInstanceConfig__Group__1__Impl rule__PortInstanceConfig__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2843:1: rule__PortInstanceConfig__Group__1 : rule__PortInstanceConfig__Group__1__Impl rule__PortInstanceConfig__Group__2 ;
public final void rule__PortInstanceConfig__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2194:1: ( rule__PortInstanceConfig__Group__1__Impl rule__PortInstanceConfig__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2195:2: rule__PortInstanceConfig__Group__1__Impl rule__PortInstanceConfig__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2847:1: ( rule__PortInstanceConfig__Group__1__Impl rule__PortInstanceConfig__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2848:2: rule__PortInstanceConfig__Group__1__Impl rule__PortInstanceConfig__Group__2
{
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__1__Impl_in_rule__PortInstanceConfig__Group__14429);
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__1__Impl_in_rule__PortInstanceConfig__Group__15728);
rule__PortInstanceConfig__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__2_in_rule__PortInstanceConfig__Group__14432);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__2_in_rule__PortInstanceConfig__Group__15731);
rule__PortInstanceConfig__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -5934,31 +8164,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2202:1: rule__PortInstanceConfig__Group__1__Impl : ( ( rule__PortInstanceConfig__ItemAssignment_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2855:1: rule__PortInstanceConfig__Group__1__Impl : ( ( rule__PortInstanceConfig__ItemAssignment_1 ) ) ;
public final void rule__PortInstanceConfig__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2206:1: ( ( ( rule__PortInstanceConfig__ItemAssignment_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2207:1: ( ( rule__PortInstanceConfig__ItemAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2859:1: ( ( ( rule__PortInstanceConfig__ItemAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2860:1: ( ( rule__PortInstanceConfig__ItemAssignment_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2207:1: ( ( rule__PortInstanceConfig__ItemAssignment_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2208:1: ( rule__PortInstanceConfig__ItemAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2860:1: ( ( rule__PortInstanceConfig__ItemAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2861:1: ( rule__PortInstanceConfig__ItemAssignment_1 )
{
- before(grammarAccess.getPortInstanceConfigAccess().getItemAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2209:1: ( rule__PortInstanceConfig__ItemAssignment_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2209:2: rule__PortInstanceConfig__ItemAssignment_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigAccess().getItemAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2862:1: ( rule__PortInstanceConfig__ItemAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2862:2: rule__PortInstanceConfig__ItemAssignment_1
{
- pushFollow(FOLLOW_rule__PortInstanceConfig__ItemAssignment_1_in_rule__PortInstanceConfig__Group__1__Impl4459);
+ pushFollow(FOLLOW_rule__PortInstanceConfig__ItemAssignment_1_in_rule__PortInstanceConfig__Group__1__Impl5758);
rule__PortInstanceConfig__ItemAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getPortInstanceConfigAccess().getItemAssignment_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigAccess().getItemAssignment_1());
+ }
}
@@ -5981,25 +8215,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2219:1: rule__PortInstanceConfig__Group__2 : rule__PortInstanceConfig__Group__2__Impl rule__PortInstanceConfig__Group__3 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2872:1: rule__PortInstanceConfig__Group__2 : rule__PortInstanceConfig__Group__2__Impl rule__PortInstanceConfig__Group__3 ;
public final void rule__PortInstanceConfig__Group__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2223:1: ( rule__PortInstanceConfig__Group__2__Impl rule__PortInstanceConfig__Group__3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2224:2: rule__PortInstanceConfig__Group__2__Impl rule__PortInstanceConfig__Group__3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2876:1: ( rule__PortInstanceConfig__Group__2__Impl rule__PortInstanceConfig__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2877:2: rule__PortInstanceConfig__Group__2__Impl rule__PortInstanceConfig__Group__3
{
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__2__Impl_in_rule__PortInstanceConfig__Group__24489);
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__2__Impl_in_rule__PortInstanceConfig__Group__25788);
rule__PortInstanceConfig__Group__2__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__3_in_rule__PortInstanceConfig__Group__24492);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__3_in_rule__PortInstanceConfig__Group__25791);
rule__PortInstanceConfig__Group__3();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6019,21 +8253,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2231:1: rule__PortInstanceConfig__Group__2__Impl : ( '{' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2884:1: rule__PortInstanceConfig__Group__2__Impl : ( '{' ) ;
public final void rule__PortInstanceConfig__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2235:1: ( ( '{' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2236:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2888:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2889:1: ( '{' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2236:1: ( '{' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2237:1: '{'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2889:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2890:1: '{'
{
- before(grammarAccess.getPortInstanceConfigAccess().getLeftCurlyBracketKeyword_2());
- match(input,17,FOLLOW_17_in_rule__PortInstanceConfig__Group__2__Impl4520);
- after(grammarAccess.getPortInstanceConfigAccess().getLeftCurlyBracketKeyword_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
+ match(input,19,FOLLOW_19_in_rule__PortInstanceConfig__Group__2__Impl5819); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
}
@@ -6056,25 +8294,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2250:1: rule__PortInstanceConfig__Group__3 : rule__PortInstanceConfig__Group__3__Impl rule__PortInstanceConfig__Group__4 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2903:1: rule__PortInstanceConfig__Group__3 : rule__PortInstanceConfig__Group__3__Impl rule__PortInstanceConfig__Group__4 ;
public final void rule__PortInstanceConfig__Group__3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2254:1: ( rule__PortInstanceConfig__Group__3__Impl rule__PortInstanceConfig__Group__4 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2255:2: rule__PortInstanceConfig__Group__3__Impl rule__PortInstanceConfig__Group__4
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2907:1: ( rule__PortInstanceConfig__Group__3__Impl rule__PortInstanceConfig__Group__4 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2908:2: rule__PortInstanceConfig__Group__3__Impl rule__PortInstanceConfig__Group__4
{
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__3__Impl_in_rule__PortInstanceConfig__Group__34551);
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__3__Impl_in_rule__PortInstanceConfig__Group__35850);
rule__PortInstanceConfig__Group__3__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__4_in_rule__PortInstanceConfig__Group__34554);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__4_in_rule__PortInstanceConfig__Group__35853);
rule__PortInstanceConfig__Group__4();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6094,49 +8332,53 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__3__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2262:1: rule__PortInstanceConfig__Group__3__Impl : ( ( rule__PortInstanceConfig__AttributesAssignment_3 )* ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2915:1: rule__PortInstanceConfig__Group__3__Impl : ( ( rule__PortInstanceConfig__AttributesAssignment_3 )* ) ;
public final void rule__PortInstanceConfig__Group__3__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2266:1: ( ( ( rule__PortInstanceConfig__AttributesAssignment_3 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2267:1: ( ( rule__PortInstanceConfig__AttributesAssignment_3 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2919:1: ( ( ( rule__PortInstanceConfig__AttributesAssignment_3 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2920:1: ( ( rule__PortInstanceConfig__AttributesAssignment_3 )* )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2267:1: ( ( rule__PortInstanceConfig__AttributesAssignment_3 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2268:1: ( rule__PortInstanceConfig__AttributesAssignment_3 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2920:1: ( ( rule__PortInstanceConfig__AttributesAssignment_3 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2921:1: ( rule__PortInstanceConfig__AttributesAssignment_3 )*
{
- before(grammarAccess.getPortInstanceConfigAccess().getAttributesAssignment_3());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2269:1: ( rule__PortInstanceConfig__AttributesAssignment_3 )*
- loop20:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigAccess().getAttributesAssignment_3());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2922:1: ( rule__PortInstanceConfig__AttributesAssignment_3 )*
+ loop19:
do {
- int alt20=2;
- int LA20_0 = input.LA(1);
+ int alt19=2;
+ int LA19_0 = input.LA(1);
- if ( (LA20_0==26) ) {
- alt20=1;
+ if ( (LA19_0==34) ) {
+ alt19=1;
}
- switch (alt20) {
+ switch (alt19) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2269:2: rule__PortInstanceConfig__AttributesAssignment_3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2922:2: rule__PortInstanceConfig__AttributesAssignment_3
{
- pushFollow(FOLLOW_rule__PortInstanceConfig__AttributesAssignment_3_in_rule__PortInstanceConfig__Group__3__Impl4581);
+ pushFollow(FOLLOW_rule__PortInstanceConfig__AttributesAssignment_3_in_rule__PortInstanceConfig__Group__3__Impl5880);
rule__PortInstanceConfig__AttributesAssignment_3();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
default :
- break loop20;
+ break loop19;
}
} while (true);
- after(grammarAccess.getPortInstanceConfigAccess().getAttributesAssignment_3());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigAccess().getAttributesAssignment_3());
+ }
}
@@ -6159,20 +8401,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__4"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2279:1: rule__PortInstanceConfig__Group__4 : rule__PortInstanceConfig__Group__4__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2932:1: rule__PortInstanceConfig__Group__4 : rule__PortInstanceConfig__Group__4__Impl ;
public final void rule__PortInstanceConfig__Group__4() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2283:1: ( rule__PortInstanceConfig__Group__4__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2284:2: rule__PortInstanceConfig__Group__4__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2936:1: ( rule__PortInstanceConfig__Group__4__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2937:2: rule__PortInstanceConfig__Group__4__Impl
{
- pushFollow(FOLLOW_rule__PortInstanceConfig__Group__4__Impl_in_rule__PortInstanceConfig__Group__44612);
+ pushFollow(FOLLOW_rule__PortInstanceConfig__Group__4__Impl_in_rule__PortInstanceConfig__Group__45911);
rule__PortInstanceConfig__Group__4__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6192,21 +8434,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__Group__4__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2290:1: rule__PortInstanceConfig__Group__4__Impl : ( '}' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2943:1: rule__PortInstanceConfig__Group__4__Impl : ( '}' ) ;
public final void rule__PortInstanceConfig__Group__4__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2294:1: ( ( '}' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2295:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2947:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2948:1: ( '}' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2295:1: ( '}' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2296:1: '}'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2948:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2949:1: '}'
{
- before(grammarAccess.getPortInstanceConfigAccess().getRightCurlyBracketKeyword_4());
- match(input,18,FOLLOW_18_in_rule__PortInstanceConfig__Group__4__Impl4640);
- after(grammarAccess.getPortInstanceConfigAccess().getRightCurlyBracketKeyword_4());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigAccess().getRightCurlyBracketKeyword_4());
+ }
+ match(input,20,FOLLOW_20_in_rule__PortInstanceConfig__Group__4__Impl5939); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigAccess().getRightCurlyBracketKeyword_4());
+ }
}
@@ -6229,25 +8475,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2319:1: rule__AttrClassConfig__Group__0 : rule__AttrClassConfig__Group__0__Impl rule__AttrClassConfig__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2972:1: rule__AttrClassConfig__Group__0 : rule__AttrClassConfig__Group__0__Impl rule__AttrClassConfig__Group__1 ;
public final void rule__AttrClassConfig__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2323:1: ( rule__AttrClassConfig__Group__0__Impl rule__AttrClassConfig__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2324:2: rule__AttrClassConfig__Group__0__Impl rule__AttrClassConfig__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2976:1: ( rule__AttrClassConfig__Group__0__Impl rule__AttrClassConfig__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2977:2: rule__AttrClassConfig__Group__0__Impl rule__AttrClassConfig__Group__1
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group__0__Impl_in_rule__AttrClassConfig__Group__04681);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group__0__Impl_in_rule__AttrClassConfig__Group__05980);
rule__AttrClassConfig__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group__1_in_rule__AttrClassConfig__Group__04684);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group__1_in_rule__AttrClassConfig__Group__05983);
rule__AttrClassConfig__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6267,21 +8513,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2331:1: rule__AttrClassConfig__Group__0__Impl : ( 'Attr' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2984:1: rule__AttrClassConfig__Group__0__Impl : ( 'Attr' ) ;
public final void rule__AttrClassConfig__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2335:1: ( ( 'Attr' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2336:1: ( 'Attr' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2988:1: ( ( 'Attr' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2989:1: ( 'Attr' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2336:1: ( 'Attr' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2337:1: 'Attr'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2989:1: ( 'Attr' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2990:1: 'Attr'
{
- before(grammarAccess.getAttrClassConfigAccess().getAttrKeyword_0());
- match(input,26,FOLLOW_26_in_rule__AttrClassConfig__Group__0__Impl4712);
- after(grammarAccess.getAttrClassConfigAccess().getAttrKeyword_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getAttrKeyword_0());
+ }
+ match(input,34,FOLLOW_34_in_rule__AttrClassConfig__Group__0__Impl6011); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getAttrKeyword_0());
+ }
}
@@ -6304,25 +8554,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2350:1: rule__AttrClassConfig__Group__1 : rule__AttrClassConfig__Group__1__Impl rule__AttrClassConfig__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3003:1: rule__AttrClassConfig__Group__1 : rule__AttrClassConfig__Group__1__Impl rule__AttrClassConfig__Group__2 ;
public final void rule__AttrClassConfig__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2354:1: ( rule__AttrClassConfig__Group__1__Impl rule__AttrClassConfig__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2355:2: rule__AttrClassConfig__Group__1__Impl rule__AttrClassConfig__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3007:1: ( rule__AttrClassConfig__Group__1__Impl rule__AttrClassConfig__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3008:2: rule__AttrClassConfig__Group__1__Impl rule__AttrClassConfig__Group__2
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group__1__Impl_in_rule__AttrClassConfig__Group__14743);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group__1__Impl_in_rule__AttrClassConfig__Group__16042);
rule__AttrClassConfig__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group__2_in_rule__AttrClassConfig__Group__14746);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group__2_in_rule__AttrClassConfig__Group__16045);
rule__AttrClassConfig__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6342,31 +8592,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2362:1: rule__AttrClassConfig__Group__1__Impl : ( ( rule__AttrClassConfig__AttributeAssignment_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3015:1: rule__AttrClassConfig__Group__1__Impl : ( ( rule__AttrClassConfig__AttributeAssignment_1 ) ) ;
public final void rule__AttrClassConfig__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2366:1: ( ( ( rule__AttrClassConfig__AttributeAssignment_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2367:1: ( ( rule__AttrClassConfig__AttributeAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3019:1: ( ( ( rule__AttrClassConfig__AttributeAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3020:1: ( ( rule__AttrClassConfig__AttributeAssignment_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2367:1: ( ( rule__AttrClassConfig__AttributeAssignment_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2368:1: ( rule__AttrClassConfig__AttributeAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3020:1: ( ( rule__AttrClassConfig__AttributeAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3021:1: ( rule__AttrClassConfig__AttributeAssignment_1 )
{
- before(grammarAccess.getAttrClassConfigAccess().getAttributeAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2369:1: ( rule__AttrClassConfig__AttributeAssignment_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2369:2: rule__AttrClassConfig__AttributeAssignment_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getAttributeAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3022:1: ( rule__AttrClassConfig__AttributeAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3022:2: rule__AttrClassConfig__AttributeAssignment_1
{
- pushFollow(FOLLOW_rule__AttrClassConfig__AttributeAssignment_1_in_rule__AttrClassConfig__Group__1__Impl4773);
+ pushFollow(FOLLOW_rule__AttrClassConfig__AttributeAssignment_1_in_rule__AttrClassConfig__Group__1__Impl6072);
rule__AttrClassConfig__AttributeAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrClassConfigAccess().getAttributeAssignment_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getAttributeAssignment_1());
+ }
}
@@ -6389,25 +8643,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2379:1: rule__AttrClassConfig__Group__2 : rule__AttrClassConfig__Group__2__Impl rule__AttrClassConfig__Group__3 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3032:1: rule__AttrClassConfig__Group__2 : rule__AttrClassConfig__Group__2__Impl rule__AttrClassConfig__Group__3 ;
public final void rule__AttrClassConfig__Group__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2383:1: ( rule__AttrClassConfig__Group__2__Impl rule__AttrClassConfig__Group__3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2384:2: rule__AttrClassConfig__Group__2__Impl rule__AttrClassConfig__Group__3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3036:1: ( rule__AttrClassConfig__Group__2__Impl rule__AttrClassConfig__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3037:2: rule__AttrClassConfig__Group__2__Impl rule__AttrClassConfig__Group__3
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group__2__Impl_in_rule__AttrClassConfig__Group__24803);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group__2__Impl_in_rule__AttrClassConfig__Group__26102);
rule__AttrClassConfig__Group__2__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group__3_in_rule__AttrClassConfig__Group__24806);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group__3_in_rule__AttrClassConfig__Group__26105);
rule__AttrClassConfig__Group__3();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6427,42 +8681,46 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2391:1: rule__AttrClassConfig__Group__2__Impl : ( ( rule__AttrClassConfig__Group_2__0 )? ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3044:1: rule__AttrClassConfig__Group__2__Impl : ( ( rule__AttrClassConfig__Group_2__0 )? ) ;
public final void rule__AttrClassConfig__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2395:1: ( ( ( rule__AttrClassConfig__Group_2__0 )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2396:1: ( ( rule__AttrClassConfig__Group_2__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3048:1: ( ( ( rule__AttrClassConfig__Group_2__0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3049:1: ( ( rule__AttrClassConfig__Group_2__0 )? )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2396:1: ( ( rule__AttrClassConfig__Group_2__0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2397:1: ( rule__AttrClassConfig__Group_2__0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3049:1: ( ( rule__AttrClassConfig__Group_2__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3050:1: ( rule__AttrClassConfig__Group_2__0 )?
{
- before(grammarAccess.getAttrClassConfigAccess().getGroup_2());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2398:1: ( rule__AttrClassConfig__Group_2__0 )?
- int alt21=2;
- int LA21_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getGroup_2());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3051:1: ( rule__AttrClassConfig__Group_2__0 )?
+ int alt20=2;
+ int LA20_0 = input.LA(1);
- if ( (LA21_0==27) ) {
- alt21=1;
+ if ( (LA20_0==35) ) {
+ alt20=1;
}
- switch (alt21) {
+ switch (alt20) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2398:2: rule__AttrClassConfig__Group_2__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3051:2: rule__AttrClassConfig__Group_2__0
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_2__0_in_rule__AttrClassConfig__Group__2__Impl4833);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_2__0_in_rule__AttrClassConfig__Group__2__Impl6132);
rule__AttrClassConfig__Group_2__0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
}
- after(grammarAccess.getAttrClassConfigAccess().getGroup_2());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getGroup_2());
+ }
}
@@ -6485,20 +8743,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group__3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2408:1: rule__AttrClassConfig__Group__3 : rule__AttrClassConfig__Group__3__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3061:1: rule__AttrClassConfig__Group__3 : rule__AttrClassConfig__Group__3__Impl ;
public final void rule__AttrClassConfig__Group__3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2412:1: ( rule__AttrClassConfig__Group__3__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2413:2: rule__AttrClassConfig__Group__3__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3065:1: ( rule__AttrClassConfig__Group__3__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3066:2: rule__AttrClassConfig__Group__3__Impl
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group__3__Impl_in_rule__AttrClassConfig__Group__34864);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group__3__Impl_in_rule__AttrClassConfig__Group__36163);
rule__AttrClassConfig__Group__3__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6518,42 +8776,46 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group__3__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2419:1: rule__AttrClassConfig__Group__3__Impl : ( ( rule__AttrClassConfig__Group_3__0 )? ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3072:1: rule__AttrClassConfig__Group__3__Impl : ( ( rule__AttrClassConfig__Group_3__0 )? ) ;
public final void rule__AttrClassConfig__Group__3__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2423:1: ( ( ( rule__AttrClassConfig__Group_3__0 )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2424:1: ( ( rule__AttrClassConfig__Group_3__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3076:1: ( ( ( rule__AttrClassConfig__Group_3__0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3077:1: ( ( rule__AttrClassConfig__Group_3__0 )? )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2424:1: ( ( rule__AttrClassConfig__Group_3__0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2425:1: ( rule__AttrClassConfig__Group_3__0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3077:1: ( ( rule__AttrClassConfig__Group_3__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3078:1: ( rule__AttrClassConfig__Group_3__0 )?
{
- before(grammarAccess.getAttrClassConfigAccess().getGroup_3());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2426:1: ( rule__AttrClassConfig__Group_3__0 )?
- int alt22=2;
- int LA22_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getGroup_3());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3079:1: ( rule__AttrClassConfig__Group_3__0 )?
+ int alt21=2;
+ int LA21_0 = input.LA(1);
- if ( (LA22_0==17) ) {
- alt22=1;
+ if ( (LA21_0==19) ) {
+ alt21=1;
}
- switch (alt22) {
+ switch (alt21) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2426:2: rule__AttrClassConfig__Group_3__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3079:2: rule__AttrClassConfig__Group_3__0
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__0_in_rule__AttrClassConfig__Group__3__Impl4891);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__0_in_rule__AttrClassConfig__Group__3__Impl6190);
rule__AttrClassConfig__Group_3__0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
}
- after(grammarAccess.getAttrClassConfigAccess().getGroup_3());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getGroup_3());
+ }
}
@@ -6576,25 +8838,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_2__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2444:1: rule__AttrClassConfig__Group_2__0 : rule__AttrClassConfig__Group_2__0__Impl rule__AttrClassConfig__Group_2__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3097:1: rule__AttrClassConfig__Group_2__0 : rule__AttrClassConfig__Group_2__0__Impl rule__AttrClassConfig__Group_2__1 ;
public final void rule__AttrClassConfig__Group_2__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2448:1: ( rule__AttrClassConfig__Group_2__0__Impl rule__AttrClassConfig__Group_2__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2449:2: rule__AttrClassConfig__Group_2__0__Impl rule__AttrClassConfig__Group_2__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3101:1: ( rule__AttrClassConfig__Group_2__0__Impl rule__AttrClassConfig__Group_2__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3102:2: rule__AttrClassConfig__Group_2__0__Impl rule__AttrClassConfig__Group_2__1
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_2__0__Impl_in_rule__AttrClassConfig__Group_2__04930);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_2__0__Impl_in_rule__AttrClassConfig__Group_2__06229);
rule__AttrClassConfig__Group_2__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_2__1_in_rule__AttrClassConfig__Group_2__04933);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_2__1_in_rule__AttrClassConfig__Group_2__06232);
rule__AttrClassConfig__Group_2__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6614,21 +8876,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_2__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2456:1: rule__AttrClassConfig__Group_2__0__Impl : ( '=' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3109:1: rule__AttrClassConfig__Group_2__0__Impl : ( '=' ) ;
public final void rule__AttrClassConfig__Group_2__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2460:1: ( ( '=' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2461:1: ( '=' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3113:1: ( ( '=' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3114:1: ( '=' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2461:1: ( '=' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2462:1: '='
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3114:1: ( '=' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3115:1: '='
{
- before(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_2_0());
- match(input,27,FOLLOW_27_in_rule__AttrClassConfig__Group_2__0__Impl4961);
- after(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_2_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_2_0());
+ }
+ match(input,35,FOLLOW_35_in_rule__AttrClassConfig__Group_2__0__Impl6260); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_2_0());
+ }
}
@@ -6651,20 +8917,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_2__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2475:1: rule__AttrClassConfig__Group_2__1 : rule__AttrClassConfig__Group_2__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3128:1: rule__AttrClassConfig__Group_2__1 : rule__AttrClassConfig__Group_2__1__Impl ;
public final void rule__AttrClassConfig__Group_2__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2479:1: ( rule__AttrClassConfig__Group_2__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2480:2: rule__AttrClassConfig__Group_2__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3132:1: ( rule__AttrClassConfig__Group_2__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3133:2: rule__AttrClassConfig__Group_2__1__Impl
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_2__1__Impl_in_rule__AttrClassConfig__Group_2__14992);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_2__1__Impl_in_rule__AttrClassConfig__Group_2__16291);
rule__AttrClassConfig__Group_2__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6684,31 +8950,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_2__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2486:1: rule__AttrClassConfig__Group_2__1__Impl : ( ( rule__AttrClassConfig__ValueAssignment_2_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3139:1: rule__AttrClassConfig__Group_2__1__Impl : ( ( rule__AttrClassConfig__ValueAssignment_2_1 ) ) ;
public final void rule__AttrClassConfig__Group_2__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2490:1: ( ( ( rule__AttrClassConfig__ValueAssignment_2_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2491:1: ( ( rule__AttrClassConfig__ValueAssignment_2_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3143:1: ( ( ( rule__AttrClassConfig__ValueAssignment_2_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3144:1: ( ( rule__AttrClassConfig__ValueAssignment_2_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2491:1: ( ( rule__AttrClassConfig__ValueAssignment_2_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2492:1: ( rule__AttrClassConfig__ValueAssignment_2_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3144:1: ( ( rule__AttrClassConfig__ValueAssignment_2_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3145:1: ( rule__AttrClassConfig__ValueAssignment_2_1 )
{
- before(grammarAccess.getAttrClassConfigAccess().getValueAssignment_2_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2493:1: ( rule__AttrClassConfig__ValueAssignment_2_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2493:2: rule__AttrClassConfig__ValueAssignment_2_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getValueAssignment_2_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3146:1: ( rule__AttrClassConfig__ValueAssignment_2_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3146:2: rule__AttrClassConfig__ValueAssignment_2_1
{
- pushFollow(FOLLOW_rule__AttrClassConfig__ValueAssignment_2_1_in_rule__AttrClassConfig__Group_2__1__Impl5019);
+ pushFollow(FOLLOW_rule__AttrClassConfig__ValueAssignment_2_1_in_rule__AttrClassConfig__Group_2__1__Impl6318);
rule__AttrClassConfig__ValueAssignment_2_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrClassConfigAccess().getValueAssignment_2_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getValueAssignment_2_1());
+ }
}
@@ -6731,25 +9001,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2507:1: rule__AttrClassConfig__Group_3__0 : rule__AttrClassConfig__Group_3__0__Impl rule__AttrClassConfig__Group_3__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3160:1: rule__AttrClassConfig__Group_3__0 : rule__AttrClassConfig__Group_3__0__Impl rule__AttrClassConfig__Group_3__1 ;
public final void rule__AttrClassConfig__Group_3__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2511:1: ( rule__AttrClassConfig__Group_3__0__Impl rule__AttrClassConfig__Group_3__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2512:2: rule__AttrClassConfig__Group_3__0__Impl rule__AttrClassConfig__Group_3__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3164:1: ( rule__AttrClassConfig__Group_3__0__Impl rule__AttrClassConfig__Group_3__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3165:2: rule__AttrClassConfig__Group_3__0__Impl rule__AttrClassConfig__Group_3__1
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__0__Impl_in_rule__AttrClassConfig__Group_3__05053);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__0__Impl_in_rule__AttrClassConfig__Group_3__06352);
rule__AttrClassConfig__Group_3__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__1_in_rule__AttrClassConfig__Group_3__05056);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__1_in_rule__AttrClassConfig__Group_3__06355);
rule__AttrClassConfig__Group_3__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6769,21 +9039,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2519:1: rule__AttrClassConfig__Group_3__0__Impl : ( '{' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3172:1: rule__AttrClassConfig__Group_3__0__Impl : ( '{' ) ;
public final void rule__AttrClassConfig__Group_3__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2523:1: ( ( '{' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2524:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3176:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3177:1: ( '{' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2524:1: ( '{' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2525:1: '{'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3177:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3178:1: '{'
{
- before(grammarAccess.getAttrClassConfigAccess().getLeftCurlyBracketKeyword_3_0());
- match(input,17,FOLLOW_17_in_rule__AttrClassConfig__Group_3__0__Impl5084);
- after(grammarAccess.getAttrClassConfigAccess().getLeftCurlyBracketKeyword_3_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getLeftCurlyBracketKeyword_3_0());
+ }
+ match(input,19,FOLLOW_19_in_rule__AttrClassConfig__Group_3__0__Impl6383); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getLeftCurlyBracketKeyword_3_0());
+ }
}
@@ -6806,25 +9080,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2538:1: rule__AttrClassConfig__Group_3__1 : rule__AttrClassConfig__Group_3__1__Impl rule__AttrClassConfig__Group_3__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3191:1: rule__AttrClassConfig__Group_3__1 : rule__AttrClassConfig__Group_3__1__Impl rule__AttrClassConfig__Group_3__2 ;
public final void rule__AttrClassConfig__Group_3__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2542:1: ( rule__AttrClassConfig__Group_3__1__Impl rule__AttrClassConfig__Group_3__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2543:2: rule__AttrClassConfig__Group_3__1__Impl rule__AttrClassConfig__Group_3__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3195:1: ( rule__AttrClassConfig__Group_3__1__Impl rule__AttrClassConfig__Group_3__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3196:2: rule__AttrClassConfig__Group_3__1__Impl rule__AttrClassConfig__Group_3__2
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__1__Impl_in_rule__AttrClassConfig__Group_3__15115);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__1__Impl_in_rule__AttrClassConfig__Group_3__16414);
rule__AttrClassConfig__Group_3__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__2_in_rule__AttrClassConfig__Group_3__15118);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__2_in_rule__AttrClassConfig__Group_3__16417);
rule__AttrClassConfig__Group_3__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6844,31 +9118,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2550:1: rule__AttrClassConfig__Group_3__1__Impl : ( ( rule__AttrClassConfig__UnorderedGroup_3_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3203:1: rule__AttrClassConfig__Group_3__1__Impl : ( ( rule__AttrClassConfig__Group_3_1__0 ) ) ;
public final void rule__AttrClassConfig__Group_3__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2554:1: ( ( ( rule__AttrClassConfig__UnorderedGroup_3_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2555:1: ( ( rule__AttrClassConfig__UnorderedGroup_3_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3207:1: ( ( ( rule__AttrClassConfig__Group_3_1__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3208:1: ( ( rule__AttrClassConfig__Group_3_1__0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2555:1: ( ( rule__AttrClassConfig__UnorderedGroup_3_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2556:1: ( rule__AttrClassConfig__UnorderedGroup_3_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3208:1: ( ( rule__AttrClassConfig__Group_3_1__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3209:1: ( rule__AttrClassConfig__Group_3_1__0 )
{
- before(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2557:1: ( rule__AttrClassConfig__UnorderedGroup_3_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2557:2: rule__AttrClassConfig__UnorderedGroup_3_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3210:1: ( rule__AttrClassConfig__Group_3_1__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3210:2: rule__AttrClassConfig__Group_3_1__0
{
- pushFollow(FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1_in_rule__AttrClassConfig__Group_3__1__Impl5145);
- rule__AttrClassConfig__UnorderedGroup_3_1();
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1__0_in_rule__AttrClassConfig__Group_3__1__Impl6444);
+ rule__AttrClassConfig__Group_3_1__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1());
+ }
}
@@ -6891,20 +9169,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2567:1: rule__AttrClassConfig__Group_3__2 : rule__AttrClassConfig__Group_3__2__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3220:1: rule__AttrClassConfig__Group_3__2 : rule__AttrClassConfig__Group_3__2__Impl ;
public final void rule__AttrClassConfig__Group_3__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2571:1: ( rule__AttrClassConfig__Group_3__2__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2572:2: rule__AttrClassConfig__Group_3__2__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3224:1: ( rule__AttrClassConfig__Group_3__2__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3225:2: rule__AttrClassConfig__Group_3__2__Impl
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__2__Impl_in_rule__AttrClassConfig__Group_3__25175);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3__2__Impl_in_rule__AttrClassConfig__Group_3__26474);
rule__AttrClassConfig__Group_3__2__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6924,21 +9202,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2578:1: rule__AttrClassConfig__Group_3__2__Impl : ( '}' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3231:1: rule__AttrClassConfig__Group_3__2__Impl : ( '}' ) ;
public final void rule__AttrClassConfig__Group_3__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2582:1: ( ( '}' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2583:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3235:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3236:1: ( '}' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2583:1: ( '}' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2584:1: '}'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3236:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3237:1: '}'
{
- before(grammarAccess.getAttrClassConfigAccess().getRightCurlyBracketKeyword_3_2());
- match(input,18,FOLLOW_18_in_rule__AttrClassConfig__Group_3__2__Impl5203);
- after(grammarAccess.getAttrClassConfigAccess().getRightCurlyBracketKeyword_3_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getRightCurlyBracketKeyword_3_2());
+ }
+ match(input,20,FOLLOW_20_in_rule__AttrClassConfig__Group_3__2__Impl6502); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getRightCurlyBracketKeyword_3_2());
+ }
}
@@ -6960,26 +9242,328 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__AttrClassConfig__Group_3__2__Impl"
+ // $ANTLR start "rule__AttrClassConfig__Group_3_1__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3256:1: rule__AttrClassConfig__Group_3_1__0 : rule__AttrClassConfig__Group_3_1__0__Impl rule__AttrClassConfig__Group_3_1__1 ;
+ public final void rule__AttrClassConfig__Group_3_1__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3260:1: ( rule__AttrClassConfig__Group_3_1__0__Impl rule__AttrClassConfig__Group_3_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3261:2: rule__AttrClassConfig__Group_3_1__0__Impl rule__AttrClassConfig__Group_3_1__1
+ {
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1__0__Impl_in_rule__AttrClassConfig__Group_3_1__06539);
+ rule__AttrClassConfig__Group_3_1__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1__1_in_rule__AttrClassConfig__Group_3_1__06542);
+ rule__AttrClassConfig__Group_3_1__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrClassConfig__Group_3_1__0"
+
+
+ // $ANTLR start "rule__AttrClassConfig__Group_3_1__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3268:1: rule__AttrClassConfig__Group_3_1__0__Impl : ( ( rule__AttrClassConfig__Group_3_1_0__0 )? ) ;
+ public final void rule__AttrClassConfig__Group_3_1__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3272:1: ( ( ( rule__AttrClassConfig__Group_3_1_0__0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3273:1: ( ( rule__AttrClassConfig__Group_3_1_0__0 )? )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3273:1: ( ( rule__AttrClassConfig__Group_3_1_0__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3274:1: ( rule__AttrClassConfig__Group_3_1_0__0 )?
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3275:1: ( rule__AttrClassConfig__Group_3_1_0__0 )?
+ int alt22=2;
+ int LA22_0 = input.LA(1);
+
+ if ( (LA22_0==36) ) {
+ alt22=1;
+ }
+ switch (alt22) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3275:2: rule__AttrClassConfig__Group_3_1_0__0
+ {
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__0_in_rule__AttrClassConfig__Group_3_1__0__Impl6569);
+ rule__AttrClassConfig__Group_3_1_0__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrClassConfig__Group_3_1__0__Impl"
+
+
+ // $ANTLR start "rule__AttrClassConfig__Group_3_1__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3285:1: rule__AttrClassConfig__Group_3_1__1 : rule__AttrClassConfig__Group_3_1__1__Impl rule__AttrClassConfig__Group_3_1__2 ;
+ public final void rule__AttrClassConfig__Group_3_1__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3289:1: ( rule__AttrClassConfig__Group_3_1__1__Impl rule__AttrClassConfig__Group_3_1__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3290:2: rule__AttrClassConfig__Group_3_1__1__Impl rule__AttrClassConfig__Group_3_1__2
+ {
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1__1__Impl_in_rule__AttrClassConfig__Group_3_1__16600);
+ rule__AttrClassConfig__Group_3_1__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1__2_in_rule__AttrClassConfig__Group_3_1__16603);
+ rule__AttrClassConfig__Group_3_1__2();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrClassConfig__Group_3_1__1"
+
+
+ // $ANTLR start "rule__AttrClassConfig__Group_3_1__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3297:1: rule__AttrClassConfig__Group_3_1__1__Impl : ( ( rule__AttrClassConfig__Group_3_1_1__0 )? ) ;
+ public final void rule__AttrClassConfig__Group_3_1__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3301:1: ( ( ( rule__AttrClassConfig__Group_3_1_1__0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3302:1: ( ( rule__AttrClassConfig__Group_3_1_1__0 )? )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3302:1: ( ( rule__AttrClassConfig__Group_3_1_1__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3303:1: ( rule__AttrClassConfig__Group_3_1_1__0 )?
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3304:1: ( rule__AttrClassConfig__Group_3_1_1__0 )?
+ int alt23=2;
+ int LA23_0 = input.LA(1);
+
+ if ( (LA23_0==37) ) {
+ alt23=1;
+ }
+ switch (alt23) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3304:2: rule__AttrClassConfig__Group_3_1_1__0
+ {
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__0_in_rule__AttrClassConfig__Group_3_1__1__Impl6630);
+ rule__AttrClassConfig__Group_3_1_1__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrClassConfig__Group_3_1__1__Impl"
+
+
+ // $ANTLR start "rule__AttrClassConfig__Group_3_1__2"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3314:1: rule__AttrClassConfig__Group_3_1__2 : rule__AttrClassConfig__Group_3_1__2__Impl ;
+ public final void rule__AttrClassConfig__Group_3_1__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3318:1: ( rule__AttrClassConfig__Group_3_1__2__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3319:2: rule__AttrClassConfig__Group_3_1__2__Impl
+ {
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1__2__Impl_in_rule__AttrClassConfig__Group_3_1__26661);
+ rule__AttrClassConfig__Group_3_1__2__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrClassConfig__Group_3_1__2"
+
+
+ // $ANTLR start "rule__AttrClassConfig__Group_3_1__2__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3325:1: rule__AttrClassConfig__Group_3_1__2__Impl : ( ( rule__AttrClassConfig__AttributesAssignment_3_1_2 )* ) ;
+ public final void rule__AttrClassConfig__Group_3_1__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3329:1: ( ( ( rule__AttrClassConfig__AttributesAssignment_3_1_2 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3330:1: ( ( rule__AttrClassConfig__AttributesAssignment_3_1_2 )* )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3330:1: ( ( rule__AttrClassConfig__AttributesAssignment_3_1_2 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3331:1: ( rule__AttrClassConfig__AttributesAssignment_3_1_2 )*
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getAttributesAssignment_3_1_2());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3332:1: ( rule__AttrClassConfig__AttributesAssignment_3_1_2 )*
+ loop24:
+ do {
+ int alt24=2;
+ int LA24_0 = input.LA(1);
+
+ if ( (LA24_0==34) ) {
+ alt24=1;
+ }
+
+
+ switch (alt24) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3332:2: rule__AttrClassConfig__AttributesAssignment_3_1_2
+ {
+ pushFollow(FOLLOW_rule__AttrClassConfig__AttributesAssignment_3_1_2_in_rule__AttrClassConfig__Group_3_1__2__Impl6688);
+ rule__AttrClassConfig__AttributesAssignment_3_1_2();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+
+ default :
+ break loop24;
+ }
+ } while (true);
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getAttributesAssignment_3_1_2());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrClassConfig__Group_3_1__2__Impl"
+
+
// $ANTLR start "rule__AttrClassConfig__Group_3_1_0__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2603:1: rule__AttrClassConfig__Group_3_1_0__0 : rule__AttrClassConfig__Group_3_1_0__0__Impl rule__AttrClassConfig__Group_3_1_0__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3348:1: rule__AttrClassConfig__Group_3_1_0__0 : rule__AttrClassConfig__Group_3_1_0__0__Impl rule__AttrClassConfig__Group_3_1_0__1 ;
public final void rule__AttrClassConfig__Group_3_1_0__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2607:1: ( rule__AttrClassConfig__Group_3_1_0__0__Impl rule__AttrClassConfig__Group_3_1_0__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2608:2: rule__AttrClassConfig__Group_3_1_0__0__Impl rule__AttrClassConfig__Group_3_1_0__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3352:1: ( rule__AttrClassConfig__Group_3_1_0__0__Impl rule__AttrClassConfig__Group_3_1_0__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3353:2: rule__AttrClassConfig__Group_3_1_0__0__Impl rule__AttrClassConfig__Group_3_1_0__1
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__0__Impl_in_rule__AttrClassConfig__Group_3_1_0__05240);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__0__Impl_in_rule__AttrClassConfig__Group_3_1_0__06725);
rule__AttrClassConfig__Group_3_1_0__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__1_in_rule__AttrClassConfig__Group_3_1_0__05243);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__1_in_rule__AttrClassConfig__Group_3_1_0__06728);
rule__AttrClassConfig__Group_3_1_0__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -6999,21 +9583,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_0__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2615:1: rule__AttrClassConfig__Group_3_1_0__0__Impl : ( 'min' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3360:1: rule__AttrClassConfig__Group_3_1_0__0__Impl : ( 'min' ) ;
public final void rule__AttrClassConfig__Group_3_1_0__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2619:1: ( ( 'min' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2620:1: ( 'min' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3364:1: ( ( 'min' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3365:1: ( 'min' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2620:1: ( 'min' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2621:1: 'min'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3365:1: ( 'min' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3366:1: 'min'
{
- before(grammarAccess.getAttrClassConfigAccess().getMinKeyword_3_1_0_0());
- match(input,28,FOLLOW_28_in_rule__AttrClassConfig__Group_3_1_0__0__Impl5271);
- after(grammarAccess.getAttrClassConfigAccess().getMinKeyword_3_1_0_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getMinKeyword_3_1_0_0());
+ }
+ match(input,36,FOLLOW_36_in_rule__AttrClassConfig__Group_3_1_0__0__Impl6756); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getMinKeyword_3_1_0_0());
+ }
}
@@ -7036,25 +9624,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_0__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2634:1: rule__AttrClassConfig__Group_3_1_0__1 : rule__AttrClassConfig__Group_3_1_0__1__Impl rule__AttrClassConfig__Group_3_1_0__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3379:1: rule__AttrClassConfig__Group_3_1_0__1 : rule__AttrClassConfig__Group_3_1_0__1__Impl rule__AttrClassConfig__Group_3_1_0__2 ;
public final void rule__AttrClassConfig__Group_3_1_0__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2638:1: ( rule__AttrClassConfig__Group_3_1_0__1__Impl rule__AttrClassConfig__Group_3_1_0__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2639:2: rule__AttrClassConfig__Group_3_1_0__1__Impl rule__AttrClassConfig__Group_3_1_0__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3383:1: ( rule__AttrClassConfig__Group_3_1_0__1__Impl rule__AttrClassConfig__Group_3_1_0__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3384:2: rule__AttrClassConfig__Group_3_1_0__1__Impl rule__AttrClassConfig__Group_3_1_0__2
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__1__Impl_in_rule__AttrClassConfig__Group_3_1_0__15302);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__1__Impl_in_rule__AttrClassConfig__Group_3_1_0__16787);
rule__AttrClassConfig__Group_3_1_0__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__2_in_rule__AttrClassConfig__Group_3_1_0__15305);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__2_in_rule__AttrClassConfig__Group_3_1_0__16790);
rule__AttrClassConfig__Group_3_1_0__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7074,21 +9662,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_0__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2646:1: rule__AttrClassConfig__Group_3_1_0__1__Impl : ( '=' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3391:1: rule__AttrClassConfig__Group_3_1_0__1__Impl : ( '=' ) ;
public final void rule__AttrClassConfig__Group_3_1_0__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2650:1: ( ( '=' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2651:1: ( '=' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3395:1: ( ( '=' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3396:1: ( '=' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2651:1: ( '=' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2652:1: '='
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3396:1: ( '=' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3397:1: '='
{
- before(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_0_1());
- match(input,27,FOLLOW_27_in_rule__AttrClassConfig__Group_3_1_0__1__Impl5333);
- after(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_0_1());
+ }
+ match(input,35,FOLLOW_35_in_rule__AttrClassConfig__Group_3_1_0__1__Impl6818); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_0_1());
+ }
}
@@ -7111,20 +9703,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_0__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2665:1: rule__AttrClassConfig__Group_3_1_0__2 : rule__AttrClassConfig__Group_3_1_0__2__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3410:1: rule__AttrClassConfig__Group_3_1_0__2 : rule__AttrClassConfig__Group_3_1_0__2__Impl ;
public final void rule__AttrClassConfig__Group_3_1_0__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2669:1: ( rule__AttrClassConfig__Group_3_1_0__2__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2670:2: rule__AttrClassConfig__Group_3_1_0__2__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3414:1: ( rule__AttrClassConfig__Group_3_1_0__2__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3415:2: rule__AttrClassConfig__Group_3_1_0__2__Impl
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__2__Impl_in_rule__AttrClassConfig__Group_3_1_0__25364);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__2__Impl_in_rule__AttrClassConfig__Group_3_1_0__26849);
rule__AttrClassConfig__Group_3_1_0__2__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7144,31 +9736,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_0__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2676:1: rule__AttrClassConfig__Group_3_1_0__2__Impl : ( ( rule__AttrClassConfig__MinAssignment_3_1_0_2 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3421:1: rule__AttrClassConfig__Group_3_1_0__2__Impl : ( ( rule__AttrClassConfig__MinAssignment_3_1_0_2 ) ) ;
public final void rule__AttrClassConfig__Group_3_1_0__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2680:1: ( ( ( rule__AttrClassConfig__MinAssignment_3_1_0_2 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2681:1: ( ( rule__AttrClassConfig__MinAssignment_3_1_0_2 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3425:1: ( ( ( rule__AttrClassConfig__MinAssignment_3_1_0_2 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3426:1: ( ( rule__AttrClassConfig__MinAssignment_3_1_0_2 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2681:1: ( ( rule__AttrClassConfig__MinAssignment_3_1_0_2 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2682:1: ( rule__AttrClassConfig__MinAssignment_3_1_0_2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3426:1: ( ( rule__AttrClassConfig__MinAssignment_3_1_0_2 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3427:1: ( rule__AttrClassConfig__MinAssignment_3_1_0_2 )
{
- before(grammarAccess.getAttrClassConfigAccess().getMinAssignment_3_1_0_2());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2683:1: ( rule__AttrClassConfig__MinAssignment_3_1_0_2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2683:2: rule__AttrClassConfig__MinAssignment_3_1_0_2
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getMinAssignment_3_1_0_2());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3428:1: ( rule__AttrClassConfig__MinAssignment_3_1_0_2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3428:2: rule__AttrClassConfig__MinAssignment_3_1_0_2
{
- pushFollow(FOLLOW_rule__AttrClassConfig__MinAssignment_3_1_0_2_in_rule__AttrClassConfig__Group_3_1_0__2__Impl5391);
+ pushFollow(FOLLOW_rule__AttrClassConfig__MinAssignment_3_1_0_2_in_rule__AttrClassConfig__Group_3_1_0__2__Impl6876);
rule__AttrClassConfig__MinAssignment_3_1_0_2();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrClassConfigAccess().getMinAssignment_3_1_0_2());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getMinAssignment_3_1_0_2());
+ }
}
@@ -7191,25 +9787,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_1__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2699:1: rule__AttrClassConfig__Group_3_1_1__0 : rule__AttrClassConfig__Group_3_1_1__0__Impl rule__AttrClassConfig__Group_3_1_1__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3444:1: rule__AttrClassConfig__Group_3_1_1__0 : rule__AttrClassConfig__Group_3_1_1__0__Impl rule__AttrClassConfig__Group_3_1_1__1 ;
public final void rule__AttrClassConfig__Group_3_1_1__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2703:1: ( rule__AttrClassConfig__Group_3_1_1__0__Impl rule__AttrClassConfig__Group_3_1_1__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2704:2: rule__AttrClassConfig__Group_3_1_1__0__Impl rule__AttrClassConfig__Group_3_1_1__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3448:1: ( rule__AttrClassConfig__Group_3_1_1__0__Impl rule__AttrClassConfig__Group_3_1_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3449:2: rule__AttrClassConfig__Group_3_1_1__0__Impl rule__AttrClassConfig__Group_3_1_1__1
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__0__Impl_in_rule__AttrClassConfig__Group_3_1_1__05427);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__0__Impl_in_rule__AttrClassConfig__Group_3_1_1__06912);
rule__AttrClassConfig__Group_3_1_1__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__1_in_rule__AttrClassConfig__Group_3_1_1__05430);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__1_in_rule__AttrClassConfig__Group_3_1_1__06915);
rule__AttrClassConfig__Group_3_1_1__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7229,21 +9825,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_1__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2711:1: rule__AttrClassConfig__Group_3_1_1__0__Impl : ( 'max' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3456:1: rule__AttrClassConfig__Group_3_1_1__0__Impl : ( 'max' ) ;
public final void rule__AttrClassConfig__Group_3_1_1__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2715:1: ( ( 'max' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2716:1: ( 'max' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3460:1: ( ( 'max' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3461:1: ( 'max' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2716:1: ( 'max' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2717:1: 'max'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3461:1: ( 'max' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3462:1: 'max'
{
- before(grammarAccess.getAttrClassConfigAccess().getMaxKeyword_3_1_1_0());
- match(input,29,FOLLOW_29_in_rule__AttrClassConfig__Group_3_1_1__0__Impl5458);
- after(grammarAccess.getAttrClassConfigAccess().getMaxKeyword_3_1_1_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getMaxKeyword_3_1_1_0());
+ }
+ match(input,37,FOLLOW_37_in_rule__AttrClassConfig__Group_3_1_1__0__Impl6943); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getMaxKeyword_3_1_1_0());
+ }
}
@@ -7266,25 +9866,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_1__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2730:1: rule__AttrClassConfig__Group_3_1_1__1 : rule__AttrClassConfig__Group_3_1_1__1__Impl rule__AttrClassConfig__Group_3_1_1__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3475:1: rule__AttrClassConfig__Group_3_1_1__1 : rule__AttrClassConfig__Group_3_1_1__1__Impl rule__AttrClassConfig__Group_3_1_1__2 ;
public final void rule__AttrClassConfig__Group_3_1_1__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2734:1: ( rule__AttrClassConfig__Group_3_1_1__1__Impl rule__AttrClassConfig__Group_3_1_1__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2735:2: rule__AttrClassConfig__Group_3_1_1__1__Impl rule__AttrClassConfig__Group_3_1_1__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3479:1: ( rule__AttrClassConfig__Group_3_1_1__1__Impl rule__AttrClassConfig__Group_3_1_1__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3480:2: rule__AttrClassConfig__Group_3_1_1__1__Impl rule__AttrClassConfig__Group_3_1_1__2
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__1__Impl_in_rule__AttrClassConfig__Group_3_1_1__15489);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__1__Impl_in_rule__AttrClassConfig__Group_3_1_1__16974);
rule__AttrClassConfig__Group_3_1_1__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__2_in_rule__AttrClassConfig__Group_3_1_1__15492);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__2_in_rule__AttrClassConfig__Group_3_1_1__16977);
rule__AttrClassConfig__Group_3_1_1__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7304,21 +9904,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_1__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2742:1: rule__AttrClassConfig__Group_3_1_1__1__Impl : ( '=' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3487:1: rule__AttrClassConfig__Group_3_1_1__1__Impl : ( '=' ) ;
public final void rule__AttrClassConfig__Group_3_1_1__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2746:1: ( ( '=' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2747:1: ( '=' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3491:1: ( ( '=' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3492:1: ( '=' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2747:1: ( '=' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2748:1: '='
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3492:1: ( '=' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3493:1: '='
{
- before(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_1_1());
- match(input,27,FOLLOW_27_in_rule__AttrClassConfig__Group_3_1_1__1__Impl5520);
- after(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_1_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_1_1());
+ }
+ match(input,35,FOLLOW_35_in_rule__AttrClassConfig__Group_3_1_1__1__Impl7005); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_1_1());
+ }
}
@@ -7341,20 +9945,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_1__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2761:1: rule__AttrClassConfig__Group_3_1_1__2 : rule__AttrClassConfig__Group_3_1_1__2__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3506:1: rule__AttrClassConfig__Group_3_1_1__2 : rule__AttrClassConfig__Group_3_1_1__2__Impl ;
public final void rule__AttrClassConfig__Group_3_1_1__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2765:1: ( rule__AttrClassConfig__Group_3_1_1__2__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2766:2: rule__AttrClassConfig__Group_3_1_1__2__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3510:1: ( rule__AttrClassConfig__Group_3_1_1__2__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3511:2: rule__AttrClassConfig__Group_3_1_1__2__Impl
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__2__Impl_in_rule__AttrClassConfig__Group_3_1_1__25551);
+ pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__2__Impl_in_rule__AttrClassConfig__Group_3_1_1__27036);
rule__AttrClassConfig__Group_3_1_1__2__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7374,31 +9978,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__Group_3_1_1__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2772:1: rule__AttrClassConfig__Group_3_1_1__2__Impl : ( ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3517:1: rule__AttrClassConfig__Group_3_1_1__2__Impl : ( ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 ) ) ;
public final void rule__AttrClassConfig__Group_3_1_1__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2776:1: ( ( ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2777:1: ( ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3521:1: ( ( ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3522:1: ( ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2777:1: ( ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2778:1: ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3522:1: ( ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3523:1: ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 )
{
- before(grammarAccess.getAttrClassConfigAccess().getMaxAssignment_3_1_1_2());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2779:1: ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2779:2: rule__AttrClassConfig__MaxAssignment_3_1_1_2
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getMaxAssignment_3_1_1_2());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3524:1: ( rule__AttrClassConfig__MaxAssignment_3_1_1_2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3524:2: rule__AttrClassConfig__MaxAssignment_3_1_1_2
{
- pushFollow(FOLLOW_rule__AttrClassConfig__MaxAssignment_3_1_1_2_in_rule__AttrClassConfig__Group_3_1_1__2__Impl5578);
+ pushFollow(FOLLOW_rule__AttrClassConfig__MaxAssignment_3_1_1_2_in_rule__AttrClassConfig__Group_3_1_1__2__Impl7063);
rule__AttrClassConfig__MaxAssignment_3_1_1_2();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrClassConfigAccess().getMaxAssignment_3_1_1_2());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getMaxAssignment_3_1_1_2());
+ }
}
@@ -7421,25 +10029,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2795:1: rule__AttrInstanceConfig__Group__0 : rule__AttrInstanceConfig__Group__0__Impl rule__AttrInstanceConfig__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3540:1: rule__AttrInstanceConfig__Group__0 : rule__AttrInstanceConfig__Group__0__Impl rule__AttrInstanceConfig__Group__1 ;
public final void rule__AttrInstanceConfig__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2799:1: ( rule__AttrInstanceConfig__Group__0__Impl rule__AttrInstanceConfig__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2800:2: rule__AttrInstanceConfig__Group__0__Impl rule__AttrInstanceConfig__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3544:1: ( rule__AttrInstanceConfig__Group__0__Impl rule__AttrInstanceConfig__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3545:2: rule__AttrInstanceConfig__Group__0__Impl rule__AttrInstanceConfig__Group__1
{
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__0__Impl_in_rule__AttrInstanceConfig__Group__05614);
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__0__Impl_in_rule__AttrInstanceConfig__Group__07099);
rule__AttrInstanceConfig__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__1_in_rule__AttrInstanceConfig__Group__05617);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__1_in_rule__AttrInstanceConfig__Group__07102);
rule__AttrInstanceConfig__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7459,21 +10067,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2807:1: rule__AttrInstanceConfig__Group__0__Impl : ( 'Attr' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3552:1: rule__AttrInstanceConfig__Group__0__Impl : ( 'Attr' ) ;
public final void rule__AttrInstanceConfig__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2811:1: ( ( 'Attr' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2812:1: ( 'Attr' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3556:1: ( ( 'Attr' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3557:1: ( 'Attr' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2812:1: ( 'Attr' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2813:1: 'Attr'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3557:1: ( 'Attr' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3558:1: 'Attr'
{
- before(grammarAccess.getAttrInstanceConfigAccess().getAttrKeyword_0());
- match(input,26,FOLLOW_26_in_rule__AttrInstanceConfig__Group__0__Impl5645);
- after(grammarAccess.getAttrInstanceConfigAccess().getAttrKeyword_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getAttrKeyword_0());
+ }
+ match(input,34,FOLLOW_34_in_rule__AttrInstanceConfig__Group__0__Impl7130); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getAttrKeyword_0());
+ }
}
@@ -7496,25 +10108,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2826:1: rule__AttrInstanceConfig__Group__1 : rule__AttrInstanceConfig__Group__1__Impl rule__AttrInstanceConfig__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3571:1: rule__AttrInstanceConfig__Group__1 : rule__AttrInstanceConfig__Group__1__Impl rule__AttrInstanceConfig__Group__2 ;
public final void rule__AttrInstanceConfig__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2830:1: ( rule__AttrInstanceConfig__Group__1__Impl rule__AttrInstanceConfig__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2831:2: rule__AttrInstanceConfig__Group__1__Impl rule__AttrInstanceConfig__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3575:1: ( rule__AttrInstanceConfig__Group__1__Impl rule__AttrInstanceConfig__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3576:2: rule__AttrInstanceConfig__Group__1__Impl rule__AttrInstanceConfig__Group__2
{
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__1__Impl_in_rule__AttrInstanceConfig__Group__15676);
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__1__Impl_in_rule__AttrInstanceConfig__Group__17161);
rule__AttrInstanceConfig__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__2_in_rule__AttrInstanceConfig__Group__15679);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__2_in_rule__AttrInstanceConfig__Group__17164);
rule__AttrInstanceConfig__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7534,31 +10146,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2838:1: rule__AttrInstanceConfig__Group__1__Impl : ( ( rule__AttrInstanceConfig__AttributeAssignment_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3583:1: rule__AttrInstanceConfig__Group__1__Impl : ( ( rule__AttrInstanceConfig__AttributeAssignment_1 ) ) ;
public final void rule__AttrInstanceConfig__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2842:1: ( ( ( rule__AttrInstanceConfig__AttributeAssignment_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2843:1: ( ( rule__AttrInstanceConfig__AttributeAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3587:1: ( ( ( rule__AttrInstanceConfig__AttributeAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3588:1: ( ( rule__AttrInstanceConfig__AttributeAssignment_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2843:1: ( ( rule__AttrInstanceConfig__AttributeAssignment_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2844:1: ( rule__AttrInstanceConfig__AttributeAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3588:1: ( ( rule__AttrInstanceConfig__AttributeAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3589:1: ( rule__AttrInstanceConfig__AttributeAssignment_1 )
{
- before(grammarAccess.getAttrInstanceConfigAccess().getAttributeAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2845:1: ( rule__AttrInstanceConfig__AttributeAssignment_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2845:2: rule__AttrInstanceConfig__AttributeAssignment_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getAttributeAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3590:1: ( rule__AttrInstanceConfig__AttributeAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3590:2: rule__AttrInstanceConfig__AttributeAssignment_1
{
- pushFollow(FOLLOW_rule__AttrInstanceConfig__AttributeAssignment_1_in_rule__AttrInstanceConfig__Group__1__Impl5706);
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__AttributeAssignment_1_in_rule__AttrInstanceConfig__Group__1__Impl7191);
rule__AttrInstanceConfig__AttributeAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrInstanceConfigAccess().getAttributeAssignment_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getAttributeAssignment_1());
+ }
}
@@ -7581,20 +10197,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2855:1: rule__AttrInstanceConfig__Group__2 : rule__AttrInstanceConfig__Group__2__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3600:1: rule__AttrInstanceConfig__Group__2 : rule__AttrInstanceConfig__Group__2__Impl rule__AttrInstanceConfig__Group__3 ;
public final void rule__AttrInstanceConfig__Group__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2859:1: ( rule__AttrInstanceConfig__Group__2__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2860:2: rule__AttrInstanceConfig__Group__2__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3604:1: ( rule__AttrInstanceConfig__Group__2__Impl rule__AttrInstanceConfig__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3605:2: rule__AttrInstanceConfig__Group__2__Impl rule__AttrInstanceConfig__Group__3
{
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__2__Impl_in_rule__AttrInstanceConfig__Group__25736);
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__2__Impl_in_rule__AttrInstanceConfig__Group__27221);
rule__AttrInstanceConfig__Group__2__Impl();
state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__3_in_rule__AttrInstanceConfig__Group__27224);
+ rule__AttrInstanceConfig__Group__3();
+ state._fsp--;
+ if (state.failed) return ;
}
@@ -7614,42 +10235,46 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2866:1: rule__AttrInstanceConfig__Group__2__Impl : ( ( rule__AttrInstanceConfig__Group_2__0 )? ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3612:1: rule__AttrInstanceConfig__Group__2__Impl : ( ( rule__AttrInstanceConfig__Group_2__0 )? ) ;
public final void rule__AttrInstanceConfig__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2870:1: ( ( ( rule__AttrInstanceConfig__Group_2__0 )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2871:1: ( ( rule__AttrInstanceConfig__Group_2__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3616:1: ( ( ( rule__AttrInstanceConfig__Group_2__0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3617:1: ( ( rule__AttrInstanceConfig__Group_2__0 )? )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2871:1: ( ( rule__AttrInstanceConfig__Group_2__0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2872:1: ( rule__AttrInstanceConfig__Group_2__0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3617:1: ( ( rule__AttrInstanceConfig__Group_2__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3618:1: ( rule__AttrInstanceConfig__Group_2__0 )?
{
- before(grammarAccess.getAttrInstanceConfigAccess().getGroup_2());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2873:1: ( rule__AttrInstanceConfig__Group_2__0 )?
- int alt23=2;
- int LA23_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getGroup_2());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3619:1: ( rule__AttrInstanceConfig__Group_2__0 )?
+ int alt25=2;
+ int LA25_0 = input.LA(1);
- if ( (LA23_0==27) ) {
- alt23=1;
+ if ( (LA25_0==35) ) {
+ alt25=1;
}
- switch (alt23) {
+ switch (alt25) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2873:2: rule__AttrInstanceConfig__Group_2__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3619:2: rule__AttrInstanceConfig__Group_2__0
{
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_2__0_in_rule__AttrInstanceConfig__Group__2__Impl5763);
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_2__0_in_rule__AttrInstanceConfig__Group__2__Impl7251);
rule__AttrInstanceConfig__Group_2__0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
}
- after(grammarAccess.getAttrInstanceConfigAccess().getGroup_2());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getGroup_2());
+ }
}
@@ -7671,26 +10296,121 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__AttrInstanceConfig__Group__2__Impl"
+ // $ANTLR start "rule__AttrInstanceConfig__Group__3"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3629:1: rule__AttrInstanceConfig__Group__3 : rule__AttrInstanceConfig__Group__3__Impl ;
+ public final void rule__AttrInstanceConfig__Group__3() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3633:1: ( rule__AttrInstanceConfig__Group__3__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3634:2: rule__AttrInstanceConfig__Group__3__Impl
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group__3__Impl_in_rule__AttrInstanceConfig__Group__37282);
+ rule__AttrInstanceConfig__Group__3__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group__3"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group__3__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3640:1: rule__AttrInstanceConfig__Group__3__Impl : ( ( rule__AttrInstanceConfig__Group_3__0 )? ) ;
+ public final void rule__AttrInstanceConfig__Group__3__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3644:1: ( ( ( rule__AttrInstanceConfig__Group_3__0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3645:1: ( ( rule__AttrInstanceConfig__Group_3__0 )? )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3645:1: ( ( rule__AttrInstanceConfig__Group_3__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3646:1: ( rule__AttrInstanceConfig__Group_3__0 )?
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getGroup_3());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3647:1: ( rule__AttrInstanceConfig__Group_3__0 )?
+ int alt26=2;
+ int LA26_0 = input.LA(1);
+
+ if ( (LA26_0==19) ) {
+ alt26=1;
+ }
+ switch (alt26) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3647:2: rule__AttrInstanceConfig__Group_3__0
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3__0_in_rule__AttrInstanceConfig__Group__3__Impl7309);
+ rule__AttrInstanceConfig__Group_3__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getGroup_3());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group__3__Impl"
+
+
// $ANTLR start "rule__AttrInstanceConfig__Group_2__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2889:1: rule__AttrInstanceConfig__Group_2__0 : rule__AttrInstanceConfig__Group_2__0__Impl rule__AttrInstanceConfig__Group_2__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3665:1: rule__AttrInstanceConfig__Group_2__0 : rule__AttrInstanceConfig__Group_2__0__Impl rule__AttrInstanceConfig__Group_2__1 ;
public final void rule__AttrInstanceConfig__Group_2__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2893:1: ( rule__AttrInstanceConfig__Group_2__0__Impl rule__AttrInstanceConfig__Group_2__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2894:2: rule__AttrInstanceConfig__Group_2__0__Impl rule__AttrInstanceConfig__Group_2__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3669:1: ( rule__AttrInstanceConfig__Group_2__0__Impl rule__AttrInstanceConfig__Group_2__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3670:2: rule__AttrInstanceConfig__Group_2__0__Impl rule__AttrInstanceConfig__Group_2__1
{
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_2__0__Impl_in_rule__AttrInstanceConfig__Group_2__05800);
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_2__0__Impl_in_rule__AttrInstanceConfig__Group_2__07348);
rule__AttrInstanceConfig__Group_2__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_2__1_in_rule__AttrInstanceConfig__Group_2__05803);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_2__1_in_rule__AttrInstanceConfig__Group_2__07351);
rule__AttrInstanceConfig__Group_2__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7710,21 +10430,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__Group_2__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2901:1: rule__AttrInstanceConfig__Group_2__0__Impl : ( '=' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3677:1: rule__AttrInstanceConfig__Group_2__0__Impl : ( '=' ) ;
public final void rule__AttrInstanceConfig__Group_2__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2905:1: ( ( '=' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2906:1: ( '=' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3681:1: ( ( '=' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3682:1: ( '=' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2906:1: ( '=' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2907:1: '='
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3682:1: ( '=' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3683:1: '='
{
- before(grammarAccess.getAttrInstanceConfigAccess().getEqualsSignKeyword_2_0());
- match(input,27,FOLLOW_27_in_rule__AttrInstanceConfig__Group_2__0__Impl5831);
- after(grammarAccess.getAttrInstanceConfigAccess().getEqualsSignKeyword_2_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getEqualsSignKeyword_2_0());
+ }
+ match(input,35,FOLLOW_35_in_rule__AttrInstanceConfig__Group_2__0__Impl7379); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getEqualsSignKeyword_2_0());
+ }
}
@@ -7747,20 +10471,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__Group_2__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2920:1: rule__AttrInstanceConfig__Group_2__1 : rule__AttrInstanceConfig__Group_2__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3696:1: rule__AttrInstanceConfig__Group_2__1 : rule__AttrInstanceConfig__Group_2__1__Impl ;
public final void rule__AttrInstanceConfig__Group_2__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2924:1: ( rule__AttrInstanceConfig__Group_2__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2925:2: rule__AttrInstanceConfig__Group_2__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3700:1: ( rule__AttrInstanceConfig__Group_2__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3701:2: rule__AttrInstanceConfig__Group_2__1__Impl
{
- pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_2__1__Impl_in_rule__AttrInstanceConfig__Group_2__15862);
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_2__1__Impl_in_rule__AttrInstanceConfig__Group_2__17410);
rule__AttrInstanceConfig__Group_2__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7780,31 +10504,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__Group_2__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2931:1: rule__AttrInstanceConfig__Group_2__1__Impl : ( ( rule__AttrInstanceConfig__ValueAssignment_2_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3707:1: rule__AttrInstanceConfig__Group_2__1__Impl : ( ( rule__AttrInstanceConfig__ValueAssignment_2_1 ) ) ;
public final void rule__AttrInstanceConfig__Group_2__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2935:1: ( ( ( rule__AttrInstanceConfig__ValueAssignment_2_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2936:1: ( ( rule__AttrInstanceConfig__ValueAssignment_2_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3711:1: ( ( ( rule__AttrInstanceConfig__ValueAssignment_2_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3712:1: ( ( rule__AttrInstanceConfig__ValueAssignment_2_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2936:1: ( ( rule__AttrInstanceConfig__ValueAssignment_2_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2937:1: ( rule__AttrInstanceConfig__ValueAssignment_2_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3712:1: ( ( rule__AttrInstanceConfig__ValueAssignment_2_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3713:1: ( rule__AttrInstanceConfig__ValueAssignment_2_1 )
{
- before(grammarAccess.getAttrInstanceConfigAccess().getValueAssignment_2_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2938:1: ( rule__AttrInstanceConfig__ValueAssignment_2_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2938:2: rule__AttrInstanceConfig__ValueAssignment_2_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getValueAssignment_2_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3714:1: ( rule__AttrInstanceConfig__ValueAssignment_2_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3714:2: rule__AttrInstanceConfig__ValueAssignment_2_1
{
- pushFollow(FOLLOW_rule__AttrInstanceConfig__ValueAssignment_2_1_in_rule__AttrInstanceConfig__Group_2__1__Impl5889);
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__ValueAssignment_2_1_in_rule__AttrInstanceConfig__Group_2__1__Impl7437);
rule__AttrInstanceConfig__ValueAssignment_2_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrInstanceConfigAccess().getValueAssignment_2_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getValueAssignment_2_1());
+ }
}
@@ -7826,26 +10554,643 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__AttrInstanceConfig__Group_2__1__Impl"
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3728:1: rule__AttrInstanceConfig__Group_3__0 : rule__AttrInstanceConfig__Group_3__0__Impl rule__AttrInstanceConfig__Group_3__1 ;
+ public final void rule__AttrInstanceConfig__Group_3__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3732:1: ( rule__AttrInstanceConfig__Group_3__0__Impl rule__AttrInstanceConfig__Group_3__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3733:2: rule__AttrInstanceConfig__Group_3__0__Impl rule__AttrInstanceConfig__Group_3__1
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3__0__Impl_in_rule__AttrInstanceConfig__Group_3__07471);
+ rule__AttrInstanceConfig__Group_3__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3__1_in_rule__AttrInstanceConfig__Group_3__07474);
+ rule__AttrInstanceConfig__Group_3__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3__0"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3740:1: rule__AttrInstanceConfig__Group_3__0__Impl : ( '{' ) ;
+ public final void rule__AttrInstanceConfig__Group_3__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3744:1: ( ( '{' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3745:1: ( '{' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3745:1: ( '{' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3746:1: '{'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getLeftCurlyBracketKeyword_3_0());
+ }
+ match(input,19,FOLLOW_19_in_rule__AttrInstanceConfig__Group_3__0__Impl7502); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getLeftCurlyBracketKeyword_3_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3__0__Impl"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3759:1: rule__AttrInstanceConfig__Group_3__1 : rule__AttrInstanceConfig__Group_3__1__Impl rule__AttrInstanceConfig__Group_3__2 ;
+ public final void rule__AttrInstanceConfig__Group_3__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3763:1: ( rule__AttrInstanceConfig__Group_3__1__Impl rule__AttrInstanceConfig__Group_3__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3764:2: rule__AttrInstanceConfig__Group_3__1__Impl rule__AttrInstanceConfig__Group_3__2
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3__1__Impl_in_rule__AttrInstanceConfig__Group_3__17533);
+ rule__AttrInstanceConfig__Group_3__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3__2_in_rule__AttrInstanceConfig__Group_3__17536);
+ rule__AttrInstanceConfig__Group_3__2();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3__1"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3771:1: rule__AttrInstanceConfig__Group_3__1__Impl : ( ( rule__AttrInstanceConfig__Group_3_1__0 ) ) ;
+ public final void rule__AttrInstanceConfig__Group_3__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3775:1: ( ( ( rule__AttrInstanceConfig__Group_3_1__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3776:1: ( ( rule__AttrInstanceConfig__Group_3_1__0 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3776:1: ( ( rule__AttrInstanceConfig__Group_3_1__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3777:1: ( rule__AttrInstanceConfig__Group_3_1__0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3778:1: ( rule__AttrInstanceConfig__Group_3_1__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3778:2: rule__AttrInstanceConfig__Group_3_1__0
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3_1__0_in_rule__AttrInstanceConfig__Group_3__1__Impl7563);
+ rule__AttrInstanceConfig__Group_3_1__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3__1__Impl"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3__2"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3788:1: rule__AttrInstanceConfig__Group_3__2 : rule__AttrInstanceConfig__Group_3__2__Impl ;
+ public final void rule__AttrInstanceConfig__Group_3__2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3792:1: ( rule__AttrInstanceConfig__Group_3__2__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3793:2: rule__AttrInstanceConfig__Group_3__2__Impl
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3__2__Impl_in_rule__AttrInstanceConfig__Group_3__27593);
+ rule__AttrInstanceConfig__Group_3__2__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3__2"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3__2__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3799:1: rule__AttrInstanceConfig__Group_3__2__Impl : ( '}' ) ;
+ public final void rule__AttrInstanceConfig__Group_3__2__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3803:1: ( ( '}' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3804:1: ( '}' )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3804:1: ( '}' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3805:1: '}'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getRightCurlyBracketKeyword_3_2());
+ }
+ match(input,20,FOLLOW_20_in_rule__AttrInstanceConfig__Group_3__2__Impl7621); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getRightCurlyBracketKeyword_3_2());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3__2__Impl"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3_1__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3824:1: rule__AttrInstanceConfig__Group_3_1__0 : rule__AttrInstanceConfig__Group_3_1__0__Impl rule__AttrInstanceConfig__Group_3_1__1 ;
+ public final void rule__AttrInstanceConfig__Group_3_1__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3828:1: ( rule__AttrInstanceConfig__Group_3_1__0__Impl rule__AttrInstanceConfig__Group_3_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3829:2: rule__AttrInstanceConfig__Group_3_1__0__Impl rule__AttrInstanceConfig__Group_3_1__1
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3_1__0__Impl_in_rule__AttrInstanceConfig__Group_3_1__07658);
+ rule__AttrInstanceConfig__Group_3_1__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3_1__1_in_rule__AttrInstanceConfig__Group_3_1__07661);
+ rule__AttrInstanceConfig__Group_3_1__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3_1__0"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3_1__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3836:1: rule__AttrInstanceConfig__Group_3_1__0__Impl : ( ( rule__AttrInstanceConfig__Group_3_1_0__0 )? ) ;
+ public final void rule__AttrInstanceConfig__Group_3_1__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3840:1: ( ( ( rule__AttrInstanceConfig__Group_3_1_0__0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3841:1: ( ( rule__AttrInstanceConfig__Group_3_1_0__0 )? )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3841:1: ( ( rule__AttrInstanceConfig__Group_3_1_0__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3842:1: ( rule__AttrInstanceConfig__Group_3_1_0__0 )?
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3843:1: ( rule__AttrInstanceConfig__Group_3_1_0__0 )?
+ int alt27=2;
+ int LA27_0 = input.LA(1);
+
+ if ( (LA27_0==21) ) {
+ alt27=1;
+ }
+ switch (alt27) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3843:2: rule__AttrInstanceConfig__Group_3_1_0__0
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3_1_0__0_in_rule__AttrInstanceConfig__Group_3_1__0__Impl7688);
+ rule__AttrInstanceConfig__Group_3_1_0__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getGroup_3_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3_1__0__Impl"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3_1__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3853:1: rule__AttrInstanceConfig__Group_3_1__1 : rule__AttrInstanceConfig__Group_3_1__1__Impl ;
+ public final void rule__AttrInstanceConfig__Group_3_1__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3857:1: ( rule__AttrInstanceConfig__Group_3_1__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3858:2: rule__AttrInstanceConfig__Group_3_1__1__Impl
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3_1__1__Impl_in_rule__AttrInstanceConfig__Group_3_1__17719);
+ rule__AttrInstanceConfig__Group_3_1__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3_1__1"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3_1__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3864:1: rule__AttrInstanceConfig__Group_3_1__1__Impl : ( ( rule__AttrInstanceConfig__AttributesAssignment_3_1_1 )* ) ;
+ public final void rule__AttrInstanceConfig__Group_3_1__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3868:1: ( ( ( rule__AttrInstanceConfig__AttributesAssignment_3_1_1 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3869:1: ( ( rule__AttrInstanceConfig__AttributesAssignment_3_1_1 )* )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3869:1: ( ( rule__AttrInstanceConfig__AttributesAssignment_3_1_1 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3870:1: ( rule__AttrInstanceConfig__AttributesAssignment_3_1_1 )*
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getAttributesAssignment_3_1_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3871:1: ( rule__AttrInstanceConfig__AttributesAssignment_3_1_1 )*
+ loop28:
+ do {
+ int alt28=2;
+ int LA28_0 = input.LA(1);
+
+ if ( (LA28_0==34) ) {
+ alt28=1;
+ }
+
+
+ switch (alt28) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3871:2: rule__AttrInstanceConfig__AttributesAssignment_3_1_1
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__AttributesAssignment_3_1_1_in_rule__AttrInstanceConfig__Group_3_1__1__Impl7746);
+ rule__AttrInstanceConfig__AttributesAssignment_3_1_1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+
+ default :
+ break loop28;
+ }
+ } while (true);
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getAttributesAssignment_3_1_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3_1__1__Impl"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3_1_0__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3885:1: rule__AttrInstanceConfig__Group_3_1_0__0 : rule__AttrInstanceConfig__Group_3_1_0__0__Impl rule__AttrInstanceConfig__Group_3_1_0__1 ;
+ public final void rule__AttrInstanceConfig__Group_3_1_0__0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3889:1: ( rule__AttrInstanceConfig__Group_3_1_0__0__Impl rule__AttrInstanceConfig__Group_3_1_0__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3890:2: rule__AttrInstanceConfig__Group_3_1_0__0__Impl rule__AttrInstanceConfig__Group_3_1_0__1
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3_1_0__0__Impl_in_rule__AttrInstanceConfig__Group_3_1_0__07781);
+ rule__AttrInstanceConfig__Group_3_1_0__0__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3_1_0__1_in_rule__AttrInstanceConfig__Group_3_1_0__07784);
+ rule__AttrInstanceConfig__Group_3_1_0__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3_1_0__0"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3_1_0__0__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3897:1: rule__AttrInstanceConfig__Group_3_1_0__0__Impl : ( ( rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0 ) ) ;
+ public final void rule__AttrInstanceConfig__Group_3_1_0__0__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3901:1: ( ( ( rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3902:1: ( ( rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3902:1: ( ( rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3903:1: ( rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getDynConfigAssignment_3_1_0_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3904:1: ( rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3904:2: rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0_in_rule__AttrInstanceConfig__Group_3_1_0__0__Impl7811);
+ rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getDynConfigAssignment_3_1_0_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3_1_0__0__Impl"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3_1_0__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3914:1: rule__AttrInstanceConfig__Group_3_1_0__1 : rule__AttrInstanceConfig__Group_3_1_0__1__Impl ;
+ public final void rule__AttrInstanceConfig__Group_3_1_0__1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3918:1: ( rule__AttrInstanceConfig__Group_3_1_0__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3919:2: rule__AttrInstanceConfig__Group_3_1_0__1__Impl
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Group_3_1_0__1__Impl_in_rule__AttrInstanceConfig__Group_3_1_0__17841);
+ rule__AttrInstanceConfig__Group_3_1_0__1__Impl();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3_1_0__1"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__Group_3_1_0__1__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3925:1: rule__AttrInstanceConfig__Group_3_1_0__1__Impl : ( ( rule__AttrInstanceConfig__Alternatives_3_1_0_1 ) ) ;
+ public final void rule__AttrInstanceConfig__Group_3_1_0__1__Impl() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3929:1: ( ( ( rule__AttrInstanceConfig__Alternatives_3_1_0_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3930:1: ( ( rule__AttrInstanceConfig__Alternatives_3_1_0_1 ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3930:1: ( ( rule__AttrInstanceConfig__Alternatives_3_1_0_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3931:1: ( rule__AttrInstanceConfig__Alternatives_3_1_0_1 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getAlternatives_3_1_0_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3932:1: ( rule__AttrInstanceConfig__Alternatives_3_1_0_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3932:2: rule__AttrInstanceConfig__Alternatives_3_1_0_1
+ {
+ pushFollow(FOLLOW_rule__AttrInstanceConfig__Alternatives_3_1_0_1_in_rule__AttrInstanceConfig__Group_3_1_0__1__Impl7868);
+ rule__AttrInstanceConfig__Alternatives_3_1_0_1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getAlternatives_3_1_0_1());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__Group_3_1_0__1__Impl"
+
+
// $ANTLR start "rule__RefPath__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2952:1: rule__RefPath__Group__0 : rule__RefPath__Group__0__Impl rule__RefPath__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3946:1: rule__RefPath__Group__0 : rule__RefPath__Group__0__Impl rule__RefPath__Group__1 ;
public final void rule__RefPath__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2956:1: ( rule__RefPath__Group__0__Impl rule__RefPath__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2957:2: rule__RefPath__Group__0__Impl rule__RefPath__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3950:1: ( rule__RefPath__Group__0__Impl rule__RefPath__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3951:2: rule__RefPath__Group__0__Impl rule__RefPath__Group__1
{
- pushFollow(FOLLOW_rule__RefPath__Group__0__Impl_in_rule__RefPath__Group__05923);
+ pushFollow(FOLLOW_rule__RefPath__Group__0__Impl_in_rule__RefPath__Group__07902);
rule__RefPath__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__RefPath__Group__1_in_rule__RefPath__Group__05926);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__RefPath__Group__1_in_rule__RefPath__Group__07905);
rule__RefPath__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7865,31 +11210,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RefPath__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2964:1: rule__RefPath__Group__0__Impl : ( ( rule__RefPath__RefsAssignment_0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3958:1: rule__RefPath__Group__0__Impl : ( ( rule__RefPath__RefsAssignment_0 ) ) ;
public final void rule__RefPath__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2968:1: ( ( ( rule__RefPath__RefsAssignment_0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2969:1: ( ( rule__RefPath__RefsAssignment_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3962:1: ( ( ( rule__RefPath__RefsAssignment_0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3963:1: ( ( rule__RefPath__RefsAssignment_0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2969:1: ( ( rule__RefPath__RefsAssignment_0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2970:1: ( rule__RefPath__RefsAssignment_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3963:1: ( ( rule__RefPath__RefsAssignment_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3964:1: ( rule__RefPath__RefsAssignment_0 )
{
- before(grammarAccess.getRefPathAccess().getRefsAssignment_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2971:1: ( rule__RefPath__RefsAssignment_0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2971:2: rule__RefPath__RefsAssignment_0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRefPathAccess().getRefsAssignment_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3965:1: ( rule__RefPath__RefsAssignment_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3965:2: rule__RefPath__RefsAssignment_0
{
- pushFollow(FOLLOW_rule__RefPath__RefsAssignment_0_in_rule__RefPath__Group__0__Impl5953);
+ pushFollow(FOLLOW_rule__RefPath__RefsAssignment_0_in_rule__RefPath__Group__0__Impl7932);
rule__RefPath__RefsAssignment_0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getRefPathAccess().getRefsAssignment_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRefPathAccess().getRefsAssignment_0());
+ }
}
@@ -7912,20 +11261,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RefPath__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2981:1: rule__RefPath__Group__1 : rule__RefPath__Group__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3975:1: rule__RefPath__Group__1 : rule__RefPath__Group__1__Impl ;
public final void rule__RefPath__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2985:1: ( rule__RefPath__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2986:2: rule__RefPath__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3979:1: ( rule__RefPath__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3980:2: rule__RefPath__Group__1__Impl
{
- pushFollow(FOLLOW_rule__RefPath__Group__1__Impl_in_rule__RefPath__Group__15983);
+ pushFollow(FOLLOW_rule__RefPath__Group__1__Impl_in_rule__RefPath__Group__17962);
rule__RefPath__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -7945,49 +11294,53 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RefPath__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2992:1: rule__RefPath__Group__1__Impl : ( ( rule__RefPath__Group_1__0 )* ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3986:1: rule__RefPath__Group__1__Impl : ( ( rule__RefPath__Group_1__0 )* ) ;
public final void rule__RefPath__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2996:1: ( ( ( rule__RefPath__Group_1__0 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2997:1: ( ( rule__RefPath__Group_1__0 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3990:1: ( ( ( rule__RefPath__Group_1__0 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3991:1: ( ( rule__RefPath__Group_1__0 )* )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2997:1: ( ( rule__RefPath__Group_1__0 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2998:1: ( rule__RefPath__Group_1__0 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3991:1: ( ( rule__RefPath__Group_1__0 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3992:1: ( rule__RefPath__Group_1__0 )*
{
- before(grammarAccess.getRefPathAccess().getGroup_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2999:1: ( rule__RefPath__Group_1__0 )*
- loop24:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRefPathAccess().getGroup_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3993:1: ( rule__RefPath__Group_1__0 )*
+ loop29:
do {
- int alt24=2;
- int LA24_0 = input.LA(1);
+ int alt29=2;
+ int LA29_0 = input.LA(1);
- if ( (LA24_0==20) ) {
- alt24=1;
+ if ( (LA29_0==28) ) {
+ alt29=1;
}
- switch (alt24) {
+ switch (alt29) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:2999:2: rule__RefPath__Group_1__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3993:2: rule__RefPath__Group_1__0
{
- pushFollow(FOLLOW_rule__RefPath__Group_1__0_in_rule__RefPath__Group__1__Impl6010);
+ pushFollow(FOLLOW_rule__RefPath__Group_1__0_in_rule__RefPath__Group__1__Impl7989);
rule__RefPath__Group_1__0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
default :
- break loop24;
+ break loop29;
}
} while (true);
- after(grammarAccess.getRefPathAccess().getGroup_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRefPathAccess().getGroup_1());
+ }
}
@@ -8010,25 +11363,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RefPath__Group_1__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3013:1: rule__RefPath__Group_1__0 : rule__RefPath__Group_1__0__Impl rule__RefPath__Group_1__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4007:1: rule__RefPath__Group_1__0 : rule__RefPath__Group_1__0__Impl rule__RefPath__Group_1__1 ;
public final void rule__RefPath__Group_1__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3017:1: ( rule__RefPath__Group_1__0__Impl rule__RefPath__Group_1__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3018:2: rule__RefPath__Group_1__0__Impl rule__RefPath__Group_1__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4011:1: ( rule__RefPath__Group_1__0__Impl rule__RefPath__Group_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4012:2: rule__RefPath__Group_1__0__Impl rule__RefPath__Group_1__1
{
- pushFollow(FOLLOW_rule__RefPath__Group_1__0__Impl_in_rule__RefPath__Group_1__06045);
+ pushFollow(FOLLOW_rule__RefPath__Group_1__0__Impl_in_rule__RefPath__Group_1__08024);
rule__RefPath__Group_1__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__RefPath__Group_1__1_in_rule__RefPath__Group_1__06048);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__RefPath__Group_1__1_in_rule__RefPath__Group_1__08027);
rule__RefPath__Group_1__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8048,21 +11401,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RefPath__Group_1__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3025:1: rule__RefPath__Group_1__0__Impl : ( '/' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4019:1: rule__RefPath__Group_1__0__Impl : ( '/' ) ;
public final void rule__RefPath__Group_1__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3029:1: ( ( '/' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3030:1: ( '/' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4023:1: ( ( '/' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4024:1: ( '/' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3030:1: ( '/' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3031:1: '/'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4024:1: ( '/' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4025:1: '/'
{
- before(grammarAccess.getRefPathAccess().getSolidusKeyword_1_0());
- match(input,20,FOLLOW_20_in_rule__RefPath__Group_1__0__Impl6076);
- after(grammarAccess.getRefPathAccess().getSolidusKeyword_1_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRefPathAccess().getSolidusKeyword_1_0());
+ }
+ match(input,28,FOLLOW_28_in_rule__RefPath__Group_1__0__Impl8055); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRefPathAccess().getSolidusKeyword_1_0());
+ }
}
@@ -8085,20 +11442,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RefPath__Group_1__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3044:1: rule__RefPath__Group_1__1 : rule__RefPath__Group_1__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4038:1: rule__RefPath__Group_1__1 : rule__RefPath__Group_1__1__Impl ;
public final void rule__RefPath__Group_1__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3048:1: ( rule__RefPath__Group_1__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3049:2: rule__RefPath__Group_1__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4042:1: ( rule__RefPath__Group_1__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4043:2: rule__RefPath__Group_1__1__Impl
{
- pushFollow(FOLLOW_rule__RefPath__Group_1__1__Impl_in_rule__RefPath__Group_1__16107);
+ pushFollow(FOLLOW_rule__RefPath__Group_1__1__Impl_in_rule__RefPath__Group_1__18086);
rule__RefPath__Group_1__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8118,31 +11475,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RefPath__Group_1__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3055:1: rule__RefPath__Group_1__1__Impl : ( ( rule__RefPath__RefsAssignment_1_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4049:1: rule__RefPath__Group_1__1__Impl : ( ( rule__RefPath__RefsAssignment_1_1 ) ) ;
public final void rule__RefPath__Group_1__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3059:1: ( ( ( rule__RefPath__RefsAssignment_1_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3060:1: ( ( rule__RefPath__RefsAssignment_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4053:1: ( ( ( rule__RefPath__RefsAssignment_1_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4054:1: ( ( rule__RefPath__RefsAssignment_1_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3060:1: ( ( rule__RefPath__RefsAssignment_1_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3061:1: ( rule__RefPath__RefsAssignment_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4054:1: ( ( rule__RefPath__RefsAssignment_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4055:1: ( rule__RefPath__RefsAssignment_1_1 )
{
- before(grammarAccess.getRefPathAccess().getRefsAssignment_1_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3062:1: ( rule__RefPath__RefsAssignment_1_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3062:2: rule__RefPath__RefsAssignment_1_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRefPathAccess().getRefsAssignment_1_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4056:1: ( rule__RefPath__RefsAssignment_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4056:2: rule__RefPath__RefsAssignment_1_1
{
- pushFollow(FOLLOW_rule__RefPath__RefsAssignment_1_1_in_rule__RefPath__Group_1__1__Impl6134);
+ pushFollow(FOLLOW_rule__RefPath__RefsAssignment_1_1_in_rule__RefPath__Group_1__1__Impl8113);
rule__RefPath__RefsAssignment_1_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getRefPathAccess().getRefsAssignment_1_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRefPathAccess().getRefsAssignment_1_1());
+ }
}
@@ -8165,25 +11526,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3076:1: rule__Import__Group__0 : rule__Import__Group__0__Impl rule__Import__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4070:1: rule__Import__Group__0 : rule__Import__Group__0__Impl rule__Import__Group__1 ;
public final void rule__Import__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3080:1: ( rule__Import__Group__0__Impl rule__Import__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3081:2: rule__Import__Group__0__Impl rule__Import__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4074:1: ( rule__Import__Group__0__Impl rule__Import__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4075:2: rule__Import__Group__0__Impl rule__Import__Group__1
{
- pushFollow(FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__06168);
+ pushFollow(FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__08147);
rule__Import__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__Import__Group__1_in_rule__Import__Group__06171);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__Import__Group__1_in_rule__Import__Group__08150);
rule__Import__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8203,21 +11564,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3088:1: rule__Import__Group__0__Impl : ( 'import' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4082:1: rule__Import__Group__0__Impl : ( 'import' ) ;
public final void rule__Import__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3092:1: ( ( 'import' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3093:1: ( 'import' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4086:1: ( ( 'import' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4087:1: ( 'import' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3093:1: ( 'import' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3094:1: 'import'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4087:1: ( 'import' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4088:1: 'import'
{
- before(grammarAccess.getImportAccess().getImportKeyword_0());
- match(input,30,FOLLOW_30_in_rule__Import__Group__0__Impl6199);
- after(grammarAccess.getImportAccess().getImportKeyword_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getImportKeyword_0());
+ }
+ match(input,38,FOLLOW_38_in_rule__Import__Group__0__Impl8178); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getImportKeyword_0());
+ }
}
@@ -8240,25 +11605,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3107:1: rule__Import__Group__1 : rule__Import__Group__1__Impl rule__Import__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4101:1: rule__Import__Group__1 : rule__Import__Group__1__Impl rule__Import__Group__2 ;
public final void rule__Import__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3111:1: ( rule__Import__Group__1__Impl rule__Import__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3112:2: rule__Import__Group__1__Impl rule__Import__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4105:1: ( rule__Import__Group__1__Impl rule__Import__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4106:2: rule__Import__Group__1__Impl rule__Import__Group__2
{
- pushFollow(FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__16230);
+ pushFollow(FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__18209);
rule__Import__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__Import__Group__2_in_rule__Import__Group__16233);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__Import__Group__2_in_rule__Import__Group__18212);
rule__Import__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8278,31 +11643,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3119:1: rule__Import__Group__1__Impl : ( ( rule__Import__Alternatives_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4113:1: rule__Import__Group__1__Impl : ( ( rule__Import__Alternatives_1 ) ) ;
public final void rule__Import__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3123:1: ( ( ( rule__Import__Alternatives_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3124:1: ( ( rule__Import__Alternatives_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4117:1: ( ( ( rule__Import__Alternatives_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4118:1: ( ( rule__Import__Alternatives_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3124:1: ( ( rule__Import__Alternatives_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3125:1: ( rule__Import__Alternatives_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4118:1: ( ( rule__Import__Alternatives_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4119:1: ( rule__Import__Alternatives_1 )
{
- before(grammarAccess.getImportAccess().getAlternatives_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3126:1: ( rule__Import__Alternatives_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3126:2: rule__Import__Alternatives_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getAlternatives_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4120:1: ( rule__Import__Alternatives_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4120:2: rule__Import__Alternatives_1
{
- pushFollow(FOLLOW_rule__Import__Alternatives_1_in_rule__Import__Group__1__Impl6260);
+ pushFollow(FOLLOW_rule__Import__Alternatives_1_in_rule__Import__Group__1__Impl8239);
rule__Import__Alternatives_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getImportAccess().getAlternatives_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getAlternatives_1());
+ }
}
@@ -8325,20 +11694,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3136:1: rule__Import__Group__2 : rule__Import__Group__2__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4130:1: rule__Import__Group__2 : rule__Import__Group__2__Impl ;
public final void rule__Import__Group__2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3140:1: ( rule__Import__Group__2__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3141:2: rule__Import__Group__2__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4134:1: ( rule__Import__Group__2__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4135:2: rule__Import__Group__2__Impl
{
- pushFollow(FOLLOW_rule__Import__Group__2__Impl_in_rule__Import__Group__26290);
+ pushFollow(FOLLOW_rule__Import__Group__2__Impl_in_rule__Import__Group__28269);
rule__Import__Group__2__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8358,31 +11727,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3147:1: rule__Import__Group__2__Impl : ( ( rule__Import__ImportURIAssignment_2 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4141:1: rule__Import__Group__2__Impl : ( ( rule__Import__ImportURIAssignment_2 ) ) ;
public final void rule__Import__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3151:1: ( ( ( rule__Import__ImportURIAssignment_2 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3152:1: ( ( rule__Import__ImportURIAssignment_2 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4145:1: ( ( ( rule__Import__ImportURIAssignment_2 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4146:1: ( ( rule__Import__ImportURIAssignment_2 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3152:1: ( ( rule__Import__ImportURIAssignment_2 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3153:1: ( rule__Import__ImportURIAssignment_2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4146:1: ( ( rule__Import__ImportURIAssignment_2 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4147:1: ( rule__Import__ImportURIAssignment_2 )
{
- before(grammarAccess.getImportAccess().getImportURIAssignment_2());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3154:1: ( rule__Import__ImportURIAssignment_2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3154:2: rule__Import__ImportURIAssignment_2
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getImportURIAssignment_2());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4148:1: ( rule__Import__ImportURIAssignment_2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4148:2: rule__Import__ImportURIAssignment_2
{
- pushFollow(FOLLOW_rule__Import__ImportURIAssignment_2_in_rule__Import__Group__2__Impl6317);
+ pushFollow(FOLLOW_rule__Import__ImportURIAssignment_2_in_rule__Import__Group__2__Impl8296);
rule__Import__ImportURIAssignment_2();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getImportAccess().getImportURIAssignment_2());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getImportURIAssignment_2());
+ }
}
@@ -8405,25 +11778,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group_1_0__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3170:1: rule__Import__Group_1_0__0 : rule__Import__Group_1_0__0__Impl rule__Import__Group_1_0__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4164:1: rule__Import__Group_1_0__0 : rule__Import__Group_1_0__0__Impl rule__Import__Group_1_0__1 ;
public final void rule__Import__Group_1_0__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3174:1: ( rule__Import__Group_1_0__0__Impl rule__Import__Group_1_0__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3175:2: rule__Import__Group_1_0__0__Impl rule__Import__Group_1_0__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4168:1: ( rule__Import__Group_1_0__0__Impl rule__Import__Group_1_0__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4169:2: rule__Import__Group_1_0__0__Impl rule__Import__Group_1_0__1
{
- pushFollow(FOLLOW_rule__Import__Group_1_0__0__Impl_in_rule__Import__Group_1_0__06353);
+ pushFollow(FOLLOW_rule__Import__Group_1_0__0__Impl_in_rule__Import__Group_1_0__08332);
rule__Import__Group_1_0__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__Import__Group_1_0__1_in_rule__Import__Group_1_0__06356);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__Import__Group_1_0__1_in_rule__Import__Group_1_0__08335);
rule__Import__Group_1_0__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8443,31 +11816,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group_1_0__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3182:1: rule__Import__Group_1_0__0__Impl : ( ( rule__Import__ImportedNamespaceAssignment_1_0_0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4176:1: rule__Import__Group_1_0__0__Impl : ( ( rule__Import__ImportedNamespaceAssignment_1_0_0 ) ) ;
public final void rule__Import__Group_1_0__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3186:1: ( ( ( rule__Import__ImportedNamespaceAssignment_1_0_0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3187:1: ( ( rule__Import__ImportedNamespaceAssignment_1_0_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4180:1: ( ( ( rule__Import__ImportedNamespaceAssignment_1_0_0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4181:1: ( ( rule__Import__ImportedNamespaceAssignment_1_0_0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3187:1: ( ( rule__Import__ImportedNamespaceAssignment_1_0_0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3188:1: ( rule__Import__ImportedNamespaceAssignment_1_0_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4181:1: ( ( rule__Import__ImportedNamespaceAssignment_1_0_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4182:1: ( rule__Import__ImportedNamespaceAssignment_1_0_0 )
{
- before(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1_0_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3189:1: ( rule__Import__ImportedNamespaceAssignment_1_0_0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3189:2: rule__Import__ImportedNamespaceAssignment_1_0_0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1_0_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4183:1: ( rule__Import__ImportedNamespaceAssignment_1_0_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4183:2: rule__Import__ImportedNamespaceAssignment_1_0_0
{
- pushFollow(FOLLOW_rule__Import__ImportedNamespaceAssignment_1_0_0_in_rule__Import__Group_1_0__0__Impl6383);
+ pushFollow(FOLLOW_rule__Import__ImportedNamespaceAssignment_1_0_0_in_rule__Import__Group_1_0__0__Impl8362);
rule__Import__ImportedNamespaceAssignment_1_0_0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1_0_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1_0_0());
+ }
}
@@ -8490,20 +11867,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group_1_0__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3199:1: rule__Import__Group_1_0__1 : rule__Import__Group_1_0__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4193:1: rule__Import__Group_1_0__1 : rule__Import__Group_1_0__1__Impl ;
public final void rule__Import__Group_1_0__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3203:1: ( rule__Import__Group_1_0__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3204:2: rule__Import__Group_1_0__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4197:1: ( rule__Import__Group_1_0__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4198:2: rule__Import__Group_1_0__1__Impl
{
- pushFollow(FOLLOW_rule__Import__Group_1_0__1__Impl_in_rule__Import__Group_1_0__16413);
+ pushFollow(FOLLOW_rule__Import__Group_1_0__1__Impl_in_rule__Import__Group_1_0__18392);
rule__Import__Group_1_0__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8523,21 +11900,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__Group_1_0__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3210:1: rule__Import__Group_1_0__1__Impl : ( 'from' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4204:1: rule__Import__Group_1_0__1__Impl : ( 'from' ) ;
public final void rule__Import__Group_1_0__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3214:1: ( ( 'from' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3215:1: ( 'from' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4208:1: ( ( 'from' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4209:1: ( 'from' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3215:1: ( 'from' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3216:1: 'from'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4209:1: ( 'from' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4210:1: 'from'
{
- before(grammarAccess.getImportAccess().getFromKeyword_1_0_1());
- match(input,31,FOLLOW_31_in_rule__Import__Group_1_0__1__Impl6441);
- after(grammarAccess.getImportAccess().getFromKeyword_1_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getFromKeyword_1_0_1());
+ }
+ match(input,39,FOLLOW_39_in_rule__Import__Group_1_0__1__Impl8420); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getFromKeyword_1_0_1());
+ }
}
@@ -8560,25 +11941,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ImportedFQN__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3233:1: rule__ImportedFQN__Group__0 : rule__ImportedFQN__Group__0__Impl rule__ImportedFQN__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4227: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3237:1: ( rule__ImportedFQN__Group__0__Impl rule__ImportedFQN__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3238:2: rule__ImportedFQN__Group__0__Impl rule__ImportedFQN__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4231:1: ( rule__ImportedFQN__Group__0__Impl rule__ImportedFQN__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4232:2: rule__ImportedFQN__Group__0__Impl rule__ImportedFQN__Group__1
{
- pushFollow(FOLLOW_rule__ImportedFQN__Group__0__Impl_in_rule__ImportedFQN__Group__06476);
+ pushFollow(FOLLOW_rule__ImportedFQN__Group__0__Impl_in_rule__ImportedFQN__Group__08455);
rule__ImportedFQN__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__ImportedFQN__Group__1_in_rule__ImportedFQN__Group__06479);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__ImportedFQN__Group__1_in_rule__ImportedFQN__Group__08458);
rule__ImportedFQN__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8598,25 +11979,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ImportedFQN__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3245:1: rule__ImportedFQN__Group__0__Impl : ( ruleFQN ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4239: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3249:1: ( ( ruleFQN ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3250:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4243:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4244:1: ( ruleFQN )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3250:1: ( ruleFQN )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3251:1: ruleFQN
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4244:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4245:1: ruleFQN
{
- before(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0());
- pushFollow(FOLLOW_ruleFQN_in_rule__ImportedFQN__Group__0__Impl6506);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0());
+ }
+ pushFollow(FOLLOW_ruleFQN_in_rule__ImportedFQN__Group__0__Impl8485);
ruleFQN();
state._fsp--;
-
- after(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0());
+ }
}
@@ -8639,20 +12024,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ImportedFQN__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3262:1: rule__ImportedFQN__Group__1 : rule__ImportedFQN__Group__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4256: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3266:1: ( rule__ImportedFQN__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3267:2: rule__ImportedFQN__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4260:1: ( rule__ImportedFQN__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4261:2: rule__ImportedFQN__Group__1__Impl
{
- pushFollow(FOLLOW_rule__ImportedFQN__Group__1__Impl_in_rule__ImportedFQN__Group__16535);
+ pushFollow(FOLLOW_rule__ImportedFQN__Group__1__Impl_in_rule__ImportedFQN__Group__18514);
rule__ImportedFQN__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8672,38 +12057,42 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ImportedFQN__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3273:1: rule__ImportedFQN__Group__1__Impl : ( ( '.*' )? ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4267:1: rule__ImportedFQN__Group__1__Impl : ( ( '.*' )? ) ;
public final void rule__ImportedFQN__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3277:1: ( ( ( '.*' )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3278:1: ( ( '.*' )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4271:1: ( ( ( '.*' )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4272:1: ( ( '.*' )? )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3278:1: ( ( '.*' )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3279:1: ( '.*' )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4272:1: ( ( '.*' )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4273:1: ( '.*' )?
{
- before(grammarAccess.getImportedFQNAccess().getFullStopAsteriskKeyword_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3280:1: ( '.*' )?
- int alt25=2;
- int LA25_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportedFQNAccess().getFullStopAsteriskKeyword_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4274:1: ( '.*' )?
+ int alt30=2;
+ int LA30_0 = input.LA(1);
- if ( (LA25_0==32) ) {
- alt25=1;
+ if ( (LA30_0==40) ) {
+ alt30=1;
}
- switch (alt25) {
+ switch (alt30) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3281:2: '.*'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4275:2: '.*'
{
- match(input,32,FOLLOW_32_in_rule__ImportedFQN__Group__1__Impl6564);
+ match(input,40,FOLLOW_40_in_rule__ImportedFQN__Group__1__Impl8543); if (state.failed) return ;
}
break;
}
- after(grammarAccess.getImportedFQNAccess().getFullStopAsteriskKeyword_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportedFQNAccess().getFullStopAsteriskKeyword_1());
+ }
}
@@ -8726,25 +12115,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__FQN__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3296:1: rule__FQN__Group__0 : rule__FQN__Group__0__Impl rule__FQN__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4290: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3300:1: ( rule__FQN__Group__0__Impl rule__FQN__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3301:2: rule__FQN__Group__0__Impl rule__FQN__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4294:1: ( rule__FQN__Group__0__Impl rule__FQN__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4295:2: rule__FQN__Group__0__Impl rule__FQN__Group__1
{
- pushFollow(FOLLOW_rule__FQN__Group__0__Impl_in_rule__FQN__Group__06601);
+ pushFollow(FOLLOW_rule__FQN__Group__0__Impl_in_rule__FQN__Group__08580);
rule__FQN__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__FQN__Group__1_in_rule__FQN__Group__06604);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__FQN__Group__1_in_rule__FQN__Group__08583);
rule__FQN__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8764,21 +12153,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__FQN__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3308:1: rule__FQN__Group__0__Impl : ( RULE_ID ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4302: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3312:1: ( ( RULE_ID ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3313:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4306:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4307:1: ( RULE_ID )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3313:1: ( RULE_ID )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3314:1: RULE_ID
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4307:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4308:1: RULE_ID
{
- before(grammarAccess.getFQNAccess().getIDTerminalRuleCall_0());
- match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__FQN__Group__0__Impl6631);
- after(grammarAccess.getFQNAccess().getIDTerminalRuleCall_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getFQNAccess().getIDTerminalRuleCall_0());
+ }
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__FQN__Group__0__Impl8610); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getFQNAccess().getIDTerminalRuleCall_0());
+ }
}
@@ -8801,20 +12194,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__FQN__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3325:1: rule__FQN__Group__1 : rule__FQN__Group__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4319: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3329:1: ( rule__FQN__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3330:2: rule__FQN__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4323:1: ( rule__FQN__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4324:2: rule__FQN__Group__1__Impl
{
- pushFollow(FOLLOW_rule__FQN__Group__1__Impl_in_rule__FQN__Group__16660);
+ pushFollow(FOLLOW_rule__FQN__Group__1__Impl_in_rule__FQN__Group__18639);
rule__FQN__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8834,49 +12227,53 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__FQN__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3336:1: rule__FQN__Group__1__Impl : ( ( rule__FQN__Group_1__0 )* ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4330: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3340:1: ( ( ( rule__FQN__Group_1__0 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3341:1: ( ( rule__FQN__Group_1__0 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4334:1: ( ( ( rule__FQN__Group_1__0 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4335:1: ( ( rule__FQN__Group_1__0 )* )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3341:1: ( ( rule__FQN__Group_1__0 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3342:1: ( rule__FQN__Group_1__0 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4335:1: ( ( rule__FQN__Group_1__0 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4336:1: ( rule__FQN__Group_1__0 )*
{
- before(grammarAccess.getFQNAccess().getGroup_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3343:1: ( rule__FQN__Group_1__0 )*
- loop26:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getFQNAccess().getGroup_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4337:1: ( rule__FQN__Group_1__0 )*
+ loop31:
do {
- int alt26=2;
- int LA26_0 = input.LA(1);
+ int alt31=2;
+ int LA31_0 = input.LA(1);
- if ( (LA26_0==33) ) {
- alt26=1;
+ if ( (LA31_0==41) ) {
+ alt31=1;
}
- switch (alt26) {
+ switch (alt31) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3343:2: rule__FQN__Group_1__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4337:2: rule__FQN__Group_1__0
{
- pushFollow(FOLLOW_rule__FQN__Group_1__0_in_rule__FQN__Group__1__Impl6687);
+ pushFollow(FOLLOW_rule__FQN__Group_1__0_in_rule__FQN__Group__1__Impl8666);
rule__FQN__Group_1__0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
default :
- break loop26;
+ break loop31;
}
} while (true);
- after(grammarAccess.getFQNAccess().getGroup_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getFQNAccess().getGroup_1());
+ }
}
@@ -8899,25 +12296,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__FQN__Group_1__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3357:1: rule__FQN__Group_1__0 : rule__FQN__Group_1__0__Impl rule__FQN__Group_1__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4351: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3361:1: ( rule__FQN__Group_1__0__Impl rule__FQN__Group_1__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3362:2: rule__FQN__Group_1__0__Impl rule__FQN__Group_1__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4355:1: ( rule__FQN__Group_1__0__Impl rule__FQN__Group_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4356: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__06722);
+ pushFollow(FOLLOW_rule__FQN__Group_1__0__Impl_in_rule__FQN__Group_1__08701);
rule__FQN__Group_1__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__FQN__Group_1__1_in_rule__FQN__Group_1__06725);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__FQN__Group_1__1_in_rule__FQN__Group_1__08704);
rule__FQN__Group_1__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -8937,21 +12334,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__FQN__Group_1__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3369:1: rule__FQN__Group_1__0__Impl : ( '.' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4363: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3373:1: ( ( '.' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3374:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4367:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4368:1: ( '.' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3374:1: ( '.' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3375:1: '.'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4368:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4369:1: '.'
{
- before(grammarAccess.getFQNAccess().getFullStopKeyword_1_0());
- match(input,33,FOLLOW_33_in_rule__FQN__Group_1__0__Impl6753);
- after(grammarAccess.getFQNAccess().getFullStopKeyword_1_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getFQNAccess().getFullStopKeyword_1_0());
+ }
+ match(input,41,FOLLOW_41_in_rule__FQN__Group_1__0__Impl8732); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getFQNAccess().getFullStopKeyword_1_0());
+ }
}
@@ -8974,20 +12375,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__FQN__Group_1__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3388:1: rule__FQN__Group_1__1 : rule__FQN__Group_1__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4382: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3392:1: ( rule__FQN__Group_1__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3393:2: rule__FQN__Group_1__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4386:1: ( rule__FQN__Group_1__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4387:2: rule__FQN__Group_1__1__Impl
{
- pushFollow(FOLLOW_rule__FQN__Group_1__1__Impl_in_rule__FQN__Group_1__16784);
+ pushFollow(FOLLOW_rule__FQN__Group_1__1__Impl_in_rule__FQN__Group_1__18763);
rule__FQN__Group_1__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9007,21 +12408,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__FQN__Group_1__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3399:1: rule__FQN__Group_1__1__Impl : ( RULE_ID ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4393: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3403:1: ( ( RULE_ID ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3404:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4397:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4398:1: ( RULE_ID )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3404:1: ( RULE_ID )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3405:1: RULE_ID
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4398:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4399:1: RULE_ID
{
- before(grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1());
- match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__FQN__Group_1__1__Impl6811);
- after(grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1());
+ }
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__FQN__Group_1__1__Impl8790); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1());
+ }
}
@@ -9044,25 +12449,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3420:1: rule__LiteralArray__Group__0 : rule__LiteralArray__Group__0__Impl rule__LiteralArray__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4414:1: rule__LiteralArray__Group__0 : rule__LiteralArray__Group__0__Impl rule__LiteralArray__Group__1 ;
public final void rule__LiteralArray__Group__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3424:1: ( rule__LiteralArray__Group__0__Impl rule__LiteralArray__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3425:2: rule__LiteralArray__Group__0__Impl rule__LiteralArray__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4418:1: ( rule__LiteralArray__Group__0__Impl rule__LiteralArray__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4419:2: rule__LiteralArray__Group__0__Impl rule__LiteralArray__Group__1
{
- pushFollow(FOLLOW_rule__LiteralArray__Group__0__Impl_in_rule__LiteralArray__Group__06844);
+ pushFollow(FOLLOW_rule__LiteralArray__Group__0__Impl_in_rule__LiteralArray__Group__08823);
rule__LiteralArray__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__LiteralArray__Group__1_in_rule__LiteralArray__Group__06847);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__LiteralArray__Group__1_in_rule__LiteralArray__Group__08826);
rule__LiteralArray__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9082,31 +12487,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3432:1: rule__LiteralArray__Group__0__Impl : ( ( rule__LiteralArray__LiteralsAssignment_0 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4426:1: rule__LiteralArray__Group__0__Impl : ( ( rule__LiteralArray__LiteralsAssignment_0 ) ) ;
public final void rule__LiteralArray__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3436:1: ( ( ( rule__LiteralArray__LiteralsAssignment_0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3437:1: ( ( rule__LiteralArray__LiteralsAssignment_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4430:1: ( ( ( rule__LiteralArray__LiteralsAssignment_0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4431:1: ( ( rule__LiteralArray__LiteralsAssignment_0 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3437:1: ( ( rule__LiteralArray__LiteralsAssignment_0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3438:1: ( rule__LiteralArray__LiteralsAssignment_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4431:1: ( ( rule__LiteralArray__LiteralsAssignment_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4432:1: ( rule__LiteralArray__LiteralsAssignment_0 )
{
- before(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3439:1: ( rule__LiteralArray__LiteralsAssignment_0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3439:2: rule__LiteralArray__LiteralsAssignment_0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4433:1: ( rule__LiteralArray__LiteralsAssignment_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4433:2: rule__LiteralArray__LiteralsAssignment_0
{
- pushFollow(FOLLOW_rule__LiteralArray__LiteralsAssignment_0_in_rule__LiteralArray__Group__0__Impl6874);
+ pushFollow(FOLLOW_rule__LiteralArray__LiteralsAssignment_0_in_rule__LiteralArray__Group__0__Impl8853);
rule__LiteralArray__LiteralsAssignment_0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_0());
+ }
}
@@ -9129,20 +12538,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3449:1: rule__LiteralArray__Group__1 : rule__LiteralArray__Group__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4443:1: rule__LiteralArray__Group__1 : rule__LiteralArray__Group__1__Impl ;
public final void rule__LiteralArray__Group__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3453:1: ( rule__LiteralArray__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3454:2: rule__LiteralArray__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4447:1: ( rule__LiteralArray__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4448:2: rule__LiteralArray__Group__1__Impl
{
- pushFollow(FOLLOW_rule__LiteralArray__Group__1__Impl_in_rule__LiteralArray__Group__16904);
+ pushFollow(FOLLOW_rule__LiteralArray__Group__1__Impl_in_rule__LiteralArray__Group__18883);
rule__LiteralArray__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9162,49 +12571,53 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3460:1: rule__LiteralArray__Group__1__Impl : ( ( rule__LiteralArray__Group_1__0 )* ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4454:1: rule__LiteralArray__Group__1__Impl : ( ( rule__LiteralArray__Group_1__0 )* ) ;
public final void rule__LiteralArray__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3464:1: ( ( ( rule__LiteralArray__Group_1__0 )* ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3465:1: ( ( rule__LiteralArray__Group_1__0 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4458:1: ( ( ( rule__LiteralArray__Group_1__0 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4459:1: ( ( rule__LiteralArray__Group_1__0 )* )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3465:1: ( ( rule__LiteralArray__Group_1__0 )* )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3466:1: ( rule__LiteralArray__Group_1__0 )*
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4459:1: ( ( rule__LiteralArray__Group_1__0 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4460:1: ( rule__LiteralArray__Group_1__0 )*
{
- before(grammarAccess.getLiteralArrayAccess().getGroup_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3467:1: ( rule__LiteralArray__Group_1__0 )*
- loop27:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralArrayAccess().getGroup_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4461:1: ( rule__LiteralArray__Group_1__0 )*
+ loop32:
do {
- int alt27=2;
- int LA27_0 = input.LA(1);
+ int alt32=2;
+ int LA32_0 = input.LA(1);
- if ( (LA27_0==34) ) {
- alt27=1;
+ if ( (LA32_0==42) ) {
+ alt32=1;
}
- switch (alt27) {
+ switch (alt32) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3467:2: rule__LiteralArray__Group_1__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4461:2: rule__LiteralArray__Group_1__0
{
- pushFollow(FOLLOW_rule__LiteralArray__Group_1__0_in_rule__LiteralArray__Group__1__Impl6931);
+ pushFollow(FOLLOW_rule__LiteralArray__Group_1__0_in_rule__LiteralArray__Group__1__Impl8910);
rule__LiteralArray__Group_1__0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
default :
- break loop27;
+ break loop32;
}
} while (true);
- after(grammarAccess.getLiteralArrayAccess().getGroup_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralArrayAccess().getGroup_1());
+ }
}
@@ -9227,25 +12640,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__Group_1__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3481:1: rule__LiteralArray__Group_1__0 : rule__LiteralArray__Group_1__0__Impl rule__LiteralArray__Group_1__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4475:1: rule__LiteralArray__Group_1__0 : rule__LiteralArray__Group_1__0__Impl rule__LiteralArray__Group_1__1 ;
public final void rule__LiteralArray__Group_1__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3485:1: ( rule__LiteralArray__Group_1__0__Impl rule__LiteralArray__Group_1__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3486:2: rule__LiteralArray__Group_1__0__Impl rule__LiteralArray__Group_1__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4479:1: ( rule__LiteralArray__Group_1__0__Impl rule__LiteralArray__Group_1__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4480:2: rule__LiteralArray__Group_1__0__Impl rule__LiteralArray__Group_1__1
{
- pushFollow(FOLLOW_rule__LiteralArray__Group_1__0__Impl_in_rule__LiteralArray__Group_1__06966);
+ pushFollow(FOLLOW_rule__LiteralArray__Group_1__0__Impl_in_rule__LiteralArray__Group_1__08945);
rule__LiteralArray__Group_1__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__LiteralArray__Group_1__1_in_rule__LiteralArray__Group_1__06969);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__LiteralArray__Group_1__1_in_rule__LiteralArray__Group_1__08948);
rule__LiteralArray__Group_1__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9265,21 +12678,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__Group_1__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3493:1: rule__LiteralArray__Group_1__0__Impl : ( ',' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4487:1: rule__LiteralArray__Group_1__0__Impl : ( ',' ) ;
public final void rule__LiteralArray__Group_1__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3497:1: ( ( ',' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3498:1: ( ',' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4491:1: ( ( ',' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4492:1: ( ',' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3498:1: ( ',' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3499:1: ','
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4492:1: ( ',' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4493:1: ','
{
- before(grammarAccess.getLiteralArrayAccess().getCommaKeyword_1_0());
- match(input,34,FOLLOW_34_in_rule__LiteralArray__Group_1__0__Impl6997);
- after(grammarAccess.getLiteralArrayAccess().getCommaKeyword_1_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralArrayAccess().getCommaKeyword_1_0());
+ }
+ match(input,42,FOLLOW_42_in_rule__LiteralArray__Group_1__0__Impl8976); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralArrayAccess().getCommaKeyword_1_0());
+ }
}
@@ -9302,20 +12719,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__Group_1__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3512:1: rule__LiteralArray__Group_1__1 : rule__LiteralArray__Group_1__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4506:1: rule__LiteralArray__Group_1__1 : rule__LiteralArray__Group_1__1__Impl ;
public final void rule__LiteralArray__Group_1__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3516:1: ( rule__LiteralArray__Group_1__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3517:2: rule__LiteralArray__Group_1__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4510:1: ( rule__LiteralArray__Group_1__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4511:2: rule__LiteralArray__Group_1__1__Impl
{
- pushFollow(FOLLOW_rule__LiteralArray__Group_1__1__Impl_in_rule__LiteralArray__Group_1__17028);
+ pushFollow(FOLLOW_rule__LiteralArray__Group_1__1__Impl_in_rule__LiteralArray__Group_1__19007);
rule__LiteralArray__Group_1__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9335,31 +12752,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__Group_1__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3523:1: rule__LiteralArray__Group_1__1__Impl : ( ( rule__LiteralArray__LiteralsAssignment_1_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4517:1: rule__LiteralArray__Group_1__1__Impl : ( ( rule__LiteralArray__LiteralsAssignment_1_1 ) ) ;
public final void rule__LiteralArray__Group_1__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3527:1: ( ( ( rule__LiteralArray__LiteralsAssignment_1_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3528:1: ( ( rule__LiteralArray__LiteralsAssignment_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4521:1: ( ( ( rule__LiteralArray__LiteralsAssignment_1_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4522:1: ( ( rule__LiteralArray__LiteralsAssignment_1_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3528:1: ( ( rule__LiteralArray__LiteralsAssignment_1_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3529:1: ( rule__LiteralArray__LiteralsAssignment_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4522:1: ( ( rule__LiteralArray__LiteralsAssignment_1_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4523:1: ( rule__LiteralArray__LiteralsAssignment_1_1 )
{
- before(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_1_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3530:1: ( rule__LiteralArray__LiteralsAssignment_1_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3530:2: rule__LiteralArray__LiteralsAssignment_1_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_1_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4524:1: ( rule__LiteralArray__LiteralsAssignment_1_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4524:2: rule__LiteralArray__LiteralsAssignment_1_1
{
- pushFollow(FOLLOW_rule__LiteralArray__LiteralsAssignment_1_1_in_rule__LiteralArray__Group_1__1__Impl7055);
+ pushFollow(FOLLOW_rule__LiteralArray__LiteralsAssignment_1_1_in_rule__LiteralArray__Group_1__1__Impl9034);
rule__LiteralArray__LiteralsAssignment_1_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_1_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralArrayAccess().getLiteralsAssignment_1_1());
+ }
}
@@ -9382,25 +12803,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__BooleanLiteral__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3544:1: rule__BooleanLiteral__Group__0 : rule__BooleanLiteral__Group__0__Impl rule__BooleanLiteral__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4538: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3548:1: ( rule__BooleanLiteral__Group__0__Impl rule__BooleanLiteral__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3549:2: rule__BooleanLiteral__Group__0__Impl rule__BooleanLiteral__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4542:1: ( rule__BooleanLiteral__Group__0__Impl rule__BooleanLiteral__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4543:2: rule__BooleanLiteral__Group__0__Impl rule__BooleanLiteral__Group__1
{
- pushFollow(FOLLOW_rule__BooleanLiteral__Group__0__Impl_in_rule__BooleanLiteral__Group__07089);
+ pushFollow(FOLLOW_rule__BooleanLiteral__Group__0__Impl_in_rule__BooleanLiteral__Group__09068);
rule__BooleanLiteral__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__BooleanLiteral__Group__1_in_rule__BooleanLiteral__Group__07092);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__BooleanLiteral__Group__1_in_rule__BooleanLiteral__Group__09071);
rule__BooleanLiteral__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9420,25 +12841,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__BooleanLiteral__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3556:1: rule__BooleanLiteral__Group__0__Impl : ( () ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4550:1: rule__BooleanLiteral__Group__0__Impl : ( () ) ;
public final void rule__BooleanLiteral__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3560:1: ( ( () ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3561:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4554:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4555:1: ( () )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3561:1: ( () )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3562:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4555:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4556:1: ()
{
- before(grammarAccess.getBooleanLiteralAccess().getBooleanLiteralAction_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3563:1: ()
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3565:1:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getBooleanLiteralAccess().getBooleanLiteralAction_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4557:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4559:1:
{
}
- after(grammarAccess.getBooleanLiteralAccess().getBooleanLiteralAction_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getBooleanLiteralAccess().getBooleanLiteralAction_0());
+ }
}
@@ -9457,20 +12882,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__BooleanLiteral__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3575:1: rule__BooleanLiteral__Group__1 : rule__BooleanLiteral__Group__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4569: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3579:1: ( rule__BooleanLiteral__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3580:2: rule__BooleanLiteral__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4573:1: ( rule__BooleanLiteral__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4574:2: rule__BooleanLiteral__Group__1__Impl
{
- pushFollow(FOLLOW_rule__BooleanLiteral__Group__1__Impl_in_rule__BooleanLiteral__Group__17150);
+ pushFollow(FOLLOW_rule__BooleanLiteral__Group__1__Impl_in_rule__BooleanLiteral__Group__19129);
rule__BooleanLiteral__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9490,31 +12915,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__BooleanLiteral__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3586:1: rule__BooleanLiteral__Group__1__Impl : ( ( rule__BooleanLiteral__Alternatives_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4580: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3590:1: ( ( ( rule__BooleanLiteral__Alternatives_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3591:1: ( ( rule__BooleanLiteral__Alternatives_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4584:1: ( ( ( rule__BooleanLiteral__Alternatives_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4585:1: ( ( rule__BooleanLiteral__Alternatives_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3591:1: ( ( rule__BooleanLiteral__Alternatives_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3592:1: ( rule__BooleanLiteral__Alternatives_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4585:1: ( ( rule__BooleanLiteral__Alternatives_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4586:1: ( rule__BooleanLiteral__Alternatives_1 )
{
- before(grammarAccess.getBooleanLiteralAccess().getAlternatives_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3593:1: ( rule__BooleanLiteral__Alternatives_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3593:2: rule__BooleanLiteral__Alternatives_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getBooleanLiteralAccess().getAlternatives_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4587:1: ( rule__BooleanLiteral__Alternatives_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4587:2: rule__BooleanLiteral__Alternatives_1
{
- pushFollow(FOLLOW_rule__BooleanLiteral__Alternatives_1_in_rule__BooleanLiteral__Group__1__Impl7177);
+ pushFollow(FOLLOW_rule__BooleanLiteral__Alternatives_1_in_rule__BooleanLiteral__Group__1__Impl9156);
rule__BooleanLiteral__Alternatives_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getBooleanLiteralAccess().getAlternatives_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getBooleanLiteralAccess().getAlternatives_1());
+ }
}
@@ -9537,25 +12966,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RealLiteral__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3607:1: rule__RealLiteral__Group__0 : rule__RealLiteral__Group__0__Impl rule__RealLiteral__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4601: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3611:1: ( rule__RealLiteral__Group__0__Impl rule__RealLiteral__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3612:2: rule__RealLiteral__Group__0__Impl rule__RealLiteral__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4605:1: ( rule__RealLiteral__Group__0__Impl rule__RealLiteral__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4606:2: rule__RealLiteral__Group__0__Impl rule__RealLiteral__Group__1
{
- pushFollow(FOLLOW_rule__RealLiteral__Group__0__Impl_in_rule__RealLiteral__Group__07211);
+ pushFollow(FOLLOW_rule__RealLiteral__Group__0__Impl_in_rule__RealLiteral__Group__09190);
rule__RealLiteral__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__RealLiteral__Group__1_in_rule__RealLiteral__Group__07214);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__RealLiteral__Group__1_in_rule__RealLiteral__Group__09193);
rule__RealLiteral__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9575,25 +13004,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RealLiteral__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3619:1: rule__RealLiteral__Group__0__Impl : ( () ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4613:1: rule__RealLiteral__Group__0__Impl : ( () ) ;
public final void rule__RealLiteral__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3623:1: ( ( () ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3624:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4617:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4618:1: ( () )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3624:1: ( () )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3625:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4618:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4619:1: ()
{
- before(grammarAccess.getRealLiteralAccess().getRealLiteralAction_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3626:1: ()
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3628:1:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealLiteralAccess().getRealLiteralAction_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4620:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4622:1:
{
}
- after(grammarAccess.getRealLiteralAccess().getRealLiteralAction_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealLiteralAccess().getRealLiteralAction_0());
+ }
}
@@ -9612,20 +13045,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RealLiteral__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3638:1: rule__RealLiteral__Group__1 : rule__RealLiteral__Group__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4632: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3642:1: ( rule__RealLiteral__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3643:2: rule__RealLiteral__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4636:1: ( rule__RealLiteral__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4637:2: rule__RealLiteral__Group__1__Impl
{
- pushFollow(FOLLOW_rule__RealLiteral__Group__1__Impl_in_rule__RealLiteral__Group__17272);
+ pushFollow(FOLLOW_rule__RealLiteral__Group__1__Impl_in_rule__RealLiteral__Group__19251);
rule__RealLiteral__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9645,31 +13078,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RealLiteral__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3649:1: rule__RealLiteral__Group__1__Impl : ( ( rule__RealLiteral__ValueAssignment_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4643: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3653:1: ( ( ( rule__RealLiteral__ValueAssignment_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3654:1: ( ( rule__RealLiteral__ValueAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4647:1: ( ( ( rule__RealLiteral__ValueAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4648:1: ( ( rule__RealLiteral__ValueAssignment_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3654:1: ( ( rule__RealLiteral__ValueAssignment_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3655:1: ( rule__RealLiteral__ValueAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4648:1: ( ( rule__RealLiteral__ValueAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4649:1: ( rule__RealLiteral__ValueAssignment_1 )
{
- before(grammarAccess.getRealLiteralAccess().getValueAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3656:1: ( rule__RealLiteral__ValueAssignment_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3656:2: rule__RealLiteral__ValueAssignment_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealLiteralAccess().getValueAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4650:1: ( rule__RealLiteral__ValueAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4650:2: rule__RealLiteral__ValueAssignment_1
{
- pushFollow(FOLLOW_rule__RealLiteral__ValueAssignment_1_in_rule__RealLiteral__Group__1__Impl7299);
+ pushFollow(FOLLOW_rule__RealLiteral__ValueAssignment_1_in_rule__RealLiteral__Group__1__Impl9278);
rule__RealLiteral__ValueAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getRealLiteralAccess().getValueAssignment_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealLiteralAccess().getValueAssignment_1());
+ }
}
@@ -9692,25 +13129,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__IntLiteral__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3670:1: rule__IntLiteral__Group__0 : rule__IntLiteral__Group__0__Impl rule__IntLiteral__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4664: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3674:1: ( rule__IntLiteral__Group__0__Impl rule__IntLiteral__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3675:2: rule__IntLiteral__Group__0__Impl rule__IntLiteral__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4668:1: ( rule__IntLiteral__Group__0__Impl rule__IntLiteral__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4669:2: rule__IntLiteral__Group__0__Impl rule__IntLiteral__Group__1
{
- pushFollow(FOLLOW_rule__IntLiteral__Group__0__Impl_in_rule__IntLiteral__Group__07333);
+ pushFollow(FOLLOW_rule__IntLiteral__Group__0__Impl_in_rule__IntLiteral__Group__09312);
rule__IntLiteral__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__IntLiteral__Group__1_in_rule__IntLiteral__Group__07336);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__IntLiteral__Group__1_in_rule__IntLiteral__Group__09315);
rule__IntLiteral__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9730,25 +13167,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__IntLiteral__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3682:1: rule__IntLiteral__Group__0__Impl : ( () ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4676:1: rule__IntLiteral__Group__0__Impl : ( () ) ;
public final void rule__IntLiteral__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3686:1: ( ( () ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3687:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4680:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4681:1: ( () )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3687:1: ( () )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3688:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4681:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4682:1: ()
{
- before(grammarAccess.getIntLiteralAccess().getIntLiteralAction_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3689:1: ()
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3691:1:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getIntLiteralAccess().getIntLiteralAction_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4683:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4685:1:
{
}
- after(grammarAccess.getIntLiteralAccess().getIntLiteralAction_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getIntLiteralAccess().getIntLiteralAction_0());
+ }
}
@@ -9767,20 +13208,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__IntLiteral__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3701:1: rule__IntLiteral__Group__1 : rule__IntLiteral__Group__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4695: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3705:1: ( rule__IntLiteral__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3706:2: rule__IntLiteral__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4699:1: ( rule__IntLiteral__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4700:2: rule__IntLiteral__Group__1__Impl
{
- pushFollow(FOLLOW_rule__IntLiteral__Group__1__Impl_in_rule__IntLiteral__Group__17394);
+ pushFollow(FOLLOW_rule__IntLiteral__Group__1__Impl_in_rule__IntLiteral__Group__19373);
rule__IntLiteral__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9800,31 +13241,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__IntLiteral__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3712:1: rule__IntLiteral__Group__1__Impl : ( ( rule__IntLiteral__ValueAssignment_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4706: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3716:1: ( ( ( rule__IntLiteral__ValueAssignment_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3717:1: ( ( rule__IntLiteral__ValueAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4710:1: ( ( ( rule__IntLiteral__ValueAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4711:1: ( ( rule__IntLiteral__ValueAssignment_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3717:1: ( ( rule__IntLiteral__ValueAssignment_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3718:1: ( rule__IntLiteral__ValueAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4711:1: ( ( rule__IntLiteral__ValueAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4712:1: ( rule__IntLiteral__ValueAssignment_1 )
{
- before(grammarAccess.getIntLiteralAccess().getValueAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3719:1: ( rule__IntLiteral__ValueAssignment_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3719:2: rule__IntLiteral__ValueAssignment_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getIntLiteralAccess().getValueAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4713:1: ( rule__IntLiteral__ValueAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4713:2: rule__IntLiteral__ValueAssignment_1
{
- pushFollow(FOLLOW_rule__IntLiteral__ValueAssignment_1_in_rule__IntLiteral__Group__1__Impl7421);
+ pushFollow(FOLLOW_rule__IntLiteral__ValueAssignment_1_in_rule__IntLiteral__Group__1__Impl9400);
rule__IntLiteral__ValueAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getIntLiteralAccess().getValueAssignment_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getIntLiteralAccess().getValueAssignment_1());
+ }
}
@@ -9847,25 +13292,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__StringLiteral__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3733:1: rule__StringLiteral__Group__0 : rule__StringLiteral__Group__0__Impl rule__StringLiteral__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4727: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3737:1: ( rule__StringLiteral__Group__0__Impl rule__StringLiteral__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3738:2: rule__StringLiteral__Group__0__Impl rule__StringLiteral__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4731:1: ( rule__StringLiteral__Group__0__Impl rule__StringLiteral__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4732:2: rule__StringLiteral__Group__0__Impl rule__StringLiteral__Group__1
{
- pushFollow(FOLLOW_rule__StringLiteral__Group__0__Impl_in_rule__StringLiteral__Group__07455);
+ pushFollow(FOLLOW_rule__StringLiteral__Group__0__Impl_in_rule__StringLiteral__Group__09434);
rule__StringLiteral__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__StringLiteral__Group__1_in_rule__StringLiteral__Group__07458);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__StringLiteral__Group__1_in_rule__StringLiteral__Group__09437);
rule__StringLiteral__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9885,25 +13330,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__StringLiteral__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3745:1: rule__StringLiteral__Group__0__Impl : ( () ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4739:1: rule__StringLiteral__Group__0__Impl : ( () ) ;
public final void rule__StringLiteral__Group__0__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3749:1: ( ( () ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3750:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4743:1: ( ( () ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4744:1: ( () )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3750:1: ( () )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3751:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4744:1: ( () )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4745:1: ()
{
- before(grammarAccess.getStringLiteralAccess().getStringLiteralAction_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3752:1: ()
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3754:1:
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getStringLiteralAccess().getStringLiteralAction_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4746:1: ()
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4748:1:
{
}
- after(grammarAccess.getStringLiteralAccess().getStringLiteralAction_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getStringLiteralAccess().getStringLiteralAction_0());
+ }
}
@@ -9922,20 +13371,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__StringLiteral__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3764:1: rule__StringLiteral__Group__1 : rule__StringLiteral__Group__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4758: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3768:1: ( rule__StringLiteral__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3769:2: rule__StringLiteral__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4762:1: ( rule__StringLiteral__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4763:2: rule__StringLiteral__Group__1__Impl
{
- pushFollow(FOLLOW_rule__StringLiteral__Group__1__Impl_in_rule__StringLiteral__Group__17516);
+ pushFollow(FOLLOW_rule__StringLiteral__Group__1__Impl_in_rule__StringLiteral__Group__19495);
rule__StringLiteral__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -9955,31 +13404,35 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__StringLiteral__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3775:1: rule__StringLiteral__Group__1__Impl : ( ( rule__StringLiteral__ValueAssignment_1 ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4769: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3779:1: ( ( ( rule__StringLiteral__ValueAssignment_1 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3780:1: ( ( rule__StringLiteral__ValueAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4773:1: ( ( ( rule__StringLiteral__ValueAssignment_1 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4774:1: ( ( rule__StringLiteral__ValueAssignment_1 ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3780:1: ( ( rule__StringLiteral__ValueAssignment_1 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3781:1: ( rule__StringLiteral__ValueAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4774:1: ( ( rule__StringLiteral__ValueAssignment_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4775:1: ( rule__StringLiteral__ValueAssignment_1 )
{
- before(grammarAccess.getStringLiteralAccess().getValueAssignment_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3782:1: ( rule__StringLiteral__ValueAssignment_1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3782:2: rule__StringLiteral__ValueAssignment_1
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getStringLiteralAccess().getValueAssignment_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4776:1: ( rule__StringLiteral__ValueAssignment_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4776:2: rule__StringLiteral__ValueAssignment_1
{
- pushFollow(FOLLOW_rule__StringLiteral__ValueAssignment_1_in_rule__StringLiteral__Group__1__Impl7543);
+ pushFollow(FOLLOW_rule__StringLiteral__ValueAssignment_1_in_rule__StringLiteral__Group__1__Impl9522);
rule__StringLiteral__ValueAssignment_1();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getStringLiteralAccess().getValueAssignment_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getStringLiteralAccess().getValueAssignment_1());
+ }
}
@@ -10002,25 +13455,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__SignedInteger__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3796:1: rule__SignedInteger__Group__0 : rule__SignedInteger__Group__0__Impl rule__SignedInteger__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4790: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3800:1: ( rule__SignedInteger__Group__0__Impl rule__SignedInteger__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3801:2: rule__SignedInteger__Group__0__Impl rule__SignedInteger__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4794:1: ( rule__SignedInteger__Group__0__Impl rule__SignedInteger__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4795:2: rule__SignedInteger__Group__0__Impl rule__SignedInteger__Group__1
{
- pushFollow(FOLLOW_rule__SignedInteger__Group__0__Impl_in_rule__SignedInteger__Group__07577);
+ pushFollow(FOLLOW_rule__SignedInteger__Group__0__Impl_in_rule__SignedInteger__Group__09556);
rule__SignedInteger__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__SignedInteger__Group__1_in_rule__SignedInteger__Group__07580);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__SignedInteger__Group__1_in_rule__SignedInteger__Group__09559);
rule__SignedInteger__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10040,42 +13493,46 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__SignedInteger__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3808:1: rule__SignedInteger__Group__0__Impl : ( ( rule__SignedInteger__Alternatives_0 )? ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4802: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3812:1: ( ( ( rule__SignedInteger__Alternatives_0 )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3813:1: ( ( rule__SignedInteger__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4806:1: ( ( ( rule__SignedInteger__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4807:1: ( ( rule__SignedInteger__Alternatives_0 )? )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3813:1: ( ( rule__SignedInteger__Alternatives_0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3814:1: ( rule__SignedInteger__Alternatives_0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4807:1: ( ( rule__SignedInteger__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4808:1: ( rule__SignedInteger__Alternatives_0 )?
{
- before(grammarAccess.getSignedIntegerAccess().getAlternatives_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3815:1: ( rule__SignedInteger__Alternatives_0 )?
- int alt28=2;
- int LA28_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSignedIntegerAccess().getAlternatives_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4809:1: ( rule__SignedInteger__Alternatives_0 )?
+ int alt33=2;
+ int LA33_0 = input.LA(1);
- if ( ((LA28_0>=14 && LA28_0<=15)) ) {
- alt28=1;
+ if ( ((LA33_0>=16 && LA33_0<=17)) ) {
+ alt33=1;
}
- switch (alt28) {
+ switch (alt33) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3815:2: rule__SignedInteger__Alternatives_0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4809:2: rule__SignedInteger__Alternatives_0
{
- pushFollow(FOLLOW_rule__SignedInteger__Alternatives_0_in_rule__SignedInteger__Group__0__Impl7607);
+ pushFollow(FOLLOW_rule__SignedInteger__Alternatives_0_in_rule__SignedInteger__Group__0__Impl9586);
rule__SignedInteger__Alternatives_0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
}
- after(grammarAccess.getSignedIntegerAccess().getAlternatives_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSignedIntegerAccess().getAlternatives_0());
+ }
}
@@ -10098,20 +13555,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__SignedInteger__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3825:1: rule__SignedInteger__Group__1 : rule__SignedInteger__Group__1__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4819: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3829:1: ( rule__SignedInteger__Group__1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3830:2: rule__SignedInteger__Group__1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4823:1: ( rule__SignedInteger__Group__1__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4824:2: rule__SignedInteger__Group__1__Impl
{
- pushFollow(FOLLOW_rule__SignedInteger__Group__1__Impl_in_rule__SignedInteger__Group__17638);
+ pushFollow(FOLLOW_rule__SignedInteger__Group__1__Impl_in_rule__SignedInteger__Group__19617);
rule__SignedInteger__Group__1__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10131,21 +13588,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__SignedInteger__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3836:1: rule__SignedInteger__Group__1__Impl : ( RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4830: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3840:1: ( ( RULE_INT ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3841:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4834:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4835:1: ( RULE_INT )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3841:1: ( RULE_INT )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3842:1: RULE_INT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4835:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4836:1: RULE_INT
{
- before(grammarAccess.getSignedIntegerAccess().getINTTerminalRuleCall_1());
- match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__SignedInteger__Group__1__Impl7665);
- after(grammarAccess.getSignedIntegerAccess().getINTTerminalRuleCall_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSignedIntegerAccess().getINTTerminalRuleCall_1());
+ }
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__SignedInteger__Group__1__Impl9644); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSignedIntegerAccess().getINTTerminalRuleCall_1());
+ }
}
@@ -10168,25 +13629,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Decimal__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3857:1: rule__Decimal__Group__0 : rule__Decimal__Group__0__Impl rule__Decimal__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4851: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3861:1: ( rule__Decimal__Group__0__Impl rule__Decimal__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3862:2: rule__Decimal__Group__0__Impl rule__Decimal__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4855:1: ( rule__Decimal__Group__0__Impl rule__Decimal__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4856:2: rule__Decimal__Group__0__Impl rule__Decimal__Group__1
{
- pushFollow(FOLLOW_rule__Decimal__Group__0__Impl_in_rule__Decimal__Group__07698);
+ pushFollow(FOLLOW_rule__Decimal__Group__0__Impl_in_rule__Decimal__Group__09677);
rule__Decimal__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__Decimal__Group__1_in_rule__Decimal__Group__07701);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__Decimal__Group__1_in_rule__Decimal__Group__09680);
rule__Decimal__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10206,42 +13667,46 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Decimal__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3869:1: rule__Decimal__Group__0__Impl : ( ( rule__Decimal__Alternatives_0 )? ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4863: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3873:1: ( ( ( rule__Decimal__Alternatives_0 )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3874:1: ( ( rule__Decimal__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4867:1: ( ( ( rule__Decimal__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4868:1: ( ( rule__Decimal__Alternatives_0 )? )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3874:1: ( ( rule__Decimal__Alternatives_0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3875:1: ( rule__Decimal__Alternatives_0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4868:1: ( ( rule__Decimal__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4869:1: ( rule__Decimal__Alternatives_0 )?
{
- before(grammarAccess.getDecimalAccess().getAlternatives_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3876:1: ( rule__Decimal__Alternatives_0 )?
- int alt29=2;
- int LA29_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalAccess().getAlternatives_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4870:1: ( rule__Decimal__Alternatives_0 )?
+ int alt34=2;
+ int LA34_0 = input.LA(1);
- if ( ((LA29_0>=14 && LA29_0<=15)) ) {
- alt29=1;
+ if ( ((LA34_0>=16 && LA34_0<=17)) ) {
+ alt34=1;
}
- switch (alt29) {
+ switch (alt34) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3876:2: rule__Decimal__Alternatives_0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4870:2: rule__Decimal__Alternatives_0
{
- pushFollow(FOLLOW_rule__Decimal__Alternatives_0_in_rule__Decimal__Group__0__Impl7728);
+ pushFollow(FOLLOW_rule__Decimal__Alternatives_0_in_rule__Decimal__Group__0__Impl9707);
rule__Decimal__Alternatives_0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
}
- after(grammarAccess.getDecimalAccess().getAlternatives_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalAccess().getAlternatives_0());
+ }
}
@@ -10264,25 +13729,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Decimal__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3886:1: rule__Decimal__Group__1 : rule__Decimal__Group__1__Impl rule__Decimal__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4880: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3890:1: ( rule__Decimal__Group__1__Impl rule__Decimal__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3891:2: rule__Decimal__Group__1__Impl rule__Decimal__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4884:1: ( rule__Decimal__Group__1__Impl rule__Decimal__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4885:2: rule__Decimal__Group__1__Impl rule__Decimal__Group__2
{
- pushFollow(FOLLOW_rule__Decimal__Group__1__Impl_in_rule__Decimal__Group__17759);
+ pushFollow(FOLLOW_rule__Decimal__Group__1__Impl_in_rule__Decimal__Group__19738);
rule__Decimal__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__Decimal__Group__2_in_rule__Decimal__Group__17762);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__Decimal__Group__2_in_rule__Decimal__Group__19741);
rule__Decimal__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10302,21 +13767,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Decimal__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3898:1: rule__Decimal__Group__1__Impl : ( RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4892: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3902:1: ( ( RULE_INT ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3903:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4896:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4897:1: ( RULE_INT )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3903:1: ( RULE_INT )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3904:1: RULE_INT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4897:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4898:1: RULE_INT
{
- before(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_1());
- match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Decimal__Group__1__Impl7789);
- after(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_1());
+ }
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Decimal__Group__1__Impl9768); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_1());
+ }
}
@@ -10339,25 +13808,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Decimal__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3915:1: rule__Decimal__Group__2 : rule__Decimal__Group__2__Impl rule__Decimal__Group__3 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4909: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3919:1: ( rule__Decimal__Group__2__Impl rule__Decimal__Group__3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3920:2: rule__Decimal__Group__2__Impl rule__Decimal__Group__3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4913:1: ( rule__Decimal__Group__2__Impl rule__Decimal__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4914:2: rule__Decimal__Group__2__Impl rule__Decimal__Group__3
{
- pushFollow(FOLLOW_rule__Decimal__Group__2__Impl_in_rule__Decimal__Group__27818);
+ pushFollow(FOLLOW_rule__Decimal__Group__2__Impl_in_rule__Decimal__Group__29797);
rule__Decimal__Group__2__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__Decimal__Group__3_in_rule__Decimal__Group__27821);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__Decimal__Group__3_in_rule__Decimal__Group__29800);
rule__Decimal__Group__3();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10377,21 +13846,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Decimal__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3927:1: rule__Decimal__Group__2__Impl : ( '.' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4921:1: rule__Decimal__Group__2__Impl : ( '.' ) ;
public final void rule__Decimal__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3931:1: ( ( '.' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3932:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4925:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4926:1: ( '.' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3932:1: ( '.' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3933:1: '.'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4926:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4927:1: '.'
{
- before(grammarAccess.getDecimalAccess().getFullStopKeyword_2());
- match(input,33,FOLLOW_33_in_rule__Decimal__Group__2__Impl7849);
- after(grammarAccess.getDecimalAccess().getFullStopKeyword_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalAccess().getFullStopKeyword_2());
+ }
+ match(input,41,FOLLOW_41_in_rule__Decimal__Group__2__Impl9828); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalAccess().getFullStopKeyword_2());
+ }
}
@@ -10414,20 +13887,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Decimal__Group__3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3946:1: rule__Decimal__Group__3 : rule__Decimal__Group__3__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4940: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3950:1: ( rule__Decimal__Group__3__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3951:2: rule__Decimal__Group__3__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4944:1: ( rule__Decimal__Group__3__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4945:2: rule__Decimal__Group__3__Impl
{
- pushFollow(FOLLOW_rule__Decimal__Group__3__Impl_in_rule__Decimal__Group__37880);
+ pushFollow(FOLLOW_rule__Decimal__Group__3__Impl_in_rule__Decimal__Group__39859);
rule__Decimal__Group__3__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10447,21 +13920,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Decimal__Group__3__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3957:1: rule__Decimal__Group__3__Impl : ( RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4951: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3961:1: ( ( RULE_INT ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3962:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4955:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4956:1: ( RULE_INT )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3962:1: ( RULE_INT )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3963:1: RULE_INT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4956:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4957:1: RULE_INT
{
- before(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_3());
- match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Decimal__Group__3__Impl7907);
- after(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_3());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_3());
+ }
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Decimal__Group__3__Impl9886); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalAccess().getINTTerminalRuleCall_3());
+ }
}
@@ -10484,25 +13961,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DotDecimal__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3982:1: rule__DotDecimal__Group__0 : rule__DotDecimal__Group__0__Impl rule__DotDecimal__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4976: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3986:1: ( rule__DotDecimal__Group__0__Impl rule__DotDecimal__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3987:2: rule__DotDecimal__Group__0__Impl rule__DotDecimal__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4980:1: ( rule__DotDecimal__Group__0__Impl rule__DotDecimal__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4981:2: rule__DotDecimal__Group__0__Impl rule__DotDecimal__Group__1
{
- pushFollow(FOLLOW_rule__DotDecimal__Group__0__Impl_in_rule__DotDecimal__Group__07944);
+ pushFollow(FOLLOW_rule__DotDecimal__Group__0__Impl_in_rule__DotDecimal__Group__09923);
rule__DotDecimal__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DotDecimal__Group__1_in_rule__DotDecimal__Group__07947);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DotDecimal__Group__1_in_rule__DotDecimal__Group__09926);
rule__DotDecimal__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10522,42 +13999,46 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DotDecimal__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3994:1: rule__DotDecimal__Group__0__Impl : ( ( rule__DotDecimal__Alternatives_0 )? ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4988: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3998:1: ( ( ( rule__DotDecimal__Alternatives_0 )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3999:1: ( ( rule__DotDecimal__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4992:1: ( ( ( rule__DotDecimal__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4993:1: ( ( rule__DotDecimal__Alternatives_0 )? )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:3999:1: ( ( rule__DotDecimal__Alternatives_0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4000:1: ( rule__DotDecimal__Alternatives_0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4993:1: ( ( rule__DotDecimal__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4994:1: ( rule__DotDecimal__Alternatives_0 )?
{
- before(grammarAccess.getDotDecimalAccess().getAlternatives_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4001:1: ( rule__DotDecimal__Alternatives_0 )?
- int alt30=2;
- int LA30_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDotDecimalAccess().getAlternatives_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4995:1: ( rule__DotDecimal__Alternatives_0 )?
+ int alt35=2;
+ int LA35_0 = input.LA(1);
- if ( ((LA30_0>=14 && LA30_0<=15)) ) {
- alt30=1;
+ if ( ((LA35_0>=16 && LA35_0<=17)) ) {
+ alt35=1;
}
- switch (alt30) {
+ switch (alt35) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4001:2: rule__DotDecimal__Alternatives_0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4995:2: rule__DotDecimal__Alternatives_0
{
- pushFollow(FOLLOW_rule__DotDecimal__Alternatives_0_in_rule__DotDecimal__Group__0__Impl7974);
+ pushFollow(FOLLOW_rule__DotDecimal__Alternatives_0_in_rule__DotDecimal__Group__0__Impl9953);
rule__DotDecimal__Alternatives_0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
}
- after(grammarAccess.getDotDecimalAccess().getAlternatives_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDotDecimalAccess().getAlternatives_0());
+ }
}
@@ -10580,25 +14061,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DotDecimal__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4011:1: rule__DotDecimal__Group__1 : rule__DotDecimal__Group__1__Impl rule__DotDecimal__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5005: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4015:1: ( rule__DotDecimal__Group__1__Impl rule__DotDecimal__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4016:2: rule__DotDecimal__Group__1__Impl rule__DotDecimal__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5009:1: ( rule__DotDecimal__Group__1__Impl rule__DotDecimal__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5010:2: rule__DotDecimal__Group__1__Impl rule__DotDecimal__Group__2
{
- pushFollow(FOLLOW_rule__DotDecimal__Group__1__Impl_in_rule__DotDecimal__Group__18005);
+ pushFollow(FOLLOW_rule__DotDecimal__Group__1__Impl_in_rule__DotDecimal__Group__19984);
rule__DotDecimal__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DotDecimal__Group__2_in_rule__DotDecimal__Group__18008);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DotDecimal__Group__2_in_rule__DotDecimal__Group__19987);
rule__DotDecimal__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10618,21 +14099,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DotDecimal__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4023:1: rule__DotDecimal__Group__1__Impl : ( '.' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5017:1: rule__DotDecimal__Group__1__Impl : ( '.' ) ;
public final void rule__DotDecimal__Group__1__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4027:1: ( ( '.' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4028:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5021:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5022:1: ( '.' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4028:1: ( '.' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4029:1: '.'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5022:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5023:1: '.'
{
- before(grammarAccess.getDotDecimalAccess().getFullStopKeyword_1());
- match(input,33,FOLLOW_33_in_rule__DotDecimal__Group__1__Impl8036);
- after(grammarAccess.getDotDecimalAccess().getFullStopKeyword_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDotDecimalAccess().getFullStopKeyword_1());
+ }
+ match(input,41,FOLLOW_41_in_rule__DotDecimal__Group__1__Impl10015); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDotDecimalAccess().getFullStopKeyword_1());
+ }
}
@@ -10655,20 +14140,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DotDecimal__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4042:1: rule__DotDecimal__Group__2 : rule__DotDecimal__Group__2__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5036: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4046:1: ( rule__DotDecimal__Group__2__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4047:2: rule__DotDecimal__Group__2__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5040:1: ( rule__DotDecimal__Group__2__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5041:2: rule__DotDecimal__Group__2__Impl
{
- pushFollow(FOLLOW_rule__DotDecimal__Group__2__Impl_in_rule__DotDecimal__Group__28067);
+ pushFollow(FOLLOW_rule__DotDecimal__Group__2__Impl_in_rule__DotDecimal__Group__210046);
rule__DotDecimal__Group__2__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10688,21 +14173,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DotDecimal__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4053:1: rule__DotDecimal__Group__2__Impl : ( RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5047: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4057:1: ( ( RULE_INT ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4058:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5051:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5052:1: ( RULE_INT )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4058:1: ( RULE_INT )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4059:1: RULE_INT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5052:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5053:1: RULE_INT
{
- before(grammarAccess.getDotDecimalAccess().getINTTerminalRuleCall_2());
- match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DotDecimal__Group__2__Impl8094);
- after(grammarAccess.getDotDecimalAccess().getINTTerminalRuleCall_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDotDecimalAccess().getINTTerminalRuleCall_2());
+ }
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DotDecimal__Group__2__Impl10073); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDotDecimalAccess().getINTTerminalRuleCall_2());
+ }
}
@@ -10725,25 +14214,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalDot__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4076:1: rule__DecimalDot__Group__0 : rule__DecimalDot__Group__0__Impl rule__DecimalDot__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5070: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4080:1: ( rule__DecimalDot__Group__0__Impl rule__DecimalDot__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4081:2: rule__DecimalDot__Group__0__Impl rule__DecimalDot__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5074:1: ( rule__DecimalDot__Group__0__Impl rule__DecimalDot__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5075:2: rule__DecimalDot__Group__0__Impl rule__DecimalDot__Group__1
{
- pushFollow(FOLLOW_rule__DecimalDot__Group__0__Impl_in_rule__DecimalDot__Group__08129);
+ pushFollow(FOLLOW_rule__DecimalDot__Group__0__Impl_in_rule__DecimalDot__Group__010108);
rule__DecimalDot__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DecimalDot__Group__1_in_rule__DecimalDot__Group__08132);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DecimalDot__Group__1_in_rule__DecimalDot__Group__010111);
rule__DecimalDot__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10763,42 +14252,46 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalDot__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4088:1: rule__DecimalDot__Group__0__Impl : ( ( rule__DecimalDot__Alternatives_0 )? ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5082: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4092:1: ( ( ( rule__DecimalDot__Alternatives_0 )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4093:1: ( ( rule__DecimalDot__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5086:1: ( ( ( rule__DecimalDot__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5087:1: ( ( rule__DecimalDot__Alternatives_0 )? )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4093:1: ( ( rule__DecimalDot__Alternatives_0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4094:1: ( rule__DecimalDot__Alternatives_0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5087:1: ( ( rule__DecimalDot__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5088:1: ( rule__DecimalDot__Alternatives_0 )?
{
- before(grammarAccess.getDecimalDotAccess().getAlternatives_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4095:1: ( rule__DecimalDot__Alternatives_0 )?
- int alt31=2;
- int LA31_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalDotAccess().getAlternatives_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5089:1: ( rule__DecimalDot__Alternatives_0 )?
+ int alt36=2;
+ int LA36_0 = input.LA(1);
- if ( ((LA31_0>=14 && LA31_0<=15)) ) {
- alt31=1;
+ if ( ((LA36_0>=16 && LA36_0<=17)) ) {
+ alt36=1;
}
- switch (alt31) {
+ switch (alt36) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4095:2: rule__DecimalDot__Alternatives_0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5089:2: rule__DecimalDot__Alternatives_0
{
- pushFollow(FOLLOW_rule__DecimalDot__Alternatives_0_in_rule__DecimalDot__Group__0__Impl8159);
+ pushFollow(FOLLOW_rule__DecimalDot__Alternatives_0_in_rule__DecimalDot__Group__0__Impl10138);
rule__DecimalDot__Alternatives_0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
}
- after(grammarAccess.getDecimalDotAccess().getAlternatives_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalDotAccess().getAlternatives_0());
+ }
}
@@ -10821,25 +14314,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalDot__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4105:1: rule__DecimalDot__Group__1 : rule__DecimalDot__Group__1__Impl rule__DecimalDot__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5099: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4109:1: ( rule__DecimalDot__Group__1__Impl rule__DecimalDot__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4110:2: rule__DecimalDot__Group__1__Impl rule__DecimalDot__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5103:1: ( rule__DecimalDot__Group__1__Impl rule__DecimalDot__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5104:2: rule__DecimalDot__Group__1__Impl rule__DecimalDot__Group__2
{
- pushFollow(FOLLOW_rule__DecimalDot__Group__1__Impl_in_rule__DecimalDot__Group__18190);
+ pushFollow(FOLLOW_rule__DecimalDot__Group__1__Impl_in_rule__DecimalDot__Group__110169);
rule__DecimalDot__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DecimalDot__Group__2_in_rule__DecimalDot__Group__18193);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DecimalDot__Group__2_in_rule__DecimalDot__Group__110172);
rule__DecimalDot__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10859,21 +14352,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalDot__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4117:1: rule__DecimalDot__Group__1__Impl : ( RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5111: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4121:1: ( ( RULE_INT ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4122:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5115:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5116:1: ( RULE_INT )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4122:1: ( RULE_INT )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4123:1: RULE_INT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5116:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5117:1: RULE_INT
{
- before(grammarAccess.getDecimalDotAccess().getINTTerminalRuleCall_1());
- match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalDot__Group__1__Impl8220);
- after(grammarAccess.getDecimalDotAccess().getINTTerminalRuleCall_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalDotAccess().getINTTerminalRuleCall_1());
+ }
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalDot__Group__1__Impl10199); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalDotAccess().getINTTerminalRuleCall_1());
+ }
}
@@ -10896,20 +14393,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalDot__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4134:1: rule__DecimalDot__Group__2 : rule__DecimalDot__Group__2__Impl ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5128: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4138:1: ( rule__DecimalDot__Group__2__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4139:2: rule__DecimalDot__Group__2__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5132:1: ( rule__DecimalDot__Group__2__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5133:2: rule__DecimalDot__Group__2__Impl
{
- pushFollow(FOLLOW_rule__DecimalDot__Group__2__Impl_in_rule__DecimalDot__Group__28249);
+ pushFollow(FOLLOW_rule__DecimalDot__Group__2__Impl_in_rule__DecimalDot__Group__210228);
rule__DecimalDot__Group__2__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -10929,21 +14426,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalDot__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4145:1: rule__DecimalDot__Group__2__Impl : ( '.' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5139:1: rule__DecimalDot__Group__2__Impl : ( '.' ) ;
public final void rule__DecimalDot__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4149:1: ( ( '.' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4150:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5143:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5144:1: ( '.' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4150:1: ( '.' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4151:1: '.'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5144:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5145:1: '.'
{
- before(grammarAccess.getDecimalDotAccess().getFullStopKeyword_2());
- match(input,33,FOLLOW_33_in_rule__DecimalDot__Group__2__Impl8277);
- after(grammarAccess.getDecimalDotAccess().getFullStopKeyword_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalDotAccess().getFullStopKeyword_2());
+ }
+ match(input,41,FOLLOW_41_in_rule__DecimalDot__Group__2__Impl10256); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalDotAccess().getFullStopKeyword_2());
+ }
}
@@ -10966,25 +14467,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4170:1: rule__DecimalExp__Group__0 : rule__DecimalExp__Group__0__Impl rule__DecimalExp__Group__1 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5164: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4174:1: ( rule__DecimalExp__Group__0__Impl rule__DecimalExp__Group__1 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4175:2: rule__DecimalExp__Group__0__Impl rule__DecimalExp__Group__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5168:1: ( rule__DecimalExp__Group__0__Impl rule__DecimalExp__Group__1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5169:2: rule__DecimalExp__Group__0__Impl rule__DecimalExp__Group__1
{
- pushFollow(FOLLOW_rule__DecimalExp__Group__0__Impl_in_rule__DecimalExp__Group__08314);
+ pushFollow(FOLLOW_rule__DecimalExp__Group__0__Impl_in_rule__DecimalExp__Group__010293);
rule__DecimalExp__Group__0__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DecimalExp__Group__1_in_rule__DecimalExp__Group__08317);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DecimalExp__Group__1_in_rule__DecimalExp__Group__010296);
rule__DecimalExp__Group__1();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -11004,42 +14505,46 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__0__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4182:1: rule__DecimalExp__Group__0__Impl : ( ( rule__DecimalExp__Alternatives_0 )? ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5176: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4186:1: ( ( ( rule__DecimalExp__Alternatives_0 )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4187:1: ( ( rule__DecimalExp__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5180:1: ( ( ( rule__DecimalExp__Alternatives_0 )? ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5181:1: ( ( rule__DecimalExp__Alternatives_0 )? )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4187:1: ( ( rule__DecimalExp__Alternatives_0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4188:1: ( rule__DecimalExp__Alternatives_0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5181:1: ( ( rule__DecimalExp__Alternatives_0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5182:1: ( rule__DecimalExp__Alternatives_0 )?
{
- before(grammarAccess.getDecimalExpAccess().getAlternatives_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4189:1: ( rule__DecimalExp__Alternatives_0 )?
- int alt32=2;
- int LA32_0 = input.LA(1);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalExpAccess().getAlternatives_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5183:1: ( rule__DecimalExp__Alternatives_0 )?
+ int alt37=2;
+ int LA37_0 = input.LA(1);
- if ( ((LA32_0>=14 && LA32_0<=15)) ) {
- alt32=1;
+ if ( ((LA37_0>=16 && LA37_0<=17)) ) {
+ alt37=1;
}
- switch (alt32) {
+ switch (alt37) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4189:2: rule__DecimalExp__Alternatives_0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5183:2: rule__DecimalExp__Alternatives_0
{
- pushFollow(FOLLOW_rule__DecimalExp__Alternatives_0_in_rule__DecimalExp__Group__0__Impl8344);
+ pushFollow(FOLLOW_rule__DecimalExp__Alternatives_0_in_rule__DecimalExp__Group__0__Impl10323);
rule__DecimalExp__Alternatives_0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
}
- after(grammarAccess.getDecimalExpAccess().getAlternatives_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalExpAccess().getAlternatives_0());
+ }
}
@@ -11062,25 +14567,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4199:1: rule__DecimalExp__Group__1 : rule__DecimalExp__Group__1__Impl rule__DecimalExp__Group__2 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5193: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4203:1: ( rule__DecimalExp__Group__1__Impl rule__DecimalExp__Group__2 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4204:2: rule__DecimalExp__Group__1__Impl rule__DecimalExp__Group__2
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5197:1: ( rule__DecimalExp__Group__1__Impl rule__DecimalExp__Group__2 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5198:2: rule__DecimalExp__Group__1__Impl rule__DecimalExp__Group__2
{
- pushFollow(FOLLOW_rule__DecimalExp__Group__1__Impl_in_rule__DecimalExp__Group__18375);
+ pushFollow(FOLLOW_rule__DecimalExp__Group__1__Impl_in_rule__DecimalExp__Group__110354);
rule__DecimalExp__Group__1__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DecimalExp__Group__2_in_rule__DecimalExp__Group__18378);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DecimalExp__Group__2_in_rule__DecimalExp__Group__110357);
rule__DecimalExp__Group__2();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -11100,21 +14605,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4211:1: rule__DecimalExp__Group__1__Impl : ( RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5205: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4215:1: ( ( RULE_INT ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4216:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5209:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5210:1: ( RULE_INT )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4216:1: ( RULE_INT )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4217:1: RULE_INT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5210:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5211:1: RULE_INT
{
- before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_1());
- match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalExp__Group__1__Impl8405);
- after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_1());
+ }
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalExp__Group__1__Impl10384); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_1());
+ }
}
@@ -11137,25 +14646,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4228:1: rule__DecimalExp__Group__2 : rule__DecimalExp__Group__2__Impl rule__DecimalExp__Group__3 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5222: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4232:1: ( rule__DecimalExp__Group__2__Impl rule__DecimalExp__Group__3 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4233:2: rule__DecimalExp__Group__2__Impl rule__DecimalExp__Group__3
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5226:1: ( rule__DecimalExp__Group__2__Impl rule__DecimalExp__Group__3 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5227:2: rule__DecimalExp__Group__2__Impl rule__DecimalExp__Group__3
{
- pushFollow(FOLLOW_rule__DecimalExp__Group__2__Impl_in_rule__DecimalExp__Group__28434);
+ pushFollow(FOLLOW_rule__DecimalExp__Group__2__Impl_in_rule__DecimalExp__Group__210413);
rule__DecimalExp__Group__2__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DecimalExp__Group__3_in_rule__DecimalExp__Group__28437);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DecimalExp__Group__3_in_rule__DecimalExp__Group__210416);
rule__DecimalExp__Group__3();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -11175,21 +14684,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__2__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4240:1: rule__DecimalExp__Group__2__Impl : ( '.' ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5234:1: rule__DecimalExp__Group__2__Impl : ( '.' ) ;
public final void rule__DecimalExp__Group__2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4244:1: ( ( '.' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4245:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5238:1: ( ( '.' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5239:1: ( '.' )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4245:1: ( '.' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4246:1: '.'
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5239:1: ( '.' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5240:1: '.'
{
- before(grammarAccess.getDecimalExpAccess().getFullStopKeyword_2());
- match(input,33,FOLLOW_33_in_rule__DecimalExp__Group__2__Impl8465);
- after(grammarAccess.getDecimalExpAccess().getFullStopKeyword_2());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalExpAccess().getFullStopKeyword_2());
+ }
+ match(input,41,FOLLOW_41_in_rule__DecimalExp__Group__2__Impl10444); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalExpAccess().getFullStopKeyword_2());
+ }
}
@@ -11212,25 +14725,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4259:1: rule__DecimalExp__Group__3 : rule__DecimalExp__Group__3__Impl rule__DecimalExp__Group__4 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5253: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4263:1: ( rule__DecimalExp__Group__3__Impl rule__DecimalExp__Group__4 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4264:2: rule__DecimalExp__Group__3__Impl rule__DecimalExp__Group__4
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5257:1: ( rule__DecimalExp__Group__3__Impl rule__DecimalExp__Group__4 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5258:2: rule__DecimalExp__Group__3__Impl rule__DecimalExp__Group__4
{
- pushFollow(FOLLOW_rule__DecimalExp__Group__3__Impl_in_rule__DecimalExp__Group__38496);
+ pushFollow(FOLLOW_rule__DecimalExp__Group__3__Impl_in_rule__DecimalExp__Group__310475);
rule__DecimalExp__Group__3__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DecimalExp__Group__4_in_rule__DecimalExp__Group__38499);
+ if (state.failed) return ;
+ pushFollow(FOLLOW_rule__DecimalExp__Group__4_in_rule__DecimalExp__Group__310478);
rule__DecimalExp__Group__4();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -11250,21 +14763,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__3__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4271:1: rule__DecimalExp__Group__3__Impl : ( RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5265: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4275:1: ( ( RULE_INT ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4276:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5269:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5270:1: ( RULE_INT )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4276:1: ( RULE_INT )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4277:1: RULE_INT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5270:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5271:1: RULE_INT
{
- before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3());
- match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalExp__Group__3__Impl8526);
- after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3());
+ }
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalExp__Group__3__Impl10505); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3());
+ }
}
@@ -11287,25 +14804,20 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__4"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4288:1: rule__DecimalExp__Group__4 : rule__DecimalExp__Group__4__Impl rule__DecimalExp__Group__5 ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5282: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4292:1: ( rule__DecimalExp__Group__4__Impl rule__DecimalExp__Group__5 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4293:2: rule__DecimalExp__Group__4__Impl rule__DecimalExp__Group__5
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5286:1: ( rule__DecimalExp__Group__4__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5287:2: rule__DecimalExp__Group__4__Impl
{
- pushFollow(FOLLOW_rule__DecimalExp__Group__4__Impl_in_rule__DecimalExp__Group__48555);
+ pushFollow(FOLLOW_rule__DecimalExp__Group__4__Impl_in_rule__DecimalExp__Group__410534);
rule__DecimalExp__Group__4__Impl();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DecimalExp__Group__5_in_rule__DecimalExp__Group__48558);
- rule__DecimalExp__Group__5();
-
- state._fsp--;
-
+ if (state.failed) return ;
}
@@ -11325,21 +14837,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__DecimalExp__Group__4__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4300:1: rule__DecimalExp__Group__4__Impl : ( RULE_ID ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5293: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4304:1: ( ( RULE_ID ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4305:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5297:1: ( ( RULE_EXP ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5298:1: ( RULE_EXP )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4305:1: ( RULE_ID )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4306:1: RULE_ID
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5298:1: ( RULE_EXP )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5299:1: RULE_EXP
{
- before(grammarAccess.getDecimalExpAccess().getIDTerminalRuleCall_4());
- match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__DecimalExp__Group__4__Impl8585);
- after(grammarAccess.getDecimalExpAccess().getIDTerminalRuleCall_4());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4());
+ }
+ match(input,RULE_EXP,FOLLOW_RULE_EXP_in_rule__DecimalExp__Group__4__Impl10561); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4());
+ }
}
@@ -11361,26 +14877,26 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__DecimalExp__Group__4__Impl"
- // $ANTLR start "rule__DecimalExp__Group__5"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4317:1: rule__DecimalExp__Group__5 : rule__DecimalExp__Group__5__Impl rule__DecimalExp__Group__6 ;
- public final void rule__DecimalExp__Group__5() throws RecognitionException {
+ // $ANTLR start "rule__DynamicConfig__UnorderedGroup_2"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5321:1: rule__DynamicConfig__UnorderedGroup_2 : rule__DynamicConfig__UnorderedGroup_2__0 {...}?;
+ public final void rule__DynamicConfig__UnorderedGroup_2() throws RecognitionException {
- int stackSize = keepStackSize();
+ int stackSize = keepStackSize();
+ getUnorderedGroupHelper().enter(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4321:1: ( rule__DecimalExp__Group__5__Impl rule__DecimalExp__Group__6 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4322:2: rule__DecimalExp__Group__5__Impl rule__DecimalExp__Group__6
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5326:1: ( rule__DynamicConfig__UnorderedGroup_2__0 {...}?)
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5327:2: rule__DynamicConfig__UnorderedGroup_2__0 {...}?
{
- pushFollow(FOLLOW_rule__DecimalExp__Group__5__Impl_in_rule__DecimalExp__Group__58614);
- rule__DecimalExp__Group__5__Impl();
+ pushFollow(FOLLOW_rule__DynamicConfig__UnorderedGroup_2__0_in_rule__DynamicConfig__UnorderedGroup_210601);
+ rule__DynamicConfig__UnorderedGroup_2__0();
state._fsp--;
-
- pushFollow(FOLLOW_rule__DecimalExp__Group__6_in_rule__DecimalExp__Group__58617);
- rule__DecimalExp__Group__6();
-
- state._fsp--;
-
+ if (state.failed) return ;
+ if ( ! getUnorderedGroupHelper().canLeave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2()) ) {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ throw new FailedPredicateException(input, "rule__DynamicConfig__UnorderedGroup_2", "getUnorderedGroupHelper().canLeave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2())");
+ }
}
@@ -11391,51 +14907,138 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
finally {
+ getUnorderedGroupHelper().leave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
restoreStackSize(stackSize);
}
return ;
}
- // $ANTLR end "rule__DecimalExp__Group__5"
+ // $ANTLR end "rule__DynamicConfig__UnorderedGroup_2"
- // $ANTLR start "rule__DecimalExp__Group__5__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4329:1: rule__DecimalExp__Group__5__Impl : ( ( rule__DecimalExp__Alternatives_5 )? ) ;
- public final void rule__DecimalExp__Group__5__Impl() throws RecognitionException {
+ // $ANTLR start "rule__DynamicConfig__UnorderedGroup_2__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5338:1: rule__DynamicConfig__UnorderedGroup_2__Impl : ( ({...}? => ( ( ( rule__DynamicConfig__Alternatives_2_0 ) ) ) ) | ({...}? => ( ( ( rule__DynamicConfig__Group_2_1__0 ) ) ) ) ) ;
+ public final void rule__DynamicConfig__UnorderedGroup_2__Impl() throws RecognitionException {
int stackSize = keepStackSize();
+ boolean selected = false;
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4333:1: ( ( ( rule__DecimalExp__Alternatives_5 )? ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4334:1: ( ( rule__DecimalExp__Alternatives_5 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5343:1: ( ( ({...}? => ( ( ( rule__DynamicConfig__Alternatives_2_0 ) ) ) ) | ({...}? => ( ( ( rule__DynamicConfig__Group_2_1__0 ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5344:3: ( ({...}? => ( ( ( rule__DynamicConfig__Alternatives_2_0 ) ) ) ) | ({...}? => ( ( ( rule__DynamicConfig__Group_2_1__0 ) ) ) ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4334:1: ( ( rule__DecimalExp__Alternatives_5 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4335:1: ( rule__DecimalExp__Alternatives_5 )?
- {
- before(grammarAccess.getDecimalExpAccess().getAlternatives_5());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4336:1: ( rule__DecimalExp__Alternatives_5 )?
- int alt33=2;
- int LA33_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5344:3: ( ({...}? => ( ( ( rule__DynamicConfig__Alternatives_2_0 ) ) ) ) | ({...}? => ( ( ( rule__DynamicConfig__Group_2_1__0 ) ) ) ) )
+ int alt38=2;
+ int LA38_0 = input.LA(1);
- if ( ((LA33_0>=14 && LA33_0<=15)) ) {
- alt33=1;
+ if ( LA38_0 >=22 && LA38_0<=23 && getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0) ) {
+ alt38=1;
}
- switch (alt33) {
+ else if ( LA38_0 ==25 && getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1) ) {
+ alt38=2;
+ }
+ else {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ NoViableAltException nvae =
+ new NoViableAltException("", 38, 0, input);
+
+ throw nvae;
+ }
+ switch (alt38) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4336:2: rule__DecimalExp__Alternatives_5
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5346:4: ({...}? => ( ( ( rule__DynamicConfig__Alternatives_2_0 ) ) ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5346:4: ({...}? => ( ( ( rule__DynamicConfig__Alternatives_2_0 ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5347:5: {...}? => ( ( ( rule__DynamicConfig__Alternatives_2_0 ) ) )
+ {
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0) ) {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ throw new FailedPredicateException(input, "rule__DynamicConfig__UnorderedGroup_2__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0)");
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5347:110: ( ( ( rule__DynamicConfig__Alternatives_2_0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5348:6: ( ( rule__DynamicConfig__Alternatives_2_0 ) )
{
- pushFollow(FOLLOW_rule__DecimalExp__Alternatives_5_in_rule__DecimalExp__Group__5__Impl8644);
- rule__DecimalExp__Alternatives_5();
+ getUnorderedGroupHelper().select(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0);
+ selected = true;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5354:6: ( ( rule__DynamicConfig__Alternatives_2_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5356:7: ( rule__DynamicConfig__Alternatives_2_0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getAlternatives_2_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5357:7: ( rule__DynamicConfig__Alternatives_2_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5357:8: rule__DynamicConfig__Alternatives_2_0
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Alternatives_2_0_in_rule__DynamicConfig__UnorderedGroup_2__Impl10690);
+ rule__DynamicConfig__Alternatives_2_0();
state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getAlternatives_2_0());
+ }
+
+ }
+
+
+ }
+
+
+ }
}
break;
+ case 2 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5363:4: ({...}? => ( ( ( rule__DynamicConfig__Group_2_1__0 ) ) ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5363:4: ({...}? => ( ( ( rule__DynamicConfig__Group_2_1__0 ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5364:5: {...}? => ( ( ( rule__DynamicConfig__Group_2_1__0 ) ) )
+ {
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1) ) {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ throw new FailedPredicateException(input, "rule__DynamicConfig__UnorderedGroup_2__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1)");
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5364:110: ( ( ( rule__DynamicConfig__Group_2_1__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5365:6: ( ( rule__DynamicConfig__Group_2_1__0 ) )
+ {
+ getUnorderedGroupHelper().select(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1);
+ selected = true;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5371:6: ( ( rule__DynamicConfig__Group_2_1__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5373:7: ( rule__DynamicConfig__Group_2_1__0 )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getGroup_2_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5374:7: ( rule__DynamicConfig__Group_2_1__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5374:8: rule__DynamicConfig__Group_2_1__0
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__Group_2_1__0_in_rule__DynamicConfig__UnorderedGroup_2__Impl10781);
+ rule__DynamicConfig__Group_2_1__0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getGroup_2_1());
+ }
+
+ }
+
+
+ }
- }
- after(grammarAccess.getDecimalExpAccess().getAlternatives_5());
+ }
+
+
+ }
+ break;
}
@@ -11449,28 +15052,55 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
finally {
+ if (selected)
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
restoreStackSize(stackSize);
}
return ;
}
- // $ANTLR end "rule__DecimalExp__Group__5__Impl"
+ // $ANTLR end "rule__DynamicConfig__UnorderedGroup_2__Impl"
- // $ANTLR start "rule__DecimalExp__Group__6"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4346:1: rule__DecimalExp__Group__6 : rule__DecimalExp__Group__6__Impl ;
- public final void rule__DecimalExp__Group__6() throws RecognitionException {
+ // $ANTLR start "rule__DynamicConfig__UnorderedGroup_2__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5389:1: rule__DynamicConfig__UnorderedGroup_2__0 : rule__DynamicConfig__UnorderedGroup_2__Impl ( rule__DynamicConfig__UnorderedGroup_2__1 )? ;
+ public final void rule__DynamicConfig__UnorderedGroup_2__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4350:1: ( rule__DecimalExp__Group__6__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4351:2: rule__DecimalExp__Group__6__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5393:1: ( rule__DynamicConfig__UnorderedGroup_2__Impl ( rule__DynamicConfig__UnorderedGroup_2__1 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5394:2: rule__DynamicConfig__UnorderedGroup_2__Impl ( rule__DynamicConfig__UnorderedGroup_2__1 )?
{
- pushFollow(FOLLOW_rule__DecimalExp__Group__6__Impl_in_rule__DecimalExp__Group__68675);
- rule__DecimalExp__Group__6__Impl();
+ pushFollow(FOLLOW_rule__DynamicConfig__UnorderedGroup_2__Impl_in_rule__DynamicConfig__UnorderedGroup_2__010840);
+ rule__DynamicConfig__UnorderedGroup_2__Impl();
state._fsp--;
+ if (state.failed) return ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5395:2: ( rule__DynamicConfig__UnorderedGroup_2__1 )?
+ int alt39=2;
+ int LA39_0 = input.LA(1);
+
+ if ( LA39_0 >=22 && LA39_0<=23 && getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0) ) {
+ alt39=1;
+ }
+ else if ( LA39_0 ==25 && getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1) ) {
+ alt39=1;
+ }
+ switch (alt39) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5395:2: rule__DynamicConfig__UnorderedGroup_2__1
+ {
+ pushFollow(FOLLOW_rule__DynamicConfig__UnorderedGroup_2__1_in_rule__DynamicConfig__UnorderedGroup_2__010843);
+ rule__DynamicConfig__UnorderedGroup_2__1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+
+ }
}
@@ -11487,28 +15117,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__DecimalExp__Group__6"
+ // $ANTLR end "rule__DynamicConfig__UnorderedGroup_2__0"
- // $ANTLR start "rule__DecimalExp__Group__6__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4357:1: rule__DecimalExp__Group__6__Impl : ( RULE_INT ) ;
- public final void rule__DecimalExp__Group__6__Impl() throws RecognitionException {
+ // $ANTLR start "rule__DynamicConfig__UnorderedGroup_2__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5402:1: rule__DynamicConfig__UnorderedGroup_2__1 : rule__DynamicConfig__UnorderedGroup_2__Impl ;
+ public final void rule__DynamicConfig__UnorderedGroup_2__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4361:1: ( ( RULE_INT ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4362:1: ( RULE_INT )
- {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4362:1: ( RULE_INT )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4363:1: RULE_INT
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5406:1: ( rule__DynamicConfig__UnorderedGroup_2__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5407:2: rule__DynamicConfig__UnorderedGroup_2__Impl
{
- before(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_6());
- match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DecimalExp__Group__6__Impl8702);
- after(grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_6());
-
- }
+ pushFollow(FOLLOW_rule__DynamicConfig__UnorderedGroup_2__Impl_in_rule__DynamicConfig__UnorderedGroup_2__110868);
+ rule__DynamicConfig__UnorderedGroup_2__Impl();
+ state._fsp--;
+ if (state.failed) return ;
}
@@ -11524,39 +15150,39 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__DecimalExp__Group__6__Impl"
+ // $ANTLR end "rule__DynamicConfig__UnorderedGroup_2__1"
- // $ANTLR start "rule__ProtocolClassConfig__UnorderedGroup_3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4389:1: rule__ProtocolClassConfig__UnorderedGroup_3 : ( rule__ProtocolClassConfig__UnorderedGroup_3__0 )? ;
- public final void rule__ProtocolClassConfig__UnorderedGroup_3() throws RecognitionException {
+ // $ANTLR start "rule__ActorInstanceConfig__UnorderedGroup_5"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5418:1: rule__ActorInstanceConfig__UnorderedGroup_5 : ( rule__ActorInstanceConfig__UnorderedGroup_5__0 )? ;
+ public final void rule__ActorInstanceConfig__UnorderedGroup_5() throws RecognitionException {
int stackSize = keepStackSize();
- getUnorderedGroupHelper().enter(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
+ getUnorderedGroupHelper().enter(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4394:1: ( ( rule__ProtocolClassConfig__UnorderedGroup_3__0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4395:2: ( rule__ProtocolClassConfig__UnorderedGroup_3__0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5423:1: ( ( rule__ActorInstanceConfig__UnorderedGroup_5__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5424:2: ( rule__ActorInstanceConfig__UnorderedGroup_5__0 )?
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4395:2: ( rule__ProtocolClassConfig__UnorderedGroup_3__0 )?
- int alt34=2;
- int LA34_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5424:2: ( rule__ActorInstanceConfig__UnorderedGroup_5__0 )?
+ int alt40=2;
+ int LA40_0 = input.LA(1);
- if ( LA34_0 ==22 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
- alt34=1;
+ if ( LA40_0 ==34 && getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0) ) {
+ alt40=1;
}
- else if ( LA34_0 ==23 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
- alt34=1;
+ else if ( LA40_0 ==33 && getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1) ) {
+ alt40=1;
}
- switch (alt34) {
+ switch (alt40) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4395:2: rule__ProtocolClassConfig__UnorderedGroup_3__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5424:2: rule__ActorInstanceConfig__UnorderedGroup_5__0
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__0_in_rule__ProtocolClassConfig__UnorderedGroup_38746);
- rule__ProtocolClassConfig__UnorderedGroup_3__0();
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5__0_in_rule__ActorInstanceConfig__UnorderedGroup_510896);
+ rule__ActorInstanceConfig__UnorderedGroup_5__0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
@@ -11573,77 +15199,138 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
finally {
- getUnorderedGroupHelper().leave(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
+ getUnorderedGroupHelper().leave(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
restoreStackSize(stackSize);
}
return ;
}
- // $ANTLR end "rule__ProtocolClassConfig__UnorderedGroup_3"
+ // $ANTLR end "rule__ActorInstanceConfig__UnorderedGroup_5"
- // $ANTLR start "rule__ProtocolClassConfig__UnorderedGroup_3__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4405:1: rule__ProtocolClassConfig__UnorderedGroup_3__Impl : ( ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) ) | ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) ) ) ;
- public final void rule__ProtocolClassConfig__UnorderedGroup_3__Impl() throws RecognitionException {
+ // $ANTLR start "rule__ActorInstanceConfig__UnorderedGroup_5__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5434:1: rule__ActorInstanceConfig__UnorderedGroup_5__Impl : ( ({...}? => ( ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) ) ) ) | ({...}? => ( ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) ) ) ) ) ;
+ public final void rule__ActorInstanceConfig__UnorderedGroup_5__Impl() throws RecognitionException {
int stackSize = keepStackSize();
boolean selected = false;
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4410:1: ( ( ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) ) | ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4411:3: ( ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) ) | ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5439:1: ( ( ({...}? => ( ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) ) ) ) | ({...}? => ( ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5440:3: ( ({...}? => ( ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) ) ) ) | ({...}? => ( ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) ) ) ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4411:3: ( ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) ) | ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) ) )
- int alt35=2;
- int LA35_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5440:3: ( ({...}? => ( ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) ) ) ) | ({...}? => ( ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) ) ) ) )
+ int alt43=2;
+ int LA43_0 = input.LA(1);
- if ( LA35_0 ==22 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
- alt35=1;
+ if ( LA43_0 ==34 && getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0) ) {
+ alt43=1;
}
- else if ( LA35_0 ==23 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
- alt35=2;
+ else if ( LA43_0 ==33 && getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1) ) {
+ alt43=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 35, 0, input);
+ new NoViableAltException("", 43, 0, input);
throw nvae;
}
- switch (alt35) {
+ switch (alt43) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4413:4: ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5442:4: ({...}? => ( ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) ) ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4413:4: ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4414:5: {...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5442:4: ({...}? => ( ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5443:5: {...}? => ( ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) ) )
{
- if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
- throw new FailedPredicateException(input, "rule__ProtocolClassConfig__UnorderedGroup_3__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0)");
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0) ) {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ throw new FailedPredicateException(input, "rule__ActorInstanceConfig__UnorderedGroup_5__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0)");
}
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4414:116: ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4415:6: ( ( rule__ProtocolClassConfig__Group_3_0__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5443:116: ( ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5444:6: ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) )
{
-
- getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0);
-
-
- selected = true;
-
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4421:6: ( ( rule__ProtocolClassConfig__Group_3_0__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4423:7: ( rule__ProtocolClassConfig__Group_3_0__0 )
+ getUnorderedGroupHelper().select(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0);
+ selected = true;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5450:6: ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5451:6: ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) ) ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* )
{
- before(grammarAccess.getProtocolClassConfigAccess().getGroup_3_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4424:7: ( rule__ProtocolClassConfig__Group_3_0__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4424:8: rule__ProtocolClassConfig__Group_3_0__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5451:6: ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5452:7: ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_0__0_in_rule__ProtocolClassConfig__UnorderedGroup_3__Impl8833);
- rule__ProtocolClassConfig__Group_3_0__0();
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5453:7: ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5453:8: rule__ActorInstanceConfig__AttributesAssignment_5_0
+ {
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__AttributesAssignment_5_0_in_rule__ActorInstanceConfig__UnorderedGroup_5__Impl10984);
+ rule__ActorInstanceConfig__AttributesAssignment_5_0();
state._fsp--;
+ if (state.failed) return ;
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5_0());
+ }
+
+ }
+
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5456:6: ( ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5457:7: ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )*
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5458:7: ( ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0 )*
+ loop41:
+ do {
+ int alt41=2;
+ int LA41_0 = input.LA(1);
+
+ if ( (LA41_0==34) ) {
+ int LA41_1 = input.LA(2);
+
+ if ( (LA41_1==RULE_ID) ) {
+ int LA41_3 = input.LA(3);
+
+ if ( (synpred1_InternalConfig()) ) {
+ alt41=1;
+ }
+
+
+ }
+
+
+ }
+
+
+ switch (alt41) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5458:8: ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )=> rule__ActorInstanceConfig__AttributesAssignment_5_0
+ {
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__AttributesAssignment_5_0_in_rule__ActorInstanceConfig__UnorderedGroup_5__Impl11028);
+ rule__ActorInstanceConfig__AttributesAssignment_5_0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+
+ default :
+ break loop41;
+ }
+ } while (true);
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getAttributesAssignment_5_0());
+ }
}
- after(grammarAccess.getProtocolClassConfigAccess().getGroup_3_0());
}
@@ -11657,39 +15344,93 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4430:4: ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5464:4: ({...}? => ( ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) ) ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4430:4: ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4431:5: {...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5464:4: ({...}? => ( ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5465:5: {...}? => ( ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) ) )
{
- if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
- throw new FailedPredicateException(input, "rule__ProtocolClassConfig__UnorderedGroup_3__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1)");
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1) ) {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ throw new FailedPredicateException(input, "rule__ActorInstanceConfig__UnorderedGroup_5__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1)");
}
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4431:116: ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4432:6: ( ( rule__ProtocolClassConfig__Group_3_1__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5465:116: ( ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5466:6: ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) )
{
-
- getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1);
-
-
- selected = true;
-
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4438:6: ( ( rule__ProtocolClassConfig__Group_3_1__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4440:7: ( rule__ProtocolClassConfig__Group_3_1__0 )
+ getUnorderedGroupHelper().select(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1);
+ selected = true;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5472:6: ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5473:6: ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) ) ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* )
{
- before(grammarAccess.getProtocolClassConfigAccess().getGroup_3_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4441:7: ( rule__ProtocolClassConfig__Group_3_1__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4441:8: rule__ProtocolClassConfig__Group_3_1__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5473:6: ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5474:7: ( rule__ActorInstanceConfig__PortsAssignment_5_1 )
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_1__0_in_rule__ProtocolClassConfig__UnorderedGroup_3__Impl8924);
- rule__ProtocolClassConfig__Group_3_1__0();
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_5_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5475:7: ( rule__ActorInstanceConfig__PortsAssignment_5_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5475:8: rule__ActorInstanceConfig__PortsAssignment_5_1
+ {
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__PortsAssignment_5_1_in_rule__ActorInstanceConfig__UnorderedGroup_5__Impl11127);
+ rule__ActorInstanceConfig__PortsAssignment_5_1();
state._fsp--;
+ if (state.failed) return ;
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_5_1());
+ }
+
+ }
+
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5478:6: ( ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )* )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5479:7: ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )*
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_5_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5480:7: ( ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1 )*
+ loop42:
+ do {
+ int alt42=2;
+ int LA42_0 = input.LA(1);
+
+ if ( (LA42_0==33) ) {
+ int LA42_2 = input.LA(2);
+
+ if ( (synpred2_InternalConfig()) ) {
+ alt42=1;
+ }
+
+
+ }
+
+
+ switch (alt42) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5480:8: ( rule__ActorInstanceConfig__PortsAssignment_5_1 )=> rule__ActorInstanceConfig__PortsAssignment_5_1
+ {
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__PortsAssignment_5_1_in_rule__ActorInstanceConfig__UnorderedGroup_5__Impl11171);
+ rule__ActorInstanceConfig__PortsAssignment_5_1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ break;
+
+ default :
+ break loop42;
+ }
+ } while (true);
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getPortsAssignment_5_1());
+ }
}
- after(grammarAccess.getProtocolClassConfigAccess().getGroup_3_1());
}
@@ -11716,49 +15457,49 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
finally {
if (selected)
- getUnorderedGroupHelper().returnFromSelection(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
restoreStackSize(stackSize);
}
return ;
}
- // $ANTLR end "rule__ProtocolClassConfig__UnorderedGroup_3__Impl"
+ // $ANTLR end "rule__ActorInstanceConfig__UnorderedGroup_5__Impl"
- // $ANTLR start "rule__ProtocolClassConfig__UnorderedGroup_3__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4456:1: rule__ProtocolClassConfig__UnorderedGroup_3__0 : rule__ProtocolClassConfig__UnorderedGroup_3__Impl ( rule__ProtocolClassConfig__UnorderedGroup_3__1 )? ;
- public final void rule__ProtocolClassConfig__UnorderedGroup_3__0() throws RecognitionException {
+ // $ANTLR start "rule__ActorInstanceConfig__UnorderedGroup_5__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5495:1: rule__ActorInstanceConfig__UnorderedGroup_5__0 : rule__ActorInstanceConfig__UnorderedGroup_5__Impl ( rule__ActorInstanceConfig__UnorderedGroup_5__1 )? ;
+ public final void rule__ActorInstanceConfig__UnorderedGroup_5__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4460:1: ( rule__ProtocolClassConfig__UnorderedGroup_3__Impl ( rule__ProtocolClassConfig__UnorderedGroup_3__1 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4461:2: rule__ProtocolClassConfig__UnorderedGroup_3__Impl ( rule__ProtocolClassConfig__UnorderedGroup_3__1 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5499:1: ( rule__ActorInstanceConfig__UnorderedGroup_5__Impl ( rule__ActorInstanceConfig__UnorderedGroup_5__1 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5500:2: rule__ActorInstanceConfig__UnorderedGroup_5__Impl ( rule__ActorInstanceConfig__UnorderedGroup_5__1 )?
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__Impl_in_rule__ProtocolClassConfig__UnorderedGroup_3__08983);
- rule__ProtocolClassConfig__UnorderedGroup_3__Impl();
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5__Impl_in_rule__ActorInstanceConfig__UnorderedGroup_5__011237);
+ rule__ActorInstanceConfig__UnorderedGroup_5__Impl();
state._fsp--;
+ if (state.failed) return ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5501:2: ( rule__ActorInstanceConfig__UnorderedGroup_5__1 )?
+ int alt44=2;
+ int LA44_0 = input.LA(1);
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4462:2: ( rule__ProtocolClassConfig__UnorderedGroup_3__1 )?
- int alt36=2;
- int LA36_0 = input.LA(1);
-
- if ( LA36_0 ==22 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
- alt36=1;
+ if ( LA44_0 ==34 && getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0) ) {
+ alt44=1;
}
- else if ( LA36_0 ==23 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
- alt36=1;
+ else if ( LA44_0 ==33 && getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1) ) {
+ alt44=1;
}
- switch (alt36) {
+ switch (alt44) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4462:2: rule__ProtocolClassConfig__UnorderedGroup_3__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5501:2: rule__ActorInstanceConfig__UnorderedGroup_5__1
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__1_in_rule__ProtocolClassConfig__UnorderedGroup_3__08986);
- rule__ProtocolClassConfig__UnorderedGroup_3__1();
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5__1_in_rule__ActorInstanceConfig__UnorderedGroup_5__011240);
+ rule__ActorInstanceConfig__UnorderedGroup_5__1();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
@@ -11780,24 +15521,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__ProtocolClassConfig__UnorderedGroup_3__0"
+ // $ANTLR end "rule__ActorInstanceConfig__UnorderedGroup_5__0"
- // $ANTLR start "rule__ProtocolClassConfig__UnorderedGroup_3__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4469:1: rule__ProtocolClassConfig__UnorderedGroup_3__1 : rule__ProtocolClassConfig__UnorderedGroup_3__Impl ;
- public final void rule__ProtocolClassConfig__UnorderedGroup_3__1() throws RecognitionException {
+ // $ANTLR start "rule__ActorInstanceConfig__UnorderedGroup_5__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5508:1: rule__ActorInstanceConfig__UnorderedGroup_5__1 : rule__ActorInstanceConfig__UnorderedGroup_5__Impl ;
+ public final void rule__ActorInstanceConfig__UnorderedGroup_5__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4473:1: ( rule__ProtocolClassConfig__UnorderedGroup_3__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4474:2: rule__ProtocolClassConfig__UnorderedGroup_3__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5512:1: ( rule__ActorInstanceConfig__UnorderedGroup_5__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5513:2: rule__ActorInstanceConfig__UnorderedGroup_5__Impl
{
- pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__Impl_in_rule__ProtocolClassConfig__UnorderedGroup_3__19011);
- rule__ProtocolClassConfig__UnorderedGroup_3__Impl();
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5__Impl_in_rule__ActorInstanceConfig__UnorderedGroup_5__111265);
+ rule__ActorInstanceConfig__UnorderedGroup_5__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -11813,39 +15554,39 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__ProtocolClassConfig__UnorderedGroup_3__1"
+ // $ANTLR end "rule__ActorInstanceConfig__UnorderedGroup_5__1"
- // $ANTLR start "rule__AttrClassConfig__UnorderedGroup_3_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4485:1: rule__AttrClassConfig__UnorderedGroup_3_1 : ( rule__AttrClassConfig__UnorderedGroup_3_1__0 )? ;
- public final void rule__AttrClassConfig__UnorderedGroup_3_1() throws RecognitionException {
+ // $ANTLR start "rule__ProtocolClassConfig__UnorderedGroup_3"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5524:1: rule__ProtocolClassConfig__UnorderedGroup_3 : ( rule__ProtocolClassConfig__UnorderedGroup_3__0 )? ;
+ public final void rule__ProtocolClassConfig__UnorderedGroup_3() throws RecognitionException {
int stackSize = keepStackSize();
- getUnorderedGroupHelper().enter(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
+ getUnorderedGroupHelper().enter(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4490:1: ( ( rule__AttrClassConfig__UnorderedGroup_3_1__0 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4491:2: ( rule__AttrClassConfig__UnorderedGroup_3_1__0 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5529:1: ( ( rule__ProtocolClassConfig__UnorderedGroup_3__0 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5530:2: ( rule__ProtocolClassConfig__UnorderedGroup_3__0 )?
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4491:2: ( rule__AttrClassConfig__UnorderedGroup_3_1__0 )?
- int alt37=2;
- int LA37_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5530:2: ( rule__ProtocolClassConfig__UnorderedGroup_3__0 )?
+ int alt45=2;
+ int LA45_0 = input.LA(1);
- if ( LA37_0 ==28 && getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0) ) {
- alt37=1;
+ if ( LA45_0 ==30 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
+ alt45=1;
}
- else if ( LA37_0 ==29 && getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1) ) {
- alt37=1;
+ else if ( LA45_0 ==31 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
+ alt45=1;
}
- switch (alt37) {
+ switch (alt45) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4491:2: rule__AttrClassConfig__UnorderedGroup_3_1__0
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5530:2: rule__ProtocolClassConfig__UnorderedGroup_3__0
{
- pushFollow(FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1__0_in_rule__AttrClassConfig__UnorderedGroup_3_19039);
- rule__AttrClassConfig__UnorderedGroup_3_1__0();
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__0_in_rule__ProtocolClassConfig__UnorderedGroup_311293);
+ rule__ProtocolClassConfig__UnorderedGroup_3__0();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
@@ -11862,77 +15603,79 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
finally {
- getUnorderedGroupHelper().leave(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
+ getUnorderedGroupHelper().leave(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
restoreStackSize(stackSize);
}
return ;
}
- // $ANTLR end "rule__AttrClassConfig__UnorderedGroup_3_1"
+ // $ANTLR end "rule__ProtocolClassConfig__UnorderedGroup_3"
- // $ANTLR start "rule__AttrClassConfig__UnorderedGroup_3_1__Impl"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4501:1: rule__AttrClassConfig__UnorderedGroup_3_1__Impl : ( ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_0__0 ) ) ) ) | ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_1__0 ) ) ) ) ) ;
- public final void rule__AttrClassConfig__UnorderedGroup_3_1__Impl() throws RecognitionException {
+ // $ANTLR start "rule__ProtocolClassConfig__UnorderedGroup_3__Impl"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5540:1: rule__ProtocolClassConfig__UnorderedGroup_3__Impl : ( ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) ) | ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) ) ) ;
+ public final void rule__ProtocolClassConfig__UnorderedGroup_3__Impl() throws RecognitionException {
int stackSize = keepStackSize();
boolean selected = false;
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4506:1: ( ( ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_0__0 ) ) ) ) | ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_1__0 ) ) ) ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4507:3: ( ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_0__0 ) ) ) ) | ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_1__0 ) ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5545:1: ( ( ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) ) | ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5546:3: ( ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) ) | ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4507:3: ( ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_0__0 ) ) ) ) | ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_1__0 ) ) ) ) )
- int alt38=2;
- int LA38_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5546:3: ( ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) ) | ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) ) )
+ int alt46=2;
+ int LA46_0 = input.LA(1);
- if ( LA38_0 ==28 && getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0) ) {
- alt38=1;
+ if ( LA46_0 ==30 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
+ alt46=1;
}
- else if ( LA38_0 ==29 && getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1) ) {
- alt38=2;
+ else if ( LA46_0 ==31 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
+ alt46=2;
}
else {
+ if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("", 38, 0, input);
+ new NoViableAltException("", 46, 0, input);
throw nvae;
}
- switch (alt38) {
+ switch (alt46) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4509:4: ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_0__0 ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5548:4: ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4509:4: ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_0__0 ) ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4510:5: {...}? => ( ( ( rule__AttrClassConfig__Group_3_1_0__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5548:4: ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5549:5: {...}? => ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) )
{
- if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0) ) {
- throw new FailedPredicateException(input, "rule__AttrClassConfig__UnorderedGroup_3_1__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0)");
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ throw new FailedPredicateException(input, "rule__ProtocolClassConfig__UnorderedGroup_3__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0)");
}
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4510:114: ( ( ( rule__AttrClassConfig__Group_3_1_0__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4511:6: ( ( rule__AttrClassConfig__Group_3_1_0__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5549:116: ( ( ( rule__ProtocolClassConfig__Group_3_0__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5550:6: ( ( rule__ProtocolClassConfig__Group_3_0__0 ) )
{
-
- getUnorderedGroupHelper().select(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0);
-
-
- selected = true;
-
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4517:6: ( ( rule__AttrClassConfig__Group_3_1_0__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4519:7: ( rule__AttrClassConfig__Group_3_1_0__0 )
+ getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0);
+ selected = true;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5556:6: ( ( rule__ProtocolClassConfig__Group_3_0__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5558:7: ( rule__ProtocolClassConfig__Group_3_0__0 )
{
- before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4520:7: ( rule__AttrClassConfig__Group_3_1_0__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4520:8: rule__AttrClassConfig__Group_3_1_0__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getGroup_3_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5559:7: ( rule__ProtocolClassConfig__Group_3_0__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5559:8: rule__ProtocolClassConfig__Group_3_0__0
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_0__0_in_rule__AttrClassConfig__UnorderedGroup_3_1__Impl9126);
- rule__AttrClassConfig__Group_3_1_0__0();
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_0__0_in_rule__ProtocolClassConfig__UnorderedGroup_3__Impl11380);
+ rule__ProtocolClassConfig__Group_3_0__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getGroup_3_0());
+ }
}
@@ -11946,39 +15689,40 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4526:4: ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_1__0 ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5565:4: ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4526:4: ({...}? => ( ( ( rule__AttrClassConfig__Group_3_1_1__0 ) ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4527:5: {...}? => ( ( ( rule__AttrClassConfig__Group_3_1_1__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5565:4: ({...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5566:5: {...}? => ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) )
{
- if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1) ) {
- throw new FailedPredicateException(input, "rule__AttrClassConfig__UnorderedGroup_3_1__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1)");
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
+ if (state.backtracking>0) {state.failed=true; return ;}
+ throw new FailedPredicateException(input, "rule__ProtocolClassConfig__UnorderedGroup_3__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1)");
}
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4527:114: ( ( ( rule__AttrClassConfig__Group_3_1_1__0 ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4528:6: ( ( rule__AttrClassConfig__Group_3_1_1__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5566:116: ( ( ( rule__ProtocolClassConfig__Group_3_1__0 ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5567:6: ( ( rule__ProtocolClassConfig__Group_3_1__0 ) )
{
-
- getUnorderedGroupHelper().select(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1);
-
-
- selected = true;
-
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4534:6: ( ( rule__AttrClassConfig__Group_3_1_1__0 ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4536:7: ( rule__AttrClassConfig__Group_3_1_1__0 )
+ getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1);
+ selected = true;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5573:6: ( ( rule__ProtocolClassConfig__Group_3_1__0 ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5575:7: ( rule__ProtocolClassConfig__Group_3_1__0 )
{
- before(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_1());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4537:7: ( rule__AttrClassConfig__Group_3_1_1__0 )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4537:8: rule__AttrClassConfig__Group_3_1_1__0
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getGroup_3_1());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5576:7: ( rule__ProtocolClassConfig__Group_3_1__0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5576:8: rule__ProtocolClassConfig__Group_3_1__0
{
- pushFollow(FOLLOW_rule__AttrClassConfig__Group_3_1_1__0_in_rule__AttrClassConfig__UnorderedGroup_3_1__Impl9217);
- rule__AttrClassConfig__Group_3_1_1__0();
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__Group_3_1__0_in_rule__ProtocolClassConfig__UnorderedGroup_3__Impl11471);
+ rule__ProtocolClassConfig__Group_3_1__0();
state._fsp--;
-
+ if (state.failed) return ;
}
- after(grammarAccess.getAttrClassConfigAccess().getGroup_3_1_1());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getGroup_3_1());
+ }
}
@@ -12005,49 +15749,49 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
finally {
if (selected)
- getUnorderedGroupHelper().returnFromSelection(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
restoreStackSize(stackSize);
}
return ;
}
- // $ANTLR end "rule__AttrClassConfig__UnorderedGroup_3_1__Impl"
+ // $ANTLR end "rule__ProtocolClassConfig__UnorderedGroup_3__Impl"
- // $ANTLR start "rule__AttrClassConfig__UnorderedGroup_3_1__0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4552:1: rule__AttrClassConfig__UnorderedGroup_3_1__0 : rule__AttrClassConfig__UnorderedGroup_3_1__Impl ( rule__AttrClassConfig__UnorderedGroup_3_1__1 )? ;
- public final void rule__AttrClassConfig__UnorderedGroup_3_1__0() throws RecognitionException {
+ // $ANTLR start "rule__ProtocolClassConfig__UnorderedGroup_3__0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5591:1: rule__ProtocolClassConfig__UnorderedGroup_3__0 : rule__ProtocolClassConfig__UnorderedGroup_3__Impl ( rule__ProtocolClassConfig__UnorderedGroup_3__1 )? ;
+ public final void rule__ProtocolClassConfig__UnorderedGroup_3__0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4556:1: ( rule__AttrClassConfig__UnorderedGroup_3_1__Impl ( rule__AttrClassConfig__UnorderedGroup_3_1__1 )? )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4557:2: rule__AttrClassConfig__UnorderedGroup_3_1__Impl ( rule__AttrClassConfig__UnorderedGroup_3_1__1 )?
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5595:1: ( rule__ProtocolClassConfig__UnorderedGroup_3__Impl ( rule__ProtocolClassConfig__UnorderedGroup_3__1 )? )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5596:2: rule__ProtocolClassConfig__UnorderedGroup_3__Impl ( rule__ProtocolClassConfig__UnorderedGroup_3__1 )?
{
- pushFollow(FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1__Impl_in_rule__AttrClassConfig__UnorderedGroup_3_1__09276);
- rule__AttrClassConfig__UnorderedGroup_3_1__Impl();
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__Impl_in_rule__ProtocolClassConfig__UnorderedGroup_3__011530);
+ rule__ProtocolClassConfig__UnorderedGroup_3__Impl();
state._fsp--;
+ if (state.failed) return ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5597:2: ( rule__ProtocolClassConfig__UnorderedGroup_3__1 )?
+ int alt47=2;
+ int LA47_0 = input.LA(1);
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4558:2: ( rule__AttrClassConfig__UnorderedGroup_3_1__1 )?
- int alt39=2;
- int LA39_0 = input.LA(1);
-
- if ( LA39_0 ==28 && getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0) ) {
- alt39=1;
+ if ( LA47_0 ==30 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
+ alt47=1;
}
- else if ( LA39_0 ==29 && getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1) ) {
- alt39=1;
+ else if ( LA47_0 ==31 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
+ alt47=1;
}
- switch (alt39) {
+ switch (alt47) {
case 1 :
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4558:2: rule__AttrClassConfig__UnorderedGroup_3_1__1
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5597:2: rule__ProtocolClassConfig__UnorderedGroup_3__1
{
- pushFollow(FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1__1_in_rule__AttrClassConfig__UnorderedGroup_3_1__09279);
- rule__AttrClassConfig__UnorderedGroup_3_1__1();
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__1_in_rule__ProtocolClassConfig__UnorderedGroup_3__011533);
+ rule__ProtocolClassConfig__UnorderedGroup_3__1();
state._fsp--;
-
+ if (state.failed) return ;
}
break;
@@ -12069,24 +15813,24 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__AttrClassConfig__UnorderedGroup_3_1__0"
+ // $ANTLR end "rule__ProtocolClassConfig__UnorderedGroup_3__0"
- // $ANTLR start "rule__AttrClassConfig__UnorderedGroup_3_1__1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4565:1: rule__AttrClassConfig__UnorderedGroup_3_1__1 : rule__AttrClassConfig__UnorderedGroup_3_1__Impl ;
- public final void rule__AttrClassConfig__UnorderedGroup_3_1__1() throws RecognitionException {
+ // $ANTLR start "rule__ProtocolClassConfig__UnorderedGroup_3__1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5604:1: rule__ProtocolClassConfig__UnorderedGroup_3__1 : rule__ProtocolClassConfig__UnorderedGroup_3__Impl ;
+ public final void rule__ProtocolClassConfig__UnorderedGroup_3__1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4569:1: ( rule__AttrClassConfig__UnorderedGroup_3_1__Impl )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4570:2: rule__AttrClassConfig__UnorderedGroup_3_1__Impl
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5608:1: ( rule__ProtocolClassConfig__UnorderedGroup_3__Impl )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5609:2: rule__ProtocolClassConfig__UnorderedGroup_3__Impl
{
- pushFollow(FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1__Impl_in_rule__AttrClassConfig__UnorderedGroup_3_1__19304);
- rule__AttrClassConfig__UnorderedGroup_3_1__Impl();
+ pushFollow(FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__Impl_in_rule__ProtocolClassConfig__UnorderedGroup_3__111558);
+ rule__ProtocolClassConfig__UnorderedGroup_3__Impl();
state._fsp--;
-
+ if (state.failed) return ;
}
@@ -12102,29 +15846,33 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__AttrClassConfig__UnorderedGroup_3_1__1"
+ // $ANTLR end "rule__ProtocolClassConfig__UnorderedGroup_3__1"
// $ANTLR start "rule__ConfigModel__ImportsAssignment_0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4581:1: rule__ConfigModel__ImportsAssignment_0 : ( ruleImport ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5620:1: rule__ConfigModel__ImportsAssignment_0 : ( ruleImport ) ;
public final void rule__ConfigModel__ImportsAssignment_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4585:1: ( ( ruleImport ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4586:1: ( ruleImport )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5624:1: ( ( ruleImport ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5625:1: ( ruleImport )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4586:1: ( ruleImport )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4587:1: ruleImport
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5625:1: ( ruleImport )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5626:1: ruleImport
{
- before(grammarAccess.getConfigModelAccess().getImportsImportParserRuleCall_0_0());
- pushFollow(FOLLOW_ruleImport_in_rule__ConfigModel__ImportsAssignment_09336);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigModelAccess().getImportsImportParserRuleCall_0_0());
+ }
+ pushFollow(FOLLOW_ruleImport_in_rule__ConfigModel__ImportsAssignment_011590);
ruleImport();
state._fsp--;
-
- after(grammarAccess.getConfigModelAccess().getImportsImportParserRuleCall_0_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigModelAccess().getImportsImportParserRuleCall_0_0());
+ }
}
@@ -12147,25 +15895,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ConfigModel__ConfigElementsAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4596:1: rule__ConfigModel__ConfigElementsAssignment_1 : ( ruleConfigElement ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5635:1: rule__ConfigModel__ConfigElementsAssignment_1 : ( ruleConfigElement ) ;
public final void rule__ConfigModel__ConfigElementsAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4600:1: ( ( ruleConfigElement ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4601:1: ( ruleConfigElement )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5639:1: ( ( ruleConfigElement ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5640:1: ( ruleConfigElement )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4601:1: ( ruleConfigElement )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4602:1: ruleConfigElement
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5640:1: ( ruleConfigElement )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5641:1: ruleConfigElement
{
- before(grammarAccess.getConfigModelAccess().getConfigElementsConfigElementParserRuleCall_1_0());
- pushFollow(FOLLOW_ruleConfigElement_in_rule__ConfigModel__ConfigElementsAssignment_19367);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getConfigModelAccess().getConfigElementsConfigElementParserRuleCall_1_0());
+ }
+ pushFollow(FOLLOW_ruleConfigElement_in_rule__ConfigModel__ConfigElementsAssignment_111621);
ruleConfigElement();
state._fsp--;
-
- after(grammarAccess.getConfigModelAccess().getConfigElementsConfigElementParserRuleCall_1_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getConfigModelAccess().getConfigElementsConfigElementParserRuleCall_1_0());
+ }
}
@@ -12187,34 +15939,304 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__ConfigModel__ConfigElementsAssignment_1"
+ // $ANTLR start "rule__SubSystemConfig__SubSystemAssignment_1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5650:1: rule__SubSystemConfig__SubSystemAssignment_1 : ( ( RULE_ID ) ) ;
+ public final void rule__SubSystemConfig__SubSystemAssignment_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5654:1: ( ( ( RULE_ID ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5655:1: ( ( RULE_ID ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5655:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5656:1: ( RULE_ID )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassCrossReference_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5657:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5658:1: RULE_ID
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassIDTerminalRuleCall_1_0_1());
+ }
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__SubSystemConfig__SubSystemAssignment_111656); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassIDTerminalRuleCall_1_0_1());
+ }
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassCrossReference_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__SubSystemAssignment_1"
+
+
+ // $ANTLR start "rule__SubSystemConfig__DynConfigAssignment_3"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5669:1: rule__SubSystemConfig__DynConfigAssignment_3 : ( ruleDynamicConfig ) ;
+ public final void rule__SubSystemConfig__DynConfigAssignment_3() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5673:1: ( ( ruleDynamicConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5674:1: ( ruleDynamicConfig )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5674:1: ( ruleDynamicConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5675:1: ruleDynamicConfig
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getSubSystemConfigAccess().getDynConfigDynamicConfigParserRuleCall_3_0());
+ }
+ pushFollow(FOLLOW_ruleDynamicConfig_in_rule__SubSystemConfig__DynConfigAssignment_311691);
+ ruleDynamicConfig();
+
+ state._fsp--;
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getSubSystemConfigAccess().getDynConfigDynamicConfigParserRuleCall_3_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__SubSystemConfig__DynConfigAssignment_3"
+
+
+ // $ANTLR start "rule__DynamicConfig__FilePathAssignment_2_0_0_1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5684:1: rule__DynamicConfig__FilePathAssignment_2_0_0_1 : ( RULE_STRING ) ;
+ public final void rule__DynamicConfig__FilePathAssignment_2_0_0_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5688:1: ( ( RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5689:1: ( RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5689:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5690:1: RULE_STRING
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getFilePathSTRINGTerminalRuleCall_2_0_0_1_0());
+ }
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__DynamicConfig__FilePathAssignment_2_0_0_111722); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getFilePathSTRINGTerminalRuleCall_2_0_0_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__FilePathAssignment_2_0_0_1"
+
+
+ // $ANTLR start "rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5699:1: rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1 : ( RULE_STRING ) ;
+ public final void rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5703:1: ( ( RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5704:1: ( RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5704:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5705:1: RULE_STRING
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getUserCode1STRINGTerminalRuleCall_2_0_1_0_1_0());
+ }
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__DynamicConfig__UserCode1Assignment_2_0_1_0_111753); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getUserCode1STRINGTerminalRuleCall_2_0_1_0_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1"
+
+
+ // $ANTLR start "rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5714:1: rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1 : ( RULE_STRING ) ;
+ public final void rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5718:1: ( ( RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5719:1: ( RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5719:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5720:1: RULE_STRING
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getUserCode2STRINGTerminalRuleCall_2_0_1_1_1_0());
+ }
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__DynamicConfig__UserCode2Assignment_2_0_1_1_111784); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getUserCode2STRINGTerminalRuleCall_2_0_1_1_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1"
+
+
+ // $ANTLR start "rule__DynamicConfig__PollingAssignment_2_1_1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5729:1: rule__DynamicConfig__PollingAssignment_2_1_1 : ( RULE_INT ) ;
+ public final void rule__DynamicConfig__PollingAssignment_2_1_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5733:1: ( ( RULE_INT ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5734:1: ( RULE_INT )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5734:1: ( RULE_INT )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5735:1: RULE_INT
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getDynamicConfigAccess().getPollingINTTerminalRuleCall_2_1_1_0());
+ }
+ match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__DynamicConfig__PollingAssignment_2_1_111815); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getDynamicConfigAccess().getPollingINTTerminalRuleCall_2_1_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__DynamicConfig__PollingAssignment_2_1_1"
+
+
// $ANTLR start "rule__ActorClassConfig__ActorAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4611:1: rule__ActorClassConfig__ActorAssignment_1 : ( ( ruleFQN ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5744:1: rule__ActorClassConfig__ActorAssignment_1 : ( ( ruleFQN ) ) ;
public final void rule__ActorClassConfig__ActorAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4615:1: ( ( ( ruleFQN ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4616:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5748:1: ( ( ( ruleFQN ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5749:1: ( ( ruleFQN ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4616:1: ( ( ruleFQN ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4617:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5749:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5750:1: ( ruleFQN )
{
- before(grammarAccess.getActorClassConfigAccess().getActorActorClassCrossReference_1_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4618:1: ( ruleFQN )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4619:1: ruleFQN
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigAccess().getActorActorClassCrossReference_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5751:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5752:1: ruleFQN
{
- before(grammarAccess.getActorClassConfigAccess().getActorActorClassFQNParserRuleCall_1_0_1());
- pushFollow(FOLLOW_ruleFQN_in_rule__ActorClassConfig__ActorAssignment_19402);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigAccess().getActorActorClassFQNParserRuleCall_1_0_1());
+ }
+ pushFollow(FOLLOW_ruleFQN_in_rule__ActorClassConfig__ActorAssignment_111850);
ruleFQN();
state._fsp--;
-
- after(grammarAccess.getActorClassConfigAccess().getActorActorClassFQNParserRuleCall_1_0_1());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigAccess().getActorActorClassFQNParserRuleCall_1_0_1());
+ }
}
- after(grammarAccess.getActorClassConfigAccess().getActorActorClassCrossReference_1_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigAccess().getActorActorClassCrossReference_1_0());
+ }
}
@@ -12237,25 +16259,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorClassConfig__AttributesAssignment_3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4630:1: rule__ActorClassConfig__AttributesAssignment_3 : ( ruleAttrClassConfig ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5763:1: rule__ActorClassConfig__AttributesAssignment_3 : ( ruleAttrClassConfig ) ;
public final void rule__ActorClassConfig__AttributesAssignment_3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4634:1: ( ( ruleAttrClassConfig ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4635:1: ( ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5767:1: ( ( ruleAttrClassConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5768:1: ( ruleAttrClassConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4635:1: ( ruleAttrClassConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4636:1: ruleAttrClassConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5768:1: ( ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5769:1: ruleAttrClassConfig
{
- before(grammarAccess.getActorClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
- pushFollow(FOLLOW_ruleAttrClassConfig_in_rule__ActorClassConfig__AttributesAssignment_39437);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
+ }
+ pushFollow(FOLLOW_ruleAttrClassConfig_in_rule__ActorClassConfig__AttributesAssignment_311885);
ruleAttrClassConfig();
state._fsp--;
-
- after(grammarAccess.getActorClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
+ }
}
@@ -12278,33 +16304,41 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__RootAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4645:1: rule__ActorInstanceConfig__RootAssignment_1 : ( ( ruleFQN ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5778:1: rule__ActorInstanceConfig__RootAssignment_1 : ( ( ruleFQN ) ) ;
public final void rule__ActorInstanceConfig__RootAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4649:1: ( ( ( ruleFQN ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4650:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5782:1: ( ( ( ruleFQN ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5783:1: ( ( ruleFQN ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4650:1: ( ( ruleFQN ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4651:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5783:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5784:1: ( ruleFQN )
{
- before(grammarAccess.getActorInstanceConfigAccess().getRootSubSystemClassCrossReference_1_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4652:1: ( ruleFQN )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4653:1: ruleFQN
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getRootSubSystemClassCrossReference_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5785:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5786:1: ruleFQN
{
- before(grammarAccess.getActorInstanceConfigAccess().getRootSubSystemClassFQNParserRuleCall_1_0_1());
- pushFollow(FOLLOW_ruleFQN_in_rule__ActorInstanceConfig__RootAssignment_19472);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getRootSubSystemClassFQNParserRuleCall_1_0_1());
+ }
+ pushFollow(FOLLOW_ruleFQN_in_rule__ActorInstanceConfig__RootAssignment_111920);
ruleFQN();
state._fsp--;
-
- after(grammarAccess.getActorInstanceConfigAccess().getRootSubSystemClassFQNParserRuleCall_1_0_1());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getRootSubSystemClassFQNParserRuleCall_1_0_1());
+ }
}
- after(grammarAccess.getActorInstanceConfigAccess().getRootSubSystemClassCrossReference_1_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getRootSubSystemClassCrossReference_1_0());
+ }
}
@@ -12327,25 +16361,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ActorInstanceConfig__PathAssignment_3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4664:1: rule__ActorInstanceConfig__PathAssignment_3 : ( ruleRefPath ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5797:1: rule__ActorInstanceConfig__PathAssignment_3 : ( ruleRefPath ) ;
public final void rule__ActorInstanceConfig__PathAssignment_3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4668:1: ( ( ruleRefPath ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4669:1: ( ruleRefPath )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5801:1: ( ( ruleRefPath ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5802:1: ( ruleRefPath )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4669:1: ( ruleRefPath )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4670:1: ruleRefPath
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5802:1: ( ruleRefPath )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5803:1: ruleRefPath
{
- before(grammarAccess.getActorInstanceConfigAccess().getPathRefPathParserRuleCall_3_0());
- pushFollow(FOLLOW_ruleRefPath_in_rule__ActorInstanceConfig__PathAssignment_39507);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getPathRefPathParserRuleCall_3_0());
+ }
+ pushFollow(FOLLOW_ruleRefPath_in_rule__ActorInstanceConfig__PathAssignment_311955);
ruleRefPath();
state._fsp--;
-
- after(grammarAccess.getActorInstanceConfigAccess().getPathRefPathParserRuleCall_3_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getPathRefPathParserRuleCall_3_0());
+ }
}
@@ -12367,26 +16405,30 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__ActorInstanceConfig__PathAssignment_3"
- // $ANTLR start "rule__ActorInstanceConfig__AttributesAssignment_5"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4679:1: rule__ActorInstanceConfig__AttributesAssignment_5 : ( ruleAttrInstanceConfig ) ;
- public final void rule__ActorInstanceConfig__AttributesAssignment_5() throws RecognitionException {
+ // $ANTLR start "rule__ActorInstanceConfig__AttributesAssignment_5_0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5812:1: rule__ActorInstanceConfig__AttributesAssignment_5_0 : ( ruleAttrInstanceConfig ) ;
+ public final void rule__ActorInstanceConfig__AttributesAssignment_5_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4683:1: ( ( ruleAttrInstanceConfig ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4684:1: ( ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5816:1: ( ( ruleAttrInstanceConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5817:1: ( ruleAttrInstanceConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4684:1: ( ruleAttrInstanceConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4685:1: ruleAttrInstanceConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5817:1: ( ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5818:1: ruleAttrInstanceConfig
{
- before(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0());
- pushFollow(FOLLOW_ruleAttrInstanceConfig_in_rule__ActorInstanceConfig__AttributesAssignment_59538);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0_0());
+ }
+ pushFollow(FOLLOW_ruleAttrInstanceConfig_in_rule__ActorInstanceConfig__AttributesAssignment_5_011986);
ruleAttrInstanceConfig();
state._fsp--;
-
- after(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0_0());
+ }
}
@@ -12405,29 +16447,33 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__ActorInstanceConfig__AttributesAssignment_5"
+ // $ANTLR end "rule__ActorInstanceConfig__AttributesAssignment_5_0"
- // $ANTLR start "rule__ActorInstanceConfig__PortsAssignment_6"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4694:1: rule__ActorInstanceConfig__PortsAssignment_6 : ( rulePortInstanceConfig ) ;
- public final void rule__ActorInstanceConfig__PortsAssignment_6() throws RecognitionException {
+ // $ANTLR start "rule__ActorInstanceConfig__PortsAssignment_5_1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5827:1: rule__ActorInstanceConfig__PortsAssignment_5_1 : ( rulePortInstanceConfig ) ;
+ public final void rule__ActorInstanceConfig__PortsAssignment_5_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4698:1: ( ( rulePortInstanceConfig ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4699:1: ( rulePortInstanceConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5831:1: ( ( rulePortInstanceConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5832:1: ( rulePortInstanceConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4699:1: ( rulePortInstanceConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4700:1: rulePortInstanceConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5832:1: ( rulePortInstanceConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5833:1: rulePortInstanceConfig
{
- before(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_6_0());
- pushFollow(FOLLOW_rulePortInstanceConfig_in_rule__ActorInstanceConfig__PortsAssignment_69569);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_5_1_0());
+ }
+ pushFollow(FOLLOW_rulePortInstanceConfig_in_rule__ActorInstanceConfig__PortsAssignment_5_112017);
rulePortInstanceConfig();
state._fsp--;
-
- after(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_6_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_5_1_0());
+ }
}
@@ -12446,37 +16492,45 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
return ;
}
- // $ANTLR end "rule__ActorInstanceConfig__PortsAssignment_6"
+ // $ANTLR end "rule__ActorInstanceConfig__PortsAssignment_5_1"
// $ANTLR start "rule__ProtocolClassConfig__ProtocolAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4709:1: rule__ProtocolClassConfig__ProtocolAssignment_1 : ( ( ruleFQN ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5842:1: rule__ProtocolClassConfig__ProtocolAssignment_1 : ( ( ruleFQN ) ) ;
public final void rule__ProtocolClassConfig__ProtocolAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4713:1: ( ( ( ruleFQN ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4714:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5846:1: ( ( ( ruleFQN ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5847:1: ( ( ruleFQN ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4714:1: ( ( ruleFQN ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4715:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5847:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5848:1: ( ruleFQN )
{
- before(grammarAccess.getProtocolClassConfigAccess().getProtocolProtocolClassCrossReference_1_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4716:1: ( ruleFQN )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4717:1: ruleFQN
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getProtocolProtocolClassCrossReference_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5849:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5850:1: ruleFQN
{
- before(grammarAccess.getProtocolClassConfigAccess().getProtocolProtocolClassFQNParserRuleCall_1_0_1());
- pushFollow(FOLLOW_ruleFQN_in_rule__ProtocolClassConfig__ProtocolAssignment_19604);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getProtocolProtocolClassFQNParserRuleCall_1_0_1());
+ }
+ pushFollow(FOLLOW_ruleFQN_in_rule__ProtocolClassConfig__ProtocolAssignment_112052);
ruleFQN();
state._fsp--;
-
- after(grammarAccess.getProtocolClassConfigAccess().getProtocolProtocolClassFQNParserRuleCall_1_0_1());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getProtocolProtocolClassFQNParserRuleCall_1_0_1());
+ }
}
- after(grammarAccess.getProtocolClassConfigAccess().getProtocolProtocolClassCrossReference_1_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getProtocolProtocolClassCrossReference_1_0());
+ }
}
@@ -12499,25 +16553,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__RegularAssignment_3_0_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4728:1: rule__ProtocolClassConfig__RegularAssignment_3_0_1 : ( rulePortClassConfig ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5861:1: rule__ProtocolClassConfig__RegularAssignment_3_0_1 : ( rulePortClassConfig ) ;
public final void rule__ProtocolClassConfig__RegularAssignment_3_0_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4732:1: ( ( rulePortClassConfig ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4733:1: ( rulePortClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5865:1: ( ( rulePortClassConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5866:1: ( rulePortClassConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4733:1: ( rulePortClassConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4734:1: rulePortClassConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5866:1: ( rulePortClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5867:1: rulePortClassConfig
{
- before(grammarAccess.getProtocolClassConfigAccess().getRegularPortClassConfigParserRuleCall_3_0_1_0());
- pushFollow(FOLLOW_rulePortClassConfig_in_rule__ProtocolClassConfig__RegularAssignment_3_0_19639);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getRegularPortClassConfigParserRuleCall_3_0_1_0());
+ }
+ pushFollow(FOLLOW_rulePortClassConfig_in_rule__ProtocolClassConfig__RegularAssignment_3_0_112087);
rulePortClassConfig();
state._fsp--;
-
- after(grammarAccess.getProtocolClassConfigAccess().getRegularPortClassConfigParserRuleCall_3_0_1_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getRegularPortClassConfigParserRuleCall_3_0_1_0());
+ }
}
@@ -12540,25 +16598,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4743:1: rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 : ( rulePortClassConfig ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5876:1: rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1 : ( rulePortClassConfig ) ;
public final void rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4747:1: ( ( rulePortClassConfig ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4748:1: ( rulePortClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5880:1: ( ( rulePortClassConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5881:1: ( rulePortClassConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4748:1: ( rulePortClassConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4749:1: rulePortClassConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5881:1: ( rulePortClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5882:1: rulePortClassConfig
{
- before(grammarAccess.getProtocolClassConfigAccess().getConjugatedPortClassConfigParserRuleCall_3_1_1_0());
- pushFollow(FOLLOW_rulePortClassConfig_in_rule__ProtocolClassConfig__ConjugatedAssignment_3_1_19670);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getProtocolClassConfigAccess().getConjugatedPortClassConfigParserRuleCall_3_1_1_0());
+ }
+ pushFollow(FOLLOW_rulePortClassConfig_in_rule__ProtocolClassConfig__ConjugatedAssignment_3_1_112118);
rulePortClassConfig();
state._fsp--;
-
- after(grammarAccess.getProtocolClassConfigAccess().getConjugatedPortClassConfigParserRuleCall_3_1_1_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getProtocolClassConfigAccess().getConjugatedPortClassConfigParserRuleCall_3_1_1_0());
+ }
}
@@ -12581,25 +16643,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortClassConfig__AttributesAssignment_3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4758:1: rule__PortClassConfig__AttributesAssignment_3 : ( ruleAttrClassConfig ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5891:1: rule__PortClassConfig__AttributesAssignment_3 : ( ruleAttrClassConfig ) ;
public final void rule__PortClassConfig__AttributesAssignment_3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4762:1: ( ( ruleAttrClassConfig ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4763:1: ( ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5895:1: ( ( ruleAttrClassConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5896:1: ( ruleAttrClassConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4763:1: ( ruleAttrClassConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4764:1: ruleAttrClassConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5896:1: ( ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5897:1: ruleAttrClassConfig
{
- before(grammarAccess.getPortClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
- pushFollow(FOLLOW_ruleAttrClassConfig_in_rule__PortClassConfig__AttributesAssignment_39701);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
+ }
+ pushFollow(FOLLOW_ruleAttrClassConfig_in_rule__PortClassConfig__AttributesAssignment_312149);
ruleAttrClassConfig();
state._fsp--;
-
- after(grammarAccess.getPortClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
+ }
}
@@ -12622,29 +16688,37 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__ItemAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4773:1: rule__PortInstanceConfig__ItemAssignment_1 : ( ( RULE_ID ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5906:1: rule__PortInstanceConfig__ItemAssignment_1 : ( ( RULE_ID ) ) ;
public final void rule__PortInstanceConfig__ItemAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4777:1: ( ( ( RULE_ID ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4778:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5910:1: ( ( ( RULE_ID ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5911:1: ( ( RULE_ID ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4778:1: ( ( RULE_ID ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4779:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5911:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5912:1: ( RULE_ID )
{
- before(grammarAccess.getPortInstanceConfigAccess().getItemInterfaceItemCrossReference_1_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4780:1: ( RULE_ID )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4781:1: RULE_ID
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigAccess().getItemInterfaceItemCrossReference_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5913:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5914:1: RULE_ID
{
- before(grammarAccess.getPortInstanceConfigAccess().getItemInterfaceItemIDTerminalRuleCall_1_0_1());
- match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__PortInstanceConfig__ItemAssignment_19736);
- after(grammarAccess.getPortInstanceConfigAccess().getItemInterfaceItemIDTerminalRuleCall_1_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigAccess().getItemInterfaceItemIDTerminalRuleCall_1_0_1());
+ }
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__PortInstanceConfig__ItemAssignment_112184); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigAccess().getItemInterfaceItemIDTerminalRuleCall_1_0_1());
+ }
}
- after(grammarAccess.getPortInstanceConfigAccess().getItemInterfaceItemCrossReference_1_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigAccess().getItemInterfaceItemCrossReference_1_0());
+ }
}
@@ -12667,25 +16741,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__PortInstanceConfig__AttributesAssignment_3"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4792:1: rule__PortInstanceConfig__AttributesAssignment_3 : ( ruleAttrInstanceConfig ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5925:1: rule__PortInstanceConfig__AttributesAssignment_3 : ( ruleAttrInstanceConfig ) ;
public final void rule__PortInstanceConfig__AttributesAssignment_3() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4796:1: ( ( ruleAttrInstanceConfig ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4797:1: ( ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5929:1: ( ( ruleAttrInstanceConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5930:1: ( ruleAttrInstanceConfig )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4797:1: ( ruleAttrInstanceConfig )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4798:1: ruleAttrInstanceConfig
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5930:1: ( ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5931:1: ruleAttrInstanceConfig
{
- before(grammarAccess.getPortInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_0());
- pushFollow(FOLLOW_ruleAttrInstanceConfig_in_rule__PortInstanceConfig__AttributesAssignment_39771);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getPortInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_0());
+ }
+ pushFollow(FOLLOW_ruleAttrInstanceConfig_in_rule__PortInstanceConfig__AttributesAssignment_312219);
ruleAttrInstanceConfig();
state._fsp--;
-
- after(grammarAccess.getPortInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getPortInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_0());
+ }
}
@@ -12708,29 +16786,37 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__AttributeAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4807:1: rule__AttrClassConfig__AttributeAssignment_1 : ( ( RULE_ID ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5940:1: rule__AttrClassConfig__AttributeAssignment_1 : ( ( RULE_ID ) ) ;
public final void rule__AttrClassConfig__AttributeAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4811:1: ( ( ( RULE_ID ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4812:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5944:1: ( ( ( RULE_ID ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5945:1: ( ( RULE_ID ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4812:1: ( ( RULE_ID ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4813:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5945:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5946:1: ( RULE_ID )
{
- before(grammarAccess.getAttrClassConfigAccess().getAttributeAttributeCrossReference_1_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4814:1: ( RULE_ID )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4815:1: RULE_ID
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getAttributeAttributeCrossReference_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5947:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5948:1: RULE_ID
{
- before(grammarAccess.getAttrClassConfigAccess().getAttributeAttributeIDTerminalRuleCall_1_0_1());
- match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__AttrClassConfig__AttributeAssignment_19806);
- after(grammarAccess.getAttrClassConfigAccess().getAttributeAttributeIDTerminalRuleCall_1_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getAttributeAttributeIDTerminalRuleCall_1_0_1());
+ }
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__AttrClassConfig__AttributeAssignment_112254); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getAttributeAttributeIDTerminalRuleCall_1_0_1());
+ }
}
- after(grammarAccess.getAttrClassConfigAccess().getAttributeAttributeCrossReference_1_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getAttributeAttributeCrossReference_1_0());
+ }
}
@@ -12753,25 +16839,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__ValueAssignment_2_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4826:1: rule__AttrClassConfig__ValueAssignment_2_1 : ( ruleLiteralArray ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5959:1: rule__AttrClassConfig__ValueAssignment_2_1 : ( ruleLiteralArray ) ;
public final void rule__AttrClassConfig__ValueAssignment_2_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4830:1: ( ( ruleLiteralArray ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4831:1: ( ruleLiteralArray )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5963:1: ( ( ruleLiteralArray ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5964:1: ( ruleLiteralArray )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4831:1: ( ruleLiteralArray )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4832:1: ruleLiteralArray
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5964:1: ( ruleLiteralArray )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5965:1: ruleLiteralArray
{
- before(grammarAccess.getAttrClassConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
- pushFollow(FOLLOW_ruleLiteralArray_in_rule__AttrClassConfig__ValueAssignment_2_19841);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
+ }
+ pushFollow(FOLLOW_ruleLiteralArray_in_rule__AttrClassConfig__ValueAssignment_2_112289);
ruleLiteralArray();
state._fsp--;
-
- after(grammarAccess.getAttrClassConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
+ }
}
@@ -12794,25 +16884,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__MinAssignment_3_1_0_2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4841:1: rule__AttrClassConfig__MinAssignment_3_1_0_2 : ( ruleNumberLiteral ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5974:1: rule__AttrClassConfig__MinAssignment_3_1_0_2 : ( ruleNumberLiteral ) ;
public final void rule__AttrClassConfig__MinAssignment_3_1_0_2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4845:1: ( ( ruleNumberLiteral ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4846:1: ( ruleNumberLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5978:1: ( ( ruleNumberLiteral ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5979:1: ( ruleNumberLiteral )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4846:1: ( ruleNumberLiteral )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4847:1: ruleNumberLiteral
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5979:1: ( ruleNumberLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5980:1: ruleNumberLiteral
{
- before(grammarAccess.getAttrClassConfigAccess().getMinNumberLiteralParserRuleCall_3_1_0_2_0());
- pushFollow(FOLLOW_ruleNumberLiteral_in_rule__AttrClassConfig__MinAssignment_3_1_0_29872);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getMinNumberLiteralParserRuleCall_3_1_0_2_0());
+ }
+ pushFollow(FOLLOW_ruleNumberLiteral_in_rule__AttrClassConfig__MinAssignment_3_1_0_212320);
ruleNumberLiteral();
state._fsp--;
-
- after(grammarAccess.getAttrClassConfigAccess().getMinNumberLiteralParserRuleCall_3_1_0_2_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getMinNumberLiteralParserRuleCall_3_1_0_2_0());
+ }
}
@@ -12835,25 +16929,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrClassConfig__MaxAssignment_3_1_1_2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4856:1: rule__AttrClassConfig__MaxAssignment_3_1_1_2 : ( ruleNumberLiteral ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5989:1: rule__AttrClassConfig__MaxAssignment_3_1_1_2 : ( ruleNumberLiteral ) ;
public final void rule__AttrClassConfig__MaxAssignment_3_1_1_2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4860:1: ( ( ruleNumberLiteral ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4861:1: ( ruleNumberLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5993:1: ( ( ruleNumberLiteral ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5994:1: ( ruleNumberLiteral )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4861:1: ( ruleNumberLiteral )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4862:1: ruleNumberLiteral
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5994:1: ( ruleNumberLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5995:1: ruleNumberLiteral
{
- before(grammarAccess.getAttrClassConfigAccess().getMaxNumberLiteralParserRuleCall_3_1_1_2_0());
- pushFollow(FOLLOW_ruleNumberLiteral_in_rule__AttrClassConfig__MaxAssignment_3_1_1_29903);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getMaxNumberLiteralParserRuleCall_3_1_1_2_0());
+ }
+ pushFollow(FOLLOW_ruleNumberLiteral_in_rule__AttrClassConfig__MaxAssignment_3_1_1_212351);
ruleNumberLiteral();
state._fsp--;
-
- after(grammarAccess.getAttrClassConfigAccess().getMaxNumberLiteralParserRuleCall_3_1_1_2_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getMaxNumberLiteralParserRuleCall_3_1_1_2_0());
+ }
}
@@ -12875,30 +16973,83 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__AttrClassConfig__MaxAssignment_3_1_1_2"
+ // $ANTLR start "rule__AttrClassConfig__AttributesAssignment_3_1_2"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6004:1: rule__AttrClassConfig__AttributesAssignment_3_1_2 : ( ruleAttrClassConfig ) ;
+ public final void rule__AttrClassConfig__AttributesAssignment_3_1_2() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6008:1: ( ( ruleAttrClassConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6009:1: ( ruleAttrClassConfig )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6009:1: ( ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6010:1: ruleAttrClassConfig
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_1_2_0());
+ }
+ pushFollow(FOLLOW_ruleAttrClassConfig_in_rule__AttrClassConfig__AttributesAssignment_3_1_212382);
+ ruleAttrClassConfig();
+
+ state._fsp--;
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_1_2_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrClassConfig__AttributesAssignment_3_1_2"
+
+
// $ANTLR start "rule__AttrInstanceConfig__AttributeAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4871:1: rule__AttrInstanceConfig__AttributeAssignment_1 : ( ( RULE_ID ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6019:1: rule__AttrInstanceConfig__AttributeAssignment_1 : ( ( RULE_ID ) ) ;
public final void rule__AttrInstanceConfig__AttributeAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4875:1: ( ( ( RULE_ID ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4876:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6023:1: ( ( ( RULE_ID ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6024:1: ( ( RULE_ID ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4876:1: ( ( RULE_ID ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4877:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6024:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6025:1: ( RULE_ID )
{
- before(grammarAccess.getAttrInstanceConfigAccess().getAttributeAttributeCrossReference_1_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4878:1: ( RULE_ID )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4879:1: RULE_ID
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getAttributeAttributeCrossReference_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6026:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6027:1: RULE_ID
{
- before(grammarAccess.getAttrInstanceConfigAccess().getAttributeAttributeIDTerminalRuleCall_1_0_1());
- match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__AttrInstanceConfig__AttributeAssignment_19938);
- after(grammarAccess.getAttrInstanceConfigAccess().getAttributeAttributeIDTerminalRuleCall_1_0_1());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getAttributeAttributeIDTerminalRuleCall_1_0_1());
+ }
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__AttrInstanceConfig__AttributeAssignment_112417); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getAttributeAttributeIDTerminalRuleCall_1_0_1());
+ }
}
- after(grammarAccess.getAttrInstanceConfigAccess().getAttributeAttributeCrossReference_1_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getAttributeAttributeCrossReference_1_0());
+ }
}
@@ -12921,25 +17072,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__AttrInstanceConfig__ValueAssignment_2_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4890:1: rule__AttrInstanceConfig__ValueAssignment_2_1 : ( ruleLiteralArray ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6038:1: rule__AttrInstanceConfig__ValueAssignment_2_1 : ( ruleLiteralArray ) ;
public final void rule__AttrInstanceConfig__ValueAssignment_2_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4894:1: ( ( ruleLiteralArray ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4895:1: ( ruleLiteralArray )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6042:1: ( ( ruleLiteralArray ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6043:1: ( ruleLiteralArray )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4895:1: ( ruleLiteralArray )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4896:1: ruleLiteralArray
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6043:1: ( ruleLiteralArray )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6044:1: ruleLiteralArray
{
- before(grammarAccess.getAttrInstanceConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
- pushFollow(FOLLOW_ruleLiteralArray_in_rule__AttrInstanceConfig__ValueAssignment_2_19973);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
+ }
+ pushFollow(FOLLOW_ruleLiteralArray_in_rule__AttrInstanceConfig__ValueAssignment_2_112452);
ruleLiteralArray();
state._fsp--;
-
- after(grammarAccess.getAttrInstanceConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
+ }
}
@@ -12961,22 +17116,177 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR end "rule__AttrInstanceConfig__ValueAssignment_2_1"
+ // $ANTLR start "rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6053:1: rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0 : ( ( 'dynamic configuration' ) ) ;
+ public final void rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6057:1: ( ( ( 'dynamic configuration' ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6058:1: ( ( 'dynamic configuration' ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6058:1: ( ( 'dynamic configuration' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6059:1: ( 'dynamic configuration' )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6060:1: ( 'dynamic configuration' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6061:1: 'dynamic configuration'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0());
+ }
+ match(input,21,FOLLOW_21_in_rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_012488); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0());
+ }
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6076:1: rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0 : ( ( 'read' ) ) ;
+ public final void rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6080:1: ( ( ( 'read' ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6081:1: ( ( 'read' ) )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6081:1: ( ( 'read' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6082:1: ( 'read' )
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6083:1: ( 'read' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6084:1: 'read'
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0());
+ }
+ match(input,43,FOLLOW_43_in_rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_012532); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0());
+ }
+
+ }
+
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0"
+
+
+ // $ANTLR start "rule__AttrInstanceConfig__AttributesAssignment_3_1_1"
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6099:1: rule__AttrInstanceConfig__AttributesAssignment_3_1_1 : ( ruleAttrInstanceConfig ) ;
+ public final void rule__AttrInstanceConfig__AttributesAssignment_3_1_1() throws RecognitionException {
+
+ int stackSize = keepStackSize();
+
+ try {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6103:1: ( ( ruleAttrInstanceConfig ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6104:1: ( ruleAttrInstanceConfig )
+ {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6104:1: ( ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6105:1: ruleAttrInstanceConfig
+ {
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getAttrInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_1_1_0());
+ }
+ pushFollow(FOLLOW_ruleAttrInstanceConfig_in_rule__AttrInstanceConfig__AttributesAssignment_3_1_112571);
+ ruleAttrInstanceConfig();
+
+ state._fsp--;
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getAttrInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_1_1_0());
+ }
+
+ }
+
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+
+ restoreStackSize(stackSize);
+
+ }
+ return ;
+ }
+ // $ANTLR end "rule__AttrInstanceConfig__AttributesAssignment_3_1_1"
+
+
// $ANTLR start "rule__RefPath__RefsAssignment_0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4905:1: rule__RefPath__RefsAssignment_0 : ( RULE_ID ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6114:1: rule__RefPath__RefsAssignment_0 : ( RULE_ID ) ;
public final void rule__RefPath__RefsAssignment_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4909:1: ( ( RULE_ID ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4910:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6118:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6119:1: ( RULE_ID )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4910:1: ( RULE_ID )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4911:1: RULE_ID
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6119:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6120:1: RULE_ID
{
- before(grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_0_0());
- match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RefPath__RefsAssignment_010004);
- after(grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_0_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_0_0());
+ }
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RefPath__RefsAssignment_012602); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_0_0());
+ }
}
@@ -12999,21 +17309,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RefPath__RefsAssignment_1_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4920:1: rule__RefPath__RefsAssignment_1_1 : ( RULE_ID ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6129:1: rule__RefPath__RefsAssignment_1_1 : ( RULE_ID ) ;
public final void rule__RefPath__RefsAssignment_1_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4924:1: ( ( RULE_ID ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4925:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6133:1: ( ( RULE_ID ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6134:1: ( RULE_ID )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4925:1: ( RULE_ID )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4926:1: RULE_ID
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6134:1: ( RULE_ID )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6135:1: RULE_ID
{
- before(grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_1_1_0());
- match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RefPath__RefsAssignment_1_110035);
- after(grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_1_1_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_1_1_0());
+ }
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RefPath__RefsAssignment_1_112633); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_1_1_0());
+ }
}
@@ -13036,25 +17350,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__ImportedNamespaceAssignment_1_0_0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4935:1: rule__Import__ImportedNamespaceAssignment_1_0_0 : ( ruleImportedFQN ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6144:1: rule__Import__ImportedNamespaceAssignment_1_0_0 : ( ruleImportedFQN ) ;
public final void rule__Import__ImportedNamespaceAssignment_1_0_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4939:1: ( ( ruleImportedFQN ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4940:1: ( ruleImportedFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6148:1: ( ( ruleImportedFQN ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6149:1: ( ruleImportedFQN )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4940:1: ( ruleImportedFQN )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4941:1: ruleImportedFQN
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6149:1: ( ruleImportedFQN )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6150:1: ruleImportedFQN
{
- before(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0_0_0());
- pushFollow(FOLLOW_ruleImportedFQN_in_rule__Import__ImportedNamespaceAssignment_1_0_010066);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0_0_0());
+ }
+ pushFollow(FOLLOW_ruleImportedFQN_in_rule__Import__ImportedNamespaceAssignment_1_0_012664);
ruleImportedFQN();
state._fsp--;
-
- after(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0_0_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0_0_0());
+ }
}
@@ -13077,21 +17395,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__Import__ImportURIAssignment_2"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4950:1: rule__Import__ImportURIAssignment_2 : ( RULE_STRING ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6159:1: rule__Import__ImportURIAssignment_2 : ( RULE_STRING ) ;
public final void rule__Import__ImportURIAssignment_2() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4954:1: ( ( RULE_STRING ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4955:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6163:1: ( ( RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6164:1: ( RULE_STRING )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4955:1: ( RULE_STRING )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4956:1: RULE_STRING
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6164:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6165:1: RULE_STRING
{
- before(grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_2_0());
- match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment_210097);
- after(grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_2_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_2_0());
+ }
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment_212695); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_2_0());
+ }
}
@@ -13114,25 +17436,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__LiteralsAssignment_0"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4965:1: rule__LiteralArray__LiteralsAssignment_0 : ( ruleLiteral ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6174:1: rule__LiteralArray__LiteralsAssignment_0 : ( ruleLiteral ) ;
public final void rule__LiteralArray__LiteralsAssignment_0() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4969:1: ( ( ruleLiteral ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4970:1: ( ruleLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6178:1: ( ( ruleLiteral ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6179:1: ( ruleLiteral )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4970:1: ( ruleLiteral )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4971:1: ruleLiteral
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6179:1: ( ruleLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6180:1: ruleLiteral
{
- before(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_0_0());
- pushFollow(FOLLOW_ruleLiteral_in_rule__LiteralArray__LiteralsAssignment_010128);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_0_0());
+ }
+ pushFollow(FOLLOW_ruleLiteral_in_rule__LiteralArray__LiteralsAssignment_012726);
ruleLiteral();
state._fsp--;
-
- after(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_0_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_0_0());
+ }
}
@@ -13155,25 +17481,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__LiteralArray__LiteralsAssignment_1_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4980:1: rule__LiteralArray__LiteralsAssignment_1_1 : ( ruleLiteral ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6189:1: rule__LiteralArray__LiteralsAssignment_1_1 : ( ruleLiteral ) ;
public final void rule__LiteralArray__LiteralsAssignment_1_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4984:1: ( ( ruleLiteral ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4985:1: ( ruleLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6193:1: ( ( ruleLiteral ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6194:1: ( ruleLiteral )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4985:1: ( ruleLiteral )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4986:1: ruleLiteral
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6194:1: ( ruleLiteral )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6195:1: ruleLiteral
{
- before(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_1_1_0());
- pushFollow(FOLLOW_ruleLiteral_in_rule__LiteralArray__LiteralsAssignment_1_110159);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_1_1_0());
+ }
+ pushFollow(FOLLOW_ruleLiteral_in_rule__LiteralArray__LiteralsAssignment_1_112757);
ruleLiteral();
state._fsp--;
-
- after(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_1_1_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_1_1_0());
+ }
}
@@ -13196,29 +17526,37 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__BooleanLiteral__IsTrueAssignment_1_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4995:1: rule__BooleanLiteral__IsTrueAssignment_1_1 : ( ( 'true' ) ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6204: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.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:4999:1: ( ( ( 'true' ) ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5000:1: ( ( 'true' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6208:1: ( ( ( 'true' ) ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6209:1: ( ( 'true' ) )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5000:1: ( ( 'true' ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5001:1: ( 'true' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6209:1: ( ( 'true' ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6210:1: ( 'true' )
{
- before(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5002:1: ( 'true' )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5003:1: 'true'
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+ }
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6211:1: ( 'true' )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6212:1: 'true'
{
- before(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
- match(input,35,FOLLOW_35_in_rule__BooleanLiteral__IsTrueAssignment_1_110195);
- after(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+ }
+ match(input,44,FOLLOW_44_in_rule__BooleanLiteral__IsTrueAssignment_1_112793); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+ }
}
- after(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
+ }
}
@@ -13241,25 +17579,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__RealLiteral__ValueAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5018:1: rule__RealLiteral__ValueAssignment_1 : ( ruleReal ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6227:1: rule__RealLiteral__ValueAssignment_1 : ( ruleReal ) ;
public final void rule__RealLiteral__ValueAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5022:1: ( ( ruleReal ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5023:1: ( ruleReal )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6231:1: ( ( ruleReal ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6232:1: ( ruleReal )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5023:1: ( ruleReal )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5024:1: ruleReal
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6232:1: ( ruleReal )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6233:1: ruleReal
{
- before(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_1_0());
- pushFollow(FOLLOW_ruleReal_in_rule__RealLiteral__ValueAssignment_110234);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_1_0());
+ }
+ pushFollow(FOLLOW_ruleReal_in_rule__RealLiteral__ValueAssignment_112832);
ruleReal();
state._fsp--;
-
- after(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_1_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_1_0());
+ }
}
@@ -13282,25 +17624,29 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__IntLiteral__ValueAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5033:1: rule__IntLiteral__ValueAssignment_1 : ( ruleInteger ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6242:1: rule__IntLiteral__ValueAssignment_1 : ( ruleInteger ) ;
public final void rule__IntLiteral__ValueAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5037:1: ( ( ruleInteger ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5038:1: ( ruleInteger )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6246:1: ( ( ruleInteger ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6247:1: ( ruleInteger )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5038:1: ( ruleInteger )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5039:1: ruleInteger
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6247:1: ( ruleInteger )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6248:1: ruleInteger
{
- before(grammarAccess.getIntLiteralAccess().getValueIntegerParserRuleCall_1_0());
- pushFollow(FOLLOW_ruleInteger_in_rule__IntLiteral__ValueAssignment_110265);
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getIntLiteralAccess().getValueIntegerParserRuleCall_1_0());
+ }
+ pushFollow(FOLLOW_ruleInteger_in_rule__IntLiteral__ValueAssignment_112863);
ruleInteger();
state._fsp--;
-
- after(grammarAccess.getIntLiteralAccess().getValueIntegerParserRuleCall_1_0());
+ if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getIntLiteralAccess().getValueIntegerParserRuleCall_1_0());
+ }
}
@@ -13323,21 +17669,25 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
// $ANTLR start "rule__StringLiteral__ValueAssignment_1"
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5048:1: rule__StringLiteral__ValueAssignment_1 : ( RULE_STRING ) ;
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6257:1: rule__StringLiteral__ValueAssignment_1 : ( RULE_STRING ) ;
public final void rule__StringLiteral__ValueAssignment_1() throws RecognitionException {
int stackSize = keepStackSize();
try {
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5052:1: ( ( RULE_STRING ) )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5053:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6261:1: ( ( RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6262:1: ( RULE_STRING )
{
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5053:1: ( RULE_STRING )
- // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5054:1: RULE_STRING
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6262:1: ( RULE_STRING )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:6263:1: RULE_STRING
{
- before(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0());
- match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__StringLiteral__ValueAssignment_110296);
- after(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0());
+ if ( state.backtracking==0 ) {
+ before(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0());
+ }
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__StringLiteral__ValueAssignment_112894); if (state.failed) return ;
+ if ( state.backtracking==0 ) {
+ after(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0());
+ }
}
@@ -13358,66 +17708,125 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
}
// $ANTLR end "rule__StringLiteral__ValueAssignment_1"
+ // $ANTLR start synpred1_InternalConfig
+ public final void synpred1_InternalConfig_fragment() throws RecognitionException {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5458:8: ( rule__ActorInstanceConfig__AttributesAssignment_5_0 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5458:9: rule__ActorInstanceConfig__AttributesAssignment_5_0
+ {
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__AttributesAssignment_5_0_in_synpred1_InternalConfig11025);
+ rule__ActorInstanceConfig__AttributesAssignment_5_0();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ }
+ // $ANTLR end synpred1_InternalConfig
+
+ // $ANTLR start synpred2_InternalConfig
+ public final void synpred2_InternalConfig_fragment() throws RecognitionException {
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5480:8: ( rule__ActorInstanceConfig__PortsAssignment_5_1 )
+ // ../org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/contentassist/antlr/internal/InternalConfig.g:5480:9: rule__ActorInstanceConfig__PortsAssignment_5_1
+ {
+ pushFollow(FOLLOW_rule__ActorInstanceConfig__PortsAssignment_5_1_in_synpred2_InternalConfig11168);
+ rule__ActorInstanceConfig__PortsAssignment_5_1();
+
+ state._fsp--;
+ if (state.failed) return ;
+
+ }
+ }
+ // $ANTLR end synpred2_InternalConfig
+
// Delegated rules
+ public final boolean synpred1_InternalConfig() {
+ state.backtracking++;
+ int start = input.mark();
+ try {
+ synpred1_InternalConfig_fragment(); // can never throw exception
+ } catch (RecognitionException re) {
+ System.err.println("impossible: "+re);
+ }
+ boolean success = !state.failed;
+ input.rewind(start);
+ state.backtracking--;
+ state.failed=false;
+ return success;
+ }
+ public final boolean synpred2_InternalConfig() {
+ state.backtracking++;
+ int start = input.mark();
+ try {
+ synpred2_InternalConfig_fragment(); // can never throw exception
+ } catch (RecognitionException re) {
+ System.err.println("impossible: "+re);
+ }
+ boolean success = !state.failed;
+ input.rewind(start);
+ state.backtracking--;
+ state.failed=false;
+ return success;
+ }
+
- protected DFA8 dfa8 = new DFA8(this);
- static final String DFA8_eotS =
+ protected DFA10 dfa10 = new DFA10(this);
+ static final String DFA10_eotS =
"\12\uffff";
- static final String DFA8_eofS =
- "\5\uffff\1\6\1\uffff\1\10\2\uffff";
- static final String DFA8_minS =
- "\3\6\1\41\1\uffff\1\6\1\uffff\1\5\2\uffff";
- static final String DFA8_maxS =
- "\4\41\1\uffff\1\42\1\uffff\1\42\2\uffff";
- static final String DFA8_acceptS =
- "\4\uffff\1\2\1\uffff\1\3\1\uffff\1\1\1\4";
- static final String DFA8_specialS =
+ static final String DFA10_eofS =
+ "\5\uffff\1\7\1\10\3\uffff";
+ static final String DFA10_minS =
+ "\3\6\1\51\1\uffff\1\6\1\7\3\uffff";
+ static final String DFA10_maxS =
+ "\4\51\1\uffff\2\52\3\uffff";
+ static final String DFA10_acceptS =
+ "\4\uffff\1\2\2\uffff\1\3\1\1\1\4";
+ static final String DFA10_specialS =
"\12\uffff}>";
- static final String[] DFA8_transitionS = {
- "\1\3\7\uffff\1\1\1\2\21\uffff\1\4",
- "\1\3\32\uffff\1\4",
- "\1\3\32\uffff\1\4",
+ static final String[] DFA10_transitionS = {
+ "\1\3\11\uffff\1\1\1\2\27\uffff\1\4",
+ "\1\3\42\uffff\1\4",
+ "\1\3\42\uffff\1\4",
"\1\5",
"",
- "\1\7\12\uffff\2\6\6\uffff\2\6\1\uffff\2\6\4\uffff\1\6",
+ "\1\6\14\uffff\2\7\14\uffff\2\7\2\uffff\1\7\4\uffff\1\7",
+ "\1\11\13\uffff\2\10\14\uffff\2\10\2\uffff\1\10\4\uffff\1\10",
"",
- "\1\11\13\uffff\2\10\6\uffff\2\10\1\uffff\2\10\4\uffff\1\10",
"",
""
};
- static final short[] DFA8_eot = DFA.unpackEncodedString(DFA8_eotS);
- static final short[] DFA8_eof = DFA.unpackEncodedString(DFA8_eofS);
- static final char[] DFA8_min = DFA.unpackEncodedStringToUnsignedChars(DFA8_minS);
- static final char[] DFA8_max = DFA.unpackEncodedStringToUnsignedChars(DFA8_maxS);
- static final short[] DFA8_accept = DFA.unpackEncodedString(DFA8_acceptS);
- static final short[] DFA8_special = DFA.unpackEncodedString(DFA8_specialS);
- static final short[][] DFA8_transition;
+ 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 = DFA8_transitionS.length;
- DFA8_transition = new short[numStates][];
+ int numStates = DFA10_transitionS.length;
+ DFA10_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
- DFA8_transition[i] = DFA.unpackEncodedString(DFA8_transitionS[i]);
+ DFA10_transition[i] = DFA.unpackEncodedString(DFA10_transitionS[i]);
}
}
- class DFA8 extends DFA {
+ class DFA10 extends DFA {
- public DFA8(BaseRecognizer recognizer) {
+ public DFA10(BaseRecognizer recognizer) {
this.recognizer = recognizer;
- this.decisionNumber = 8;
- this.eot = DFA8_eot;
- this.eof = DFA8_eof;
- this.min = DFA8_min;
- this.max = DFA8_max;
- this.accept = DFA8_accept;
- this.special = DFA8_special;
- this.transition = DFA8_transition;
+ 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 "1069:1: rule__Real__Alternatives : ( ( ruleDecimal ) | ( ruleDotDecimal ) | ( ruleDecimalDot ) | ( ruleDecimalExp ) );";
+ return "1177:1: rule__Real__Alternatives : ( ( ruleDecimal ) | ( ruleDotDecimal ) | ( ruleDecimalDot ) | ( ruleDecimalExp ) );";
}
}
@@ -13428,417 +17837,516 @@ public class InternalConfigParser extends AbstractInternalContentAssistParser {
public static final BitSet FOLLOW_ruleConfigElement_in_entryRuleConfigElement121 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleConfigElement128 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_rule__ConfigElement__Alternatives_in_ruleConfigElement154 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleActorClassConfig_in_entryRuleActorClassConfig181 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleActorClassConfig188 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__0_in_ruleActorClassConfig214 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleActorInstanceConfig_in_entryRuleActorInstanceConfig241 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleActorInstanceConfig248 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__0_in_ruleActorInstanceConfig274 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleProtocolClassConfig_in_entryRuleProtocolClassConfig301 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleProtocolClassConfig308 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__0_in_ruleProtocolClassConfig334 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rulePortClassConfig_in_entryRulePortClassConfig361 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRulePortClassConfig368 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__0_in_rulePortClassConfig394 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rulePortInstanceConfig_in_entryRulePortInstanceConfig421 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRulePortInstanceConfig428 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__0_in_rulePortInstanceConfig454 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAttrClassConfig_in_entryRuleAttrClassConfig483 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleAttrClassConfig490 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group__0_in_ruleAttrClassConfig516 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_entryRuleAttrInstanceConfig543 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleAttrInstanceConfig550 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__0_in_ruleAttrInstanceConfig576 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleRefPath_in_entryRuleRefPath603 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleRefPath610 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RefPath__Group__0_in_ruleRefPath636 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleImport_in_entryRuleImport663 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleImport670 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__Group__0_in_ruleImport696 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN723 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleImportedFQN730 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ImportedFQN__Group__0_in_ruleImportedFQN756 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleFQN_in_entryRuleFQN783 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleFQN790 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__FQN__Group__0_in_ruleFQN816 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleLiteralArray_in_entryRuleLiteralArray843 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleLiteralArray850 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__LiteralArray__Group__0_in_ruleLiteralArray876 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleLiteral_in_entryRuleLiteral903 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleLiteral910 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Literal__Alternatives_in_ruleLiteral936 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral963 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleBooleanLiteral970 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__BooleanLiteral__Group__0_in_ruleBooleanLiteral996 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral1023 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleNumberLiteral1030 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__NumberLiteral__Alternatives_in_ruleNumberLiteral1056 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral1083 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleRealLiteral1090 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RealLiteral__Group__0_in_ruleRealLiteral1116 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral1143 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleIntLiteral1150 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__IntLiteral__Group__0_in_ruleIntLiteral1176 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral1203 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleStringLiteral1210 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__StringLiteral__Group__0_in_ruleStringLiteral1236 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleInteger_in_entryRuleInteger1263 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleInteger1270 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Integer__Alternatives_in_ruleInteger1296 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger1328 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleSignedInteger1335 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__SignedInteger__Group__0_in_ruleSignedInteger1365 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal1397 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleHexadecimal1404 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_HEX_in_ruleHexadecimal1434 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleReal_in_entryRuleReal1460 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleReal1467 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Real__Alternatives_in_ruleReal1493 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimal_in_entryRuleDecimal1525 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleDecimal1532 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Decimal__Group__0_in_ruleDecimal1562 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal1594 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleDotDecimal1601 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DotDecimal__Group__0_in_ruleDotDecimal1631 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot1663 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleDecimalDot1670 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalDot__Group__0_in_ruleDecimalDot1700 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp1732 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleDecimalExp1739 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__0_in_ruleDecimalExp1769 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleActorClassConfig_in_rule__ConfigElement__Alternatives1805 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleActorInstanceConfig_in_rule__ConfigElement__Alternatives1822 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleProtocolClassConfig_in_rule__ConfigElement__Alternatives1839 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__Group_1_0__0_in_rule__Import__Alternatives_11872 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_12_in_rule__Import__Alternatives_11891 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleBooleanLiteral_in_rule__Literal__Alternatives1925 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleNumberLiteral_in_rule__Literal__Alternatives1942 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleStringLiteral_in_rule__Literal__Alternatives1959 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_13_in_rule__BooleanLiteral__Alternatives_11992 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__BooleanLiteral__IsTrueAssignment_1_1_in_rule__BooleanLiteral__Alternatives_12011 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleIntLiteral_in_rule__NumberLiteral__Alternatives2044 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleRealLiteral_in_rule__NumberLiteral__Alternatives2061 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleSignedInteger_in_rule__Integer__Alternatives2093 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleHexadecimal_in_rule__Integer__Alternatives2110 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_14_in_rule__SignedInteger__Alternatives_02143 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_15_in_rule__SignedInteger__Alternatives_02163 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimal_in_rule__Real__Alternatives2197 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDotDecimal_in_rule__Real__Alternatives2214 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimalDot_in_rule__Real__Alternatives2231 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimalExp_in_rule__Real__Alternatives2248 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_14_in_rule__Decimal__Alternatives_02281 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_15_in_rule__Decimal__Alternatives_02301 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_14_in_rule__DotDecimal__Alternatives_02336 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_15_in_rule__DotDecimal__Alternatives_02356 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_14_in_rule__DecimalDot__Alternatives_02391 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_15_in_rule__DecimalDot__Alternatives_02411 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_14_in_rule__DecimalExp__Alternatives_02446 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_15_in_rule__DecimalExp__Alternatives_02466 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_14_in_rule__DecimalExp__Alternatives_52501 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_15_in_rule__DecimalExp__Alternatives_52521 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ConfigModel__Group__0__Impl_in_rule__ConfigModel__Group__02553 = new BitSet(new long[]{0x0000000000290000L});
- public static final BitSet FOLLOW_rule__ConfigModel__Group__1_in_rule__ConfigModel__Group__02556 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ConfigModel__ImportsAssignment_0_in_rule__ConfigModel__Group__0__Impl2583 = new BitSet(new long[]{0x0000000040000002L});
- public static final BitSet FOLLOW_rule__ConfigModel__Group__1__Impl_in_rule__ConfigModel__Group__12614 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ConfigModel__ConfigElementsAssignment_1_in_rule__ConfigModel__Group__1__Impl2641 = new BitSet(new long[]{0x0000000000290002L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__0__Impl_in_rule__ActorClassConfig__Group__02676 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__1_in_rule__ActorClassConfig__Group__02679 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_16_in_rule__ActorClassConfig__Group__0__Impl2707 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__1__Impl_in_rule__ActorClassConfig__Group__12738 = new BitSet(new long[]{0x0000000000020000L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__2_in_rule__ActorClassConfig__Group__12741 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__ActorAssignment_1_in_rule__ActorClassConfig__Group__1__Impl2768 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__2__Impl_in_rule__ActorClassConfig__Group__22798 = new BitSet(new long[]{0x0000000004040000L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__3_in_rule__ActorClassConfig__Group__22801 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_17_in_rule__ActorClassConfig__Group__2__Impl2829 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__3__Impl_in_rule__ActorClassConfig__Group__32860 = new BitSet(new long[]{0x0000000004040000L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__4_in_rule__ActorClassConfig__Group__32863 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__AttributesAssignment_3_in_rule__ActorClassConfig__Group__3__Impl2890 = new BitSet(new long[]{0x0000000004000002L});
- public static final BitSet FOLLOW_rule__ActorClassConfig__Group__4__Impl_in_rule__ActorClassConfig__Group__42921 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_18_in_rule__ActorClassConfig__Group__4__Impl2949 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__0__Impl_in_rule__ActorInstanceConfig__Group__02990 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__1_in_rule__ActorInstanceConfig__Group__02993 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_19_in_rule__ActorInstanceConfig__Group__0__Impl3021 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__1__Impl_in_rule__ActorInstanceConfig__Group__13052 = new BitSet(new long[]{0x0000000000100000L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__2_in_rule__ActorInstanceConfig__Group__13055 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__RootAssignment_1_in_rule__ActorInstanceConfig__Group__1__Impl3082 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__2__Impl_in_rule__ActorInstanceConfig__Group__23112 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__3_in_rule__ActorInstanceConfig__Group__23115 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_20_in_rule__ActorInstanceConfig__Group__2__Impl3143 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__3__Impl_in_rule__ActorInstanceConfig__Group__33174 = new BitSet(new long[]{0x0000000000020000L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__4_in_rule__ActorInstanceConfig__Group__33177 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__PathAssignment_3_in_rule__ActorInstanceConfig__Group__3__Impl3204 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__4__Impl_in_rule__ActorInstanceConfig__Group__43234 = new BitSet(new long[]{0x0000000006040000L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__5_in_rule__ActorInstanceConfig__Group__43237 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_17_in_rule__ActorInstanceConfig__Group__4__Impl3265 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__5__Impl_in_rule__ActorInstanceConfig__Group__53296 = new BitSet(new long[]{0x0000000006040000L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__6_in_rule__ActorInstanceConfig__Group__53299 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__AttributesAssignment_5_in_rule__ActorInstanceConfig__Group__5__Impl3326 = new BitSet(new long[]{0x0000000004000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__6__Impl_in_rule__ActorInstanceConfig__Group__63357 = new BitSet(new long[]{0x0000000006040000L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__7_in_rule__ActorInstanceConfig__Group__63360 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__PortsAssignment_6_in_rule__ActorInstanceConfig__Group__6__Impl3387 = new BitSet(new long[]{0x0000000002000002L});
- public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__7__Impl_in_rule__ActorInstanceConfig__Group__73418 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_18_in_rule__ActorInstanceConfig__Group__7__Impl3446 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__0__Impl_in_rule__ProtocolClassConfig__Group__03493 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__1_in_rule__ProtocolClassConfig__Group__03496 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_21_in_rule__ProtocolClassConfig__Group__0__Impl3524 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__1__Impl_in_rule__ProtocolClassConfig__Group__13555 = new BitSet(new long[]{0x0000000000020000L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__2_in_rule__ProtocolClassConfig__Group__13558 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__ProtocolAssignment_1_in_rule__ProtocolClassConfig__Group__1__Impl3585 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__2__Impl_in_rule__ProtocolClassConfig__Group__23615 = new BitSet(new long[]{0x0000000000C00000L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__3_in_rule__ProtocolClassConfig__Group__23618 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_17_in_rule__ProtocolClassConfig__Group__2__Impl3646 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__3__Impl_in_rule__ProtocolClassConfig__Group__33677 = new BitSet(new long[]{0x0000000000040000L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__4_in_rule__ProtocolClassConfig__Group__33680 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3_in_rule__ProtocolClassConfig__Group__3__Impl3707 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__4__Impl_in_rule__ProtocolClassConfig__Group__43737 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_18_in_rule__ProtocolClassConfig__Group__4__Impl3765 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_0__0__Impl_in_rule__ProtocolClassConfig__Group_3_0__03806 = new BitSet(new long[]{0x0000000001000000L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_0__1_in_rule__ProtocolClassConfig__Group_3_0__03809 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_22_in_rule__ProtocolClassConfig__Group_3_0__0__Impl3837 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_0__1__Impl_in_rule__ProtocolClassConfig__Group_3_0__13868 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__RegularAssignment_3_0_1_in_rule__ProtocolClassConfig__Group_3_0__1__Impl3895 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_1__0__Impl_in_rule__ProtocolClassConfig__Group_3_1__03929 = new BitSet(new long[]{0x0000000001000000L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_1__1_in_rule__ProtocolClassConfig__Group_3_1__03932 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_23_in_rule__ProtocolClassConfig__Group_3_1__0__Impl3960 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_1__1__Impl_in_rule__ProtocolClassConfig__Group_3_1__13991 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1_in_rule__ProtocolClassConfig__Group_3_1__1__Impl4018 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__0__Impl_in_rule__PortClassConfig__Group__04052 = new BitSet(new long[]{0x0000000001000000L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__1_in_rule__PortClassConfig__Group__04055 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__1__Impl_in_rule__PortClassConfig__Group__14113 = new BitSet(new long[]{0x0000000000020000L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__2_in_rule__PortClassConfig__Group__14116 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_24_in_rule__PortClassConfig__Group__1__Impl4144 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__2__Impl_in_rule__PortClassConfig__Group__24175 = new BitSet(new long[]{0x0000000004040000L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__3_in_rule__PortClassConfig__Group__24178 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_17_in_rule__PortClassConfig__Group__2__Impl4206 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__3__Impl_in_rule__PortClassConfig__Group__34237 = new BitSet(new long[]{0x0000000004040000L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__4_in_rule__PortClassConfig__Group__34240 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortClassConfig__AttributesAssignment_3_in_rule__PortClassConfig__Group__3__Impl4267 = new BitSet(new long[]{0x0000000004000002L});
- public static final BitSet FOLLOW_rule__PortClassConfig__Group__4__Impl_in_rule__PortClassConfig__Group__44298 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_18_in_rule__PortClassConfig__Group__4__Impl4326 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__0__Impl_in_rule__PortInstanceConfig__Group__04367 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__1_in_rule__PortInstanceConfig__Group__04370 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_25_in_rule__PortInstanceConfig__Group__0__Impl4398 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__1__Impl_in_rule__PortInstanceConfig__Group__14429 = new BitSet(new long[]{0x0000000000020000L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__2_in_rule__PortInstanceConfig__Group__14432 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__ItemAssignment_1_in_rule__PortInstanceConfig__Group__1__Impl4459 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__2__Impl_in_rule__PortInstanceConfig__Group__24489 = new BitSet(new long[]{0x0000000004040000L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__3_in_rule__PortInstanceConfig__Group__24492 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_17_in_rule__PortInstanceConfig__Group__2__Impl4520 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__3__Impl_in_rule__PortInstanceConfig__Group__34551 = new BitSet(new long[]{0x0000000004040000L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__4_in_rule__PortInstanceConfig__Group__34554 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__AttributesAssignment_3_in_rule__PortInstanceConfig__Group__3__Impl4581 = new BitSet(new long[]{0x0000000004000002L});
- public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__4__Impl_in_rule__PortInstanceConfig__Group__44612 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_18_in_rule__PortInstanceConfig__Group__4__Impl4640 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group__0__Impl_in_rule__AttrClassConfig__Group__04681 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group__1_in_rule__AttrClassConfig__Group__04684 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_26_in_rule__AttrClassConfig__Group__0__Impl4712 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group__1__Impl_in_rule__AttrClassConfig__Group__14743 = new BitSet(new long[]{0x0000000008020000L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group__2_in_rule__AttrClassConfig__Group__14746 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__AttributeAssignment_1_in_rule__AttrClassConfig__Group__1__Impl4773 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group__2__Impl_in_rule__AttrClassConfig__Group__24803 = new BitSet(new long[]{0x0000000008020000L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group__3_in_rule__AttrClassConfig__Group__24806 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_2__0_in_rule__AttrClassConfig__Group__2__Impl4833 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group__3__Impl_in_rule__AttrClassConfig__Group__34864 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__0_in_rule__AttrClassConfig__Group__3__Impl4891 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_2__0__Impl_in_rule__AttrClassConfig__Group_2__04930 = new BitSet(new long[]{0x0000000A0000E0D0L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_2__1_in_rule__AttrClassConfig__Group_2__04933 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_27_in_rule__AttrClassConfig__Group_2__0__Impl4961 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_2__1__Impl_in_rule__AttrClassConfig__Group_2__14992 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__ValueAssignment_2_1_in_rule__AttrClassConfig__Group_2__1__Impl5019 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__0__Impl_in_rule__AttrClassConfig__Group_3__05053 = new BitSet(new long[]{0x0000000030000000L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__1_in_rule__AttrClassConfig__Group_3__05056 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_17_in_rule__AttrClassConfig__Group_3__0__Impl5084 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__1__Impl_in_rule__AttrClassConfig__Group_3__15115 = new BitSet(new long[]{0x0000000000040000L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__2_in_rule__AttrClassConfig__Group_3__15118 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1_in_rule__AttrClassConfig__Group_3__1__Impl5145 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__2__Impl_in_rule__AttrClassConfig__Group_3__25175 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_18_in_rule__AttrClassConfig__Group_3__2__Impl5203 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__0__Impl_in_rule__AttrClassConfig__Group_3_1_0__05240 = new BitSet(new long[]{0x0000000008000000L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__1_in_rule__AttrClassConfig__Group_3_1_0__05243 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_28_in_rule__AttrClassConfig__Group_3_1_0__0__Impl5271 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__1__Impl_in_rule__AttrClassConfig__Group_3_1_0__15302 = new BitSet(new long[]{0x000000020000C050L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__2_in_rule__AttrClassConfig__Group_3_1_0__15305 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_27_in_rule__AttrClassConfig__Group_3_1_0__1__Impl5333 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__2__Impl_in_rule__AttrClassConfig__Group_3_1_0__25364 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__MinAssignment_3_1_0_2_in_rule__AttrClassConfig__Group_3_1_0__2__Impl5391 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__0__Impl_in_rule__AttrClassConfig__Group_3_1_1__05427 = new BitSet(new long[]{0x0000000008000000L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__1_in_rule__AttrClassConfig__Group_3_1_1__05430 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_29_in_rule__AttrClassConfig__Group_3_1_1__0__Impl5458 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__1__Impl_in_rule__AttrClassConfig__Group_3_1_1__15489 = new BitSet(new long[]{0x000000020000C050L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__2_in_rule__AttrClassConfig__Group_3_1_1__15492 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_27_in_rule__AttrClassConfig__Group_3_1_1__1__Impl5520 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__2__Impl_in_rule__AttrClassConfig__Group_3_1_1__25551 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__MaxAssignment_3_1_1_2_in_rule__AttrClassConfig__Group_3_1_1__2__Impl5578 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__0__Impl_in_rule__AttrInstanceConfig__Group__05614 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__1_in_rule__AttrInstanceConfig__Group__05617 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_26_in_rule__AttrInstanceConfig__Group__0__Impl5645 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__1__Impl_in_rule__AttrInstanceConfig__Group__15676 = new BitSet(new long[]{0x0000000008000000L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__2_in_rule__AttrInstanceConfig__Group__15679 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__AttributeAssignment_1_in_rule__AttrInstanceConfig__Group__1__Impl5706 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__2__Impl_in_rule__AttrInstanceConfig__Group__25736 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_2__0_in_rule__AttrInstanceConfig__Group__2__Impl5763 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_2__0__Impl_in_rule__AttrInstanceConfig__Group_2__05800 = new BitSet(new long[]{0x0000000A0000E0D0L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_2__1_in_rule__AttrInstanceConfig__Group_2__05803 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_27_in_rule__AttrInstanceConfig__Group_2__0__Impl5831 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_2__1__Impl_in_rule__AttrInstanceConfig__Group_2__15862 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrInstanceConfig__ValueAssignment_2_1_in_rule__AttrInstanceConfig__Group_2__1__Impl5889 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RefPath__Group__0__Impl_in_rule__RefPath__Group__05923 = new BitSet(new long[]{0x0000000000100000L});
- public static final BitSet FOLLOW_rule__RefPath__Group__1_in_rule__RefPath__Group__05926 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RefPath__RefsAssignment_0_in_rule__RefPath__Group__0__Impl5953 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RefPath__Group__1__Impl_in_rule__RefPath__Group__15983 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RefPath__Group_1__0_in_rule__RefPath__Group__1__Impl6010 = new BitSet(new long[]{0x0000000000100002L});
- public static final BitSet FOLLOW_rule__RefPath__Group_1__0__Impl_in_rule__RefPath__Group_1__06045 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__RefPath__Group_1__1_in_rule__RefPath__Group_1__06048 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_20_in_rule__RefPath__Group_1__0__Impl6076 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RefPath__Group_1__1__Impl_in_rule__RefPath__Group_1__16107 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RefPath__RefsAssignment_1_1_in_rule__RefPath__Group_1__1__Impl6134 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__06168 = new BitSet(new long[]{0x0000000000001020L});
- public static final BitSet FOLLOW_rule__Import__Group__1_in_rule__Import__Group__06171 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_30_in_rule__Import__Group__0__Impl6199 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__16230 = new BitSet(new long[]{0x0000000000000080L});
- public static final BitSet FOLLOW_rule__Import__Group__2_in_rule__Import__Group__16233 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__Alternatives_1_in_rule__Import__Group__1__Impl6260 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__Group__2__Impl_in_rule__Import__Group__26290 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__ImportURIAssignment_2_in_rule__Import__Group__2__Impl6317 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__Group_1_0__0__Impl_in_rule__Import__Group_1_0__06353 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_rule__Import__Group_1_0__1_in_rule__Import__Group_1_0__06356 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__ImportedNamespaceAssignment_1_0_0_in_rule__Import__Group_1_0__0__Impl6383 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Import__Group_1_0__1__Impl_in_rule__Import__Group_1_0__16413 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_31_in_rule__Import__Group_1_0__1__Impl6441 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ImportedFQN__Group__0__Impl_in_rule__ImportedFQN__Group__06476 = new BitSet(new long[]{0x0000000100000000L});
- public static final BitSet FOLLOW_rule__ImportedFQN__Group__1_in_rule__ImportedFQN__Group__06479 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleFQN_in_rule__ImportedFQN__Group__0__Impl6506 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ImportedFQN__Group__1__Impl_in_rule__ImportedFQN__Group__16535 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_32_in_rule__ImportedFQN__Group__1__Impl6564 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__FQN__Group__0__Impl_in_rule__FQN__Group__06601 = new BitSet(new long[]{0x0000000200000000L});
- public static final BitSet FOLLOW_rule__FQN__Group__1_in_rule__FQN__Group__06604 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_rule__FQN__Group__0__Impl6631 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__FQN__Group__1__Impl_in_rule__FQN__Group__16660 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__FQN__Group_1__0_in_rule__FQN__Group__1__Impl6687 = new BitSet(new long[]{0x0000000200000002L});
- public static final BitSet FOLLOW_rule__FQN__Group_1__0__Impl_in_rule__FQN__Group_1__06722 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__FQN__Group_1__1_in_rule__FQN__Group_1__06725 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_33_in_rule__FQN__Group_1__0__Impl6753 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__FQN__Group_1__1__Impl_in_rule__FQN__Group_1__16784 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_rule__FQN__Group_1__1__Impl6811 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__LiteralArray__Group__0__Impl_in_rule__LiteralArray__Group__06844 = new BitSet(new long[]{0x0000000400000000L});
- public static final BitSet FOLLOW_rule__LiteralArray__Group__1_in_rule__LiteralArray__Group__06847 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__LiteralArray__LiteralsAssignment_0_in_rule__LiteralArray__Group__0__Impl6874 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__LiteralArray__Group__1__Impl_in_rule__LiteralArray__Group__16904 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__LiteralArray__Group_1__0_in_rule__LiteralArray__Group__1__Impl6931 = new BitSet(new long[]{0x0000000400000002L});
- public static final BitSet FOLLOW_rule__LiteralArray__Group_1__0__Impl_in_rule__LiteralArray__Group_1__06966 = new BitSet(new long[]{0x0000000A0000E0D0L});
- public static final BitSet FOLLOW_rule__LiteralArray__Group_1__1_in_rule__LiteralArray__Group_1__06969 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_34_in_rule__LiteralArray__Group_1__0__Impl6997 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__LiteralArray__Group_1__1__Impl_in_rule__LiteralArray__Group_1__17028 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__LiteralArray__LiteralsAssignment_1_1_in_rule__LiteralArray__Group_1__1__Impl7055 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__BooleanLiteral__Group__0__Impl_in_rule__BooleanLiteral__Group__07089 = new BitSet(new long[]{0x0000000800002000L});
- public static final BitSet FOLLOW_rule__BooleanLiteral__Group__1_in_rule__BooleanLiteral__Group__07092 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__BooleanLiteral__Group__1__Impl_in_rule__BooleanLiteral__Group__17150 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__BooleanLiteral__Alternatives_1_in_rule__BooleanLiteral__Group__1__Impl7177 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RealLiteral__Group__0__Impl_in_rule__RealLiteral__Group__07211 = new BitSet(new long[]{0x000000020000C050L});
- public static final BitSet FOLLOW_rule__RealLiteral__Group__1_in_rule__RealLiteral__Group__07214 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RealLiteral__Group__1__Impl_in_rule__RealLiteral__Group__17272 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__RealLiteral__ValueAssignment_1_in_rule__RealLiteral__Group__1__Impl7299 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__IntLiteral__Group__0__Impl_in_rule__IntLiteral__Group__07333 = new BitSet(new long[]{0x000000000000C050L});
- public static final BitSet FOLLOW_rule__IntLiteral__Group__1_in_rule__IntLiteral__Group__07336 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__IntLiteral__Group__1__Impl_in_rule__IntLiteral__Group__17394 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__IntLiteral__ValueAssignment_1_in_rule__IntLiteral__Group__1__Impl7421 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__StringLiteral__Group__0__Impl_in_rule__StringLiteral__Group__07455 = new BitSet(new long[]{0x0000000A0000E0D0L});
- public static final BitSet FOLLOW_rule__StringLiteral__Group__1_in_rule__StringLiteral__Group__07458 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__StringLiteral__Group__1__Impl_in_rule__StringLiteral__Group__17516 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__StringLiteral__ValueAssignment_1_in_rule__StringLiteral__Group__1__Impl7543 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__SignedInteger__Group__0__Impl_in_rule__SignedInteger__Group__07577 = new BitSet(new long[]{0x000000000000C040L});
- public static final BitSet FOLLOW_rule__SignedInteger__Group__1_in_rule__SignedInteger__Group__07580 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__SignedInteger__Alternatives_0_in_rule__SignedInteger__Group__0__Impl7607 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__SignedInteger__Group__1__Impl_in_rule__SignedInteger__Group__17638 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_INT_in_rule__SignedInteger__Group__1__Impl7665 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Decimal__Group__0__Impl_in_rule__Decimal__Group__07698 = new BitSet(new long[]{0x000000000000C040L});
- public static final BitSet FOLLOW_rule__Decimal__Group__1_in_rule__Decimal__Group__07701 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Decimal__Alternatives_0_in_rule__Decimal__Group__0__Impl7728 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Decimal__Group__1__Impl_in_rule__Decimal__Group__17759 = new BitSet(new long[]{0x0000000200000000L});
- public static final BitSet FOLLOW_rule__Decimal__Group__2_in_rule__Decimal__Group__17762 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_INT_in_rule__Decimal__Group__1__Impl7789 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Decimal__Group__2__Impl_in_rule__Decimal__Group__27818 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_rule__Decimal__Group__3_in_rule__Decimal__Group__27821 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_33_in_rule__Decimal__Group__2__Impl7849 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__Decimal__Group__3__Impl_in_rule__Decimal__Group__37880 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_INT_in_rule__Decimal__Group__3__Impl7907 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DotDecimal__Group__0__Impl_in_rule__DotDecimal__Group__07944 = new BitSet(new long[]{0x000000020000C000L});
- public static final BitSet FOLLOW_rule__DotDecimal__Group__1_in_rule__DotDecimal__Group__07947 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DotDecimal__Alternatives_0_in_rule__DotDecimal__Group__0__Impl7974 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DotDecimal__Group__1__Impl_in_rule__DotDecimal__Group__18005 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_rule__DotDecimal__Group__2_in_rule__DotDecimal__Group__18008 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_33_in_rule__DotDecimal__Group__1__Impl8036 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DotDecimal__Group__2__Impl_in_rule__DotDecimal__Group__28067 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_INT_in_rule__DotDecimal__Group__2__Impl8094 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalDot__Group__0__Impl_in_rule__DecimalDot__Group__08129 = new BitSet(new long[]{0x000000000000C040L});
- public static final BitSet FOLLOW_rule__DecimalDot__Group__1_in_rule__DecimalDot__Group__08132 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalDot__Alternatives_0_in_rule__DecimalDot__Group__0__Impl8159 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalDot__Group__1__Impl_in_rule__DecimalDot__Group__18190 = new BitSet(new long[]{0x0000000200000000L});
- public static final BitSet FOLLOW_rule__DecimalDot__Group__2_in_rule__DecimalDot__Group__18193 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalDot__Group__1__Impl8220 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalDot__Group__2__Impl_in_rule__DecimalDot__Group__28249 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_33_in_rule__DecimalDot__Group__2__Impl8277 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__0__Impl_in_rule__DecimalExp__Group__08314 = new BitSet(new long[]{0x000000020000C050L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__1_in_rule__DecimalExp__Group__08317 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Alternatives_0_in_rule__DecimalExp__Group__0__Impl8344 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__1__Impl_in_rule__DecimalExp__Group__18375 = new BitSet(new long[]{0x0000000200000000L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__2_in_rule__DecimalExp__Group__18378 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalExp__Group__1__Impl8405 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__2__Impl_in_rule__DecimalExp__Group__28434 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__3_in_rule__DecimalExp__Group__28437 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_33_in_rule__DecimalExp__Group__2__Impl8465 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__3__Impl_in_rule__DecimalExp__Group__38496 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__4_in_rule__DecimalExp__Group__38499 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalExp__Group__3__Impl8526 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__4__Impl_in_rule__DecimalExp__Group__48555 = new BitSet(new long[]{0x000000000000C040L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__5_in_rule__DecimalExp__Group__48558 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_rule__DecimalExp__Group__4__Impl8585 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__5__Impl_in_rule__DecimalExp__Group__58614 = new BitSet(new long[]{0x000000000000C040L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__6_in_rule__DecimalExp__Group__58617 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Alternatives_5_in_rule__DecimalExp__Group__5__Impl8644 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__DecimalExp__Group__6__Impl_in_rule__DecimalExp__Group__68675 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalExp__Group__6__Impl8702 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__0_in_rule__ProtocolClassConfig__UnorderedGroup_38746 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_0__0_in_rule__ProtocolClassConfig__UnorderedGroup_3__Impl8833 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_1__0_in_rule__ProtocolClassConfig__UnorderedGroup_3__Impl8924 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__Impl_in_rule__ProtocolClassConfig__UnorderedGroup_3__08983 = new BitSet(new long[]{0x0000000000C00002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__1_in_rule__ProtocolClassConfig__UnorderedGroup_3__08986 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__Impl_in_rule__ProtocolClassConfig__UnorderedGroup_3__19011 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1__0_in_rule__AttrClassConfig__UnorderedGroup_3_19039 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__0_in_rule__AttrClassConfig__UnorderedGroup_3_1__Impl9126 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__0_in_rule__AttrClassConfig__UnorderedGroup_3_1__Impl9217 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1__Impl_in_rule__AttrClassConfig__UnorderedGroup_3_1__09276 = new BitSet(new long[]{0x0000000030000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1__1_in_rule__AttrClassConfig__UnorderedGroup_3_1__09279 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rule__AttrClassConfig__UnorderedGroup_3_1__Impl_in_rule__AttrClassConfig__UnorderedGroup_3_1__19304 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleImport_in_rule__ConfigModel__ImportsAssignment_09336 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleConfigElement_in_rule__ConfigModel__ConfigElementsAssignment_19367 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleFQN_in_rule__ActorClassConfig__ActorAssignment_19402 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAttrClassConfig_in_rule__ActorClassConfig__AttributesAssignment_39437 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleFQN_in_rule__ActorInstanceConfig__RootAssignment_19472 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleRefPath_in_rule__ActorInstanceConfig__PathAssignment_39507 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_rule__ActorInstanceConfig__AttributesAssignment_59538 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rulePortInstanceConfig_in_rule__ActorInstanceConfig__PortsAssignment_69569 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleFQN_in_rule__ProtocolClassConfig__ProtocolAssignment_19604 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rulePortClassConfig_in_rule__ProtocolClassConfig__RegularAssignment_3_0_19639 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rulePortClassConfig_in_rule__ProtocolClassConfig__ConjugatedAssignment_3_1_19670 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAttrClassConfig_in_rule__PortClassConfig__AttributesAssignment_39701 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_rule__PortInstanceConfig__ItemAssignment_19736 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_rule__PortInstanceConfig__AttributesAssignment_39771 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_rule__AttrClassConfig__AttributeAssignment_19806 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleLiteralArray_in_rule__AttrClassConfig__ValueAssignment_2_19841 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleNumberLiteral_in_rule__AttrClassConfig__MinAssignment_3_1_0_29872 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleNumberLiteral_in_rule__AttrClassConfig__MaxAssignment_3_1_1_29903 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_rule__AttrInstanceConfig__AttributeAssignment_19938 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleLiteralArray_in_rule__AttrInstanceConfig__ValueAssignment_2_19973 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_rule__RefPath__RefsAssignment_010004 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_rule__RefPath__RefsAssignment_1_110035 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleImportedFQN_in_rule__Import__ImportedNamespaceAssignment_1_0_010066 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment_210097 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleLiteral_in_rule__LiteralArray__LiteralsAssignment_010128 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleLiteral_in_rule__LiteralArray__LiteralsAssignment_1_110159 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_35_in_rule__BooleanLiteral__IsTrueAssignment_1_110195 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleReal_in_rule__RealLiteral__ValueAssignment_110234 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleInteger_in_rule__IntLiteral__ValueAssignment_110265 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_STRING_in_rule__StringLiteral__ValueAssignment_110296 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSubSystemConfig_in_entryRuleSubSystemConfig181 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleSubSystemConfig188 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__0_in_ruleSubSystemConfig214 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDynamicConfig_in_entryRuleDynamicConfig241 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDynamicConfig248 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group__0_in_ruleDynamicConfig274 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleActorClassConfig_in_entryRuleActorClassConfig301 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleActorClassConfig308 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__0_in_ruleActorClassConfig334 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleActorInstanceConfig_in_entryRuleActorInstanceConfig361 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleActorInstanceConfig368 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__0_in_ruleActorInstanceConfig394 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleProtocolClassConfig_in_entryRuleProtocolClassConfig421 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleProtocolClassConfig428 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__0_in_ruleProtocolClassConfig454 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rulePortClassConfig_in_entryRulePortClassConfig481 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRulePortClassConfig488 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__0_in_rulePortClassConfig514 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rulePortInstanceConfig_in_entryRulePortInstanceConfig541 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRulePortInstanceConfig548 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__0_in_rulePortInstanceConfig574 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrClassConfig_in_entryRuleAttrClassConfig603 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAttrClassConfig610 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group__0_in_ruleAttrClassConfig636 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_entryRuleAttrInstanceConfig663 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAttrInstanceConfig670 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__0_in_ruleAttrInstanceConfig696 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRefPath_in_entryRuleRefPath723 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleRefPath730 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RefPath__Group__0_in_ruleRefPath756 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleImport_in_entryRuleImport783 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleImport790 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__Group__0_in_ruleImport816 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN843 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleImportedFQN850 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ImportedFQN__Group__0_in_ruleImportedFQN876 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleFQN_in_entryRuleFQN903 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleFQN910 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group__0_in_ruleFQN936 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteralArray_in_entryRuleLiteralArray963 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleLiteralArray970 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__LiteralArray__Group__0_in_ruleLiteralArray996 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteral_in_entryRuleLiteral1023 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleLiteral1030 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Literal__Alternatives_in_ruleLiteral1056 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral1083 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleBooleanLiteral1090 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Group__0_in_ruleBooleanLiteral1116 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral1143 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleNumberLiteral1150 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__NumberLiteral__Alternatives_in_ruleNumberLiteral1176 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral1203 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleRealLiteral1210 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RealLiteral__Group__0_in_ruleRealLiteral1236 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral1263 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleIntLiteral1270 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__IntLiteral__Group__0_in_ruleIntLiteral1296 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral1323 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleStringLiteral1330 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__StringLiteral__Group__0_in_ruleStringLiteral1356 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleInteger_in_entryRuleInteger1383 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleInteger1390 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Integer__Alternatives_in_ruleInteger1416 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger1448 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleSignedInteger1455 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Group__0_in_ruleSignedInteger1485 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal1517 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleHexadecimal1524 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_HEX_in_ruleHexadecimal1554 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleReal_in_entryRuleReal1580 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleReal1587 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Real__Alternatives_in_ruleReal1613 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimal_in_entryRuleDecimal1645 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDecimal1652 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__0_in_ruleDecimal1682 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal1714 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDotDecimal1721 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__0_in_ruleDotDecimal1751 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot1783 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDecimalDot1790 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__0_in_ruleDecimalDot1820 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp1852 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDecimalExp1859 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__0_in_ruleDecimalExp1889 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSubSystemConfig_in_rule__ConfigElement__Alternatives1925 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleActorClassConfig_in_rule__ConfigElement__Alternatives1942 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleActorInstanceConfig_in_rule__ConfigElement__Alternatives1959 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleProtocolClassConfig_in_rule__ConfigElement__Alternatives1976 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_0__0_in_rule__DynamicConfig__Alternatives_2_02008 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1__0_in_rule__DynamicConfig__Alternatives_2_02026 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_0_in_rule__AttrInstanceConfig__Alternatives_3_1_0_12060 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_13_in_rule__AttrInstanceConfig__Alternatives_3_1_0_12079 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__Group_1_0__0_in_rule__Import__Alternatives_12113 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_14_in_rule__Import__Alternatives_12132 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleBooleanLiteral_in_rule__Literal__Alternatives2166 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_rule__Literal__Alternatives2183 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleStringLiteral_in_rule__Literal__Alternatives2200 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_15_in_rule__BooleanLiteral__Alternatives_12233 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__IsTrueAssignment_1_1_in_rule__BooleanLiteral__Alternatives_12252 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleIntLiteral_in_rule__NumberLiteral__Alternatives2285 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRealLiteral_in_rule__NumberLiteral__Alternatives2302 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSignedInteger_in_rule__Integer__Alternatives2334 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleHexadecimal_in_rule__Integer__Alternatives2351 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__SignedInteger__Alternatives_02384 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_17_in_rule__SignedInteger__Alternatives_02404 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimal_in_rule__Real__Alternatives2438 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDotDecimal_in_rule__Real__Alternatives2455 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalDot_in_rule__Real__Alternatives2472 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalExp_in_rule__Real__Alternatives2489 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__Decimal__Alternatives_02522 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_17_in_rule__Decimal__Alternatives_02542 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__DotDecimal__Alternatives_02577 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_17_in_rule__DotDecimal__Alternatives_02597 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__DecimalDot__Alternatives_02632 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_17_in_rule__DecimalDot__Alternatives_02652 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_rule__DecimalExp__Alternatives_02687 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_17_in_rule__DecimalExp__Alternatives_02707 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ConfigModel__Group__0__Impl_in_rule__ConfigModel__Group__02739 = new BitSet(new long[]{0x000000002C040000L});
+ public static final BitSet FOLLOW_rule__ConfigModel__Group__1_in_rule__ConfigModel__Group__02742 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ConfigModel__ImportsAssignment_0_in_rule__ConfigModel__Group__0__Impl2769 = new BitSet(new long[]{0x0000004000000002L});
+ public static final BitSet FOLLOW_rule__ConfigModel__Group__1__Impl_in_rule__ConfigModel__Group__12800 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ConfigModel__ConfigElementsAssignment_1_in_rule__ConfigModel__Group__1__Impl2827 = new BitSet(new long[]{0x000000002C040002L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__0__Impl_in_rule__SubSystemConfig__Group__02862 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__1_in_rule__SubSystemConfig__Group__02865 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_18_in_rule__SubSystemConfig__Group__0__Impl2893 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__1__Impl_in_rule__SubSystemConfig__Group__12924 = new BitSet(new long[]{0x0000000000080000L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__2_in_rule__SubSystemConfig__Group__12927 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__SubSystemAssignment_1_in_rule__SubSystemConfig__Group__1__Impl2954 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__2__Impl_in_rule__SubSystemConfig__Group__22984 = new BitSet(new long[]{0x0000000000200000L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__3_in_rule__SubSystemConfig__Group__22987 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__SubSystemConfig__Group__2__Impl3015 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__3__Impl_in_rule__SubSystemConfig__Group__33046 = new BitSet(new long[]{0x0000000000100000L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__4_in_rule__SubSystemConfig__Group__33049 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__DynConfigAssignment_3_in_rule__SubSystemConfig__Group__3__Impl3076 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SubSystemConfig__Group__4__Impl_in_rule__SubSystemConfig__Group__43106 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__SubSystemConfig__Group__4__Impl3134 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group__0__Impl_in_rule__DynamicConfig__Group__03175 = new BitSet(new long[]{0x0000000000080000L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group__1_in_rule__DynamicConfig__Group__03178 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_21_in_rule__DynamicConfig__Group__0__Impl3206 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group__1__Impl_in_rule__DynamicConfig__Group__13237 = new BitSet(new long[]{0x0000000002C00000L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group__2_in_rule__DynamicConfig__Group__13240 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__DynamicConfig__Group__1__Impl3268 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group__2__Impl_in_rule__DynamicConfig__Group__23299 = new BitSet(new long[]{0x0000000000100000L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group__3_in_rule__DynamicConfig__Group__23302 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__UnorderedGroup_2_in_rule__DynamicConfig__Group__2__Impl3329 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group__3__Impl_in_rule__DynamicConfig__Group__33359 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__DynamicConfig__Group__3__Impl3387 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_0__0__Impl_in_rule__DynamicConfig__Group_2_0_0__03426 = new BitSet(new long[]{0x0000000000000100L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_0__1_in_rule__DynamicConfig__Group_2_0_0__03429 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_22_in_rule__DynamicConfig__Group_2_0_0__0__Impl3457 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_0__1__Impl_in_rule__DynamicConfig__Group_2_0_0__13488 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__FilePathAssignment_2_0_0_1_in_rule__DynamicConfig__Group_2_0_0__1__Impl3515 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1__0__Impl_in_rule__DynamicConfig__Group_2_0_1__03549 = new BitSet(new long[]{0x0000000001000000L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1__1_in_rule__DynamicConfig__Group_2_0_1__03552 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1_0__0_in_rule__DynamicConfig__Group_2_0_1__0__Impl3579 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1__1__Impl_in_rule__DynamicConfig__Group_2_0_1__13609 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1_1__0_in_rule__DynamicConfig__Group_2_0_1__1__Impl3636 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1_0__0__Impl_in_rule__DynamicConfig__Group_2_0_1_0__03670 = new BitSet(new long[]{0x0000000000000100L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1_0__1_in_rule__DynamicConfig__Group_2_0_1_0__03673 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_23_in_rule__DynamicConfig__Group_2_0_1_0__0__Impl3701 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1_0__1__Impl_in_rule__DynamicConfig__Group_2_0_1_0__13732 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__UserCode1Assignment_2_0_1_0_1_in_rule__DynamicConfig__Group_2_0_1_0__1__Impl3759 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1_1__0__Impl_in_rule__DynamicConfig__Group_2_0_1_1__03793 = new BitSet(new long[]{0x0000000000000100L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1_1__1_in_rule__DynamicConfig__Group_2_0_1_1__03796 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_24_in_rule__DynamicConfig__Group_2_0_1_1__0__Impl3824 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_0_1_1__1__Impl_in_rule__DynamicConfig__Group_2_0_1_1__13855 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__UserCode2Assignment_2_0_1_1_1_in_rule__DynamicConfig__Group_2_0_1_1__1__Impl3882 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_1__0__Impl_in_rule__DynamicConfig__Group_2_1__03916 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_1__1_in_rule__DynamicConfig__Group_2_1__03919 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_25_in_rule__DynamicConfig__Group_2_1__0__Impl3947 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_1__1__Impl_in_rule__DynamicConfig__Group_2_1__13978 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__PollingAssignment_2_1_1_in_rule__DynamicConfig__Group_2_1__1__Impl4005 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__0__Impl_in_rule__ActorClassConfig__Group__04039 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__1_in_rule__ActorClassConfig__Group__04042 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_26_in_rule__ActorClassConfig__Group__0__Impl4070 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__1__Impl_in_rule__ActorClassConfig__Group__14101 = new BitSet(new long[]{0x0000000000080000L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__2_in_rule__ActorClassConfig__Group__14104 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__ActorAssignment_1_in_rule__ActorClassConfig__Group__1__Impl4131 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__2__Impl_in_rule__ActorClassConfig__Group__24161 = new BitSet(new long[]{0x0000000400100000L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__3_in_rule__ActorClassConfig__Group__24164 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__ActorClassConfig__Group__2__Impl4192 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__3__Impl_in_rule__ActorClassConfig__Group__34223 = new BitSet(new long[]{0x0000000400100000L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__4_in_rule__ActorClassConfig__Group__34226 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__AttributesAssignment_3_in_rule__ActorClassConfig__Group__3__Impl4253 = new BitSet(new long[]{0x0000000400000002L});
+ public static final BitSet FOLLOW_rule__ActorClassConfig__Group__4__Impl_in_rule__ActorClassConfig__Group__44284 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__ActorClassConfig__Group__4__Impl4312 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__0__Impl_in_rule__ActorInstanceConfig__Group__04353 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__1_in_rule__ActorInstanceConfig__Group__04356 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_27_in_rule__ActorInstanceConfig__Group__0__Impl4384 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__1__Impl_in_rule__ActorInstanceConfig__Group__14415 = new BitSet(new long[]{0x0000000010000000L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__2_in_rule__ActorInstanceConfig__Group__14418 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__RootAssignment_1_in_rule__ActorInstanceConfig__Group__1__Impl4445 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__2__Impl_in_rule__ActorInstanceConfig__Group__24475 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__3_in_rule__ActorInstanceConfig__Group__24478 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_28_in_rule__ActorInstanceConfig__Group__2__Impl4506 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__3__Impl_in_rule__ActorInstanceConfig__Group__34537 = new BitSet(new long[]{0x0000000000080000L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__4_in_rule__ActorInstanceConfig__Group__34540 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__PathAssignment_3_in_rule__ActorInstanceConfig__Group__3__Impl4567 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__4__Impl_in_rule__ActorInstanceConfig__Group__44597 = new BitSet(new long[]{0x0000000600000000L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__5_in_rule__ActorInstanceConfig__Group__44600 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__ActorInstanceConfig__Group__4__Impl4628 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__5__Impl_in_rule__ActorInstanceConfig__Group__54659 = new BitSet(new long[]{0x0000000000100000L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__6_in_rule__ActorInstanceConfig__Group__54662 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5_in_rule__ActorInstanceConfig__Group__5__Impl4689 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__Group__6__Impl_in_rule__ActorInstanceConfig__Group__64719 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__ActorInstanceConfig__Group__6__Impl4747 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__0__Impl_in_rule__ProtocolClassConfig__Group__04792 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__1_in_rule__ProtocolClassConfig__Group__04795 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_29_in_rule__ProtocolClassConfig__Group__0__Impl4823 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__1__Impl_in_rule__ProtocolClassConfig__Group__14854 = new BitSet(new long[]{0x0000000000080000L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__2_in_rule__ProtocolClassConfig__Group__14857 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__ProtocolAssignment_1_in_rule__ProtocolClassConfig__Group__1__Impl4884 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__2__Impl_in_rule__ProtocolClassConfig__Group__24914 = new BitSet(new long[]{0x00000000C0000000L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__3_in_rule__ProtocolClassConfig__Group__24917 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__ProtocolClassConfig__Group__2__Impl4945 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__3__Impl_in_rule__ProtocolClassConfig__Group__34976 = new BitSet(new long[]{0x0000000000100000L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__4_in_rule__ProtocolClassConfig__Group__34979 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3_in_rule__ProtocolClassConfig__Group__3__Impl5006 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group__4__Impl_in_rule__ProtocolClassConfig__Group__45036 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__ProtocolClassConfig__Group__4__Impl5064 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_0__0__Impl_in_rule__ProtocolClassConfig__Group_3_0__05105 = new BitSet(new long[]{0x0000000100000000L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_0__1_in_rule__ProtocolClassConfig__Group_3_0__05108 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_30_in_rule__ProtocolClassConfig__Group_3_0__0__Impl5136 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_0__1__Impl_in_rule__ProtocolClassConfig__Group_3_0__15167 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__RegularAssignment_3_0_1_in_rule__ProtocolClassConfig__Group_3_0__1__Impl5194 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_1__0__Impl_in_rule__ProtocolClassConfig__Group_3_1__05228 = new BitSet(new long[]{0x0000000100000000L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_1__1_in_rule__ProtocolClassConfig__Group_3_1__05231 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_31_in_rule__ProtocolClassConfig__Group_3_1__0__Impl5259 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_1__1__Impl_in_rule__ProtocolClassConfig__Group_3_1__15290 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__ConjugatedAssignment_3_1_1_in_rule__ProtocolClassConfig__Group_3_1__1__Impl5317 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__0__Impl_in_rule__PortClassConfig__Group__05351 = new BitSet(new long[]{0x0000000100000000L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__1_in_rule__PortClassConfig__Group__05354 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__1__Impl_in_rule__PortClassConfig__Group__15412 = new BitSet(new long[]{0x0000000000080000L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__2_in_rule__PortClassConfig__Group__15415 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_32_in_rule__PortClassConfig__Group__1__Impl5443 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__2__Impl_in_rule__PortClassConfig__Group__25474 = new BitSet(new long[]{0x0000000400100000L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__3_in_rule__PortClassConfig__Group__25477 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__PortClassConfig__Group__2__Impl5505 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__3__Impl_in_rule__PortClassConfig__Group__35536 = new BitSet(new long[]{0x0000000400100000L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__4_in_rule__PortClassConfig__Group__35539 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__AttributesAssignment_3_in_rule__PortClassConfig__Group__3__Impl5566 = new BitSet(new long[]{0x0000000400000002L});
+ public static final BitSet FOLLOW_rule__PortClassConfig__Group__4__Impl_in_rule__PortClassConfig__Group__45597 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__PortClassConfig__Group__4__Impl5625 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__0__Impl_in_rule__PortInstanceConfig__Group__05666 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__1_in_rule__PortInstanceConfig__Group__05669 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_33_in_rule__PortInstanceConfig__Group__0__Impl5697 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__1__Impl_in_rule__PortInstanceConfig__Group__15728 = new BitSet(new long[]{0x0000000000080000L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__2_in_rule__PortInstanceConfig__Group__15731 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__ItemAssignment_1_in_rule__PortInstanceConfig__Group__1__Impl5758 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__2__Impl_in_rule__PortInstanceConfig__Group__25788 = new BitSet(new long[]{0x0000000400100000L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__3_in_rule__PortInstanceConfig__Group__25791 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__PortInstanceConfig__Group__2__Impl5819 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__3__Impl_in_rule__PortInstanceConfig__Group__35850 = new BitSet(new long[]{0x0000000400100000L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__4_in_rule__PortInstanceConfig__Group__35853 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__AttributesAssignment_3_in_rule__PortInstanceConfig__Group__3__Impl5880 = new BitSet(new long[]{0x0000000400000002L});
+ public static final BitSet FOLLOW_rule__PortInstanceConfig__Group__4__Impl_in_rule__PortInstanceConfig__Group__45911 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__PortInstanceConfig__Group__4__Impl5939 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group__0__Impl_in_rule__AttrClassConfig__Group__05980 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group__1_in_rule__AttrClassConfig__Group__05983 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_34_in_rule__AttrClassConfig__Group__0__Impl6011 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group__1__Impl_in_rule__AttrClassConfig__Group__16042 = new BitSet(new long[]{0x0000000800080000L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group__2_in_rule__AttrClassConfig__Group__16045 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__AttributeAssignment_1_in_rule__AttrClassConfig__Group__1__Impl6072 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group__2__Impl_in_rule__AttrClassConfig__Group__26102 = new BitSet(new long[]{0x0000000800080000L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group__3_in_rule__AttrClassConfig__Group__26105 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_2__0_in_rule__AttrClassConfig__Group__2__Impl6132 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group__3__Impl_in_rule__AttrClassConfig__Group__36163 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__0_in_rule__AttrClassConfig__Group__3__Impl6190 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_2__0__Impl_in_rule__AttrClassConfig__Group_2__06229 = new BitSet(new long[]{0x0000120000038150L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_2__1_in_rule__AttrClassConfig__Group_2__06232 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_35_in_rule__AttrClassConfig__Group_2__0__Impl6260 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_2__1__Impl_in_rule__AttrClassConfig__Group_2__16291 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__ValueAssignment_2_1_in_rule__AttrClassConfig__Group_2__1__Impl6318 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__0__Impl_in_rule__AttrClassConfig__Group_3__06352 = new BitSet(new long[]{0x0000003400000000L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__1_in_rule__AttrClassConfig__Group_3__06355 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__AttrClassConfig__Group_3__0__Impl6383 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__1__Impl_in_rule__AttrClassConfig__Group_3__16414 = new BitSet(new long[]{0x0000000000100000L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__2_in_rule__AttrClassConfig__Group_3__16417 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1__0_in_rule__AttrClassConfig__Group_3__1__Impl6444 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3__2__Impl_in_rule__AttrClassConfig__Group_3__26474 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__AttrClassConfig__Group_3__2__Impl6502 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1__0__Impl_in_rule__AttrClassConfig__Group_3_1__06539 = new BitSet(new long[]{0x0000003400000000L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1__1_in_rule__AttrClassConfig__Group_3_1__06542 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__0_in_rule__AttrClassConfig__Group_3_1__0__Impl6569 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1__1__Impl_in_rule__AttrClassConfig__Group_3_1__16600 = new BitSet(new long[]{0x0000003400000000L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1__2_in_rule__AttrClassConfig__Group_3_1__16603 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__0_in_rule__AttrClassConfig__Group_3_1__1__Impl6630 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1__2__Impl_in_rule__AttrClassConfig__Group_3_1__26661 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__AttributesAssignment_3_1_2_in_rule__AttrClassConfig__Group_3_1__2__Impl6688 = new BitSet(new long[]{0x0000000400000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__0__Impl_in_rule__AttrClassConfig__Group_3_1_0__06725 = new BitSet(new long[]{0x0000000800000000L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__1_in_rule__AttrClassConfig__Group_3_1_0__06728 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_36_in_rule__AttrClassConfig__Group_3_1_0__0__Impl6756 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__1__Impl_in_rule__AttrClassConfig__Group_3_1_0__16787 = new BitSet(new long[]{0x0000020000030050L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__2_in_rule__AttrClassConfig__Group_3_1_0__16790 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_35_in_rule__AttrClassConfig__Group_3_1_0__1__Impl6818 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_0__2__Impl_in_rule__AttrClassConfig__Group_3_1_0__26849 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__MinAssignment_3_1_0_2_in_rule__AttrClassConfig__Group_3_1_0__2__Impl6876 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__0__Impl_in_rule__AttrClassConfig__Group_3_1_1__06912 = new BitSet(new long[]{0x0000000800000000L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__1_in_rule__AttrClassConfig__Group_3_1_1__06915 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_37_in_rule__AttrClassConfig__Group_3_1_1__0__Impl6943 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__1__Impl_in_rule__AttrClassConfig__Group_3_1_1__16974 = new BitSet(new long[]{0x0000020000030050L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__2_in_rule__AttrClassConfig__Group_3_1_1__16977 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_35_in_rule__AttrClassConfig__Group_3_1_1__1__Impl7005 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__Group_3_1_1__2__Impl_in_rule__AttrClassConfig__Group_3_1_1__27036 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrClassConfig__MaxAssignment_3_1_1_2_in_rule__AttrClassConfig__Group_3_1_1__2__Impl7063 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__0__Impl_in_rule__AttrInstanceConfig__Group__07099 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__1_in_rule__AttrInstanceConfig__Group__07102 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_34_in_rule__AttrInstanceConfig__Group__0__Impl7130 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__1__Impl_in_rule__AttrInstanceConfig__Group__17161 = new BitSet(new long[]{0x0000000800080000L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__2_in_rule__AttrInstanceConfig__Group__17164 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__AttributeAssignment_1_in_rule__AttrInstanceConfig__Group__1__Impl7191 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__2__Impl_in_rule__AttrInstanceConfig__Group__27221 = new BitSet(new long[]{0x0000000800080000L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__3_in_rule__AttrInstanceConfig__Group__27224 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_2__0_in_rule__AttrInstanceConfig__Group__2__Impl7251 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group__3__Impl_in_rule__AttrInstanceConfig__Group__37282 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3__0_in_rule__AttrInstanceConfig__Group__3__Impl7309 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_2__0__Impl_in_rule__AttrInstanceConfig__Group_2__07348 = new BitSet(new long[]{0x0000120000038150L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_2__1_in_rule__AttrInstanceConfig__Group_2__07351 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_35_in_rule__AttrInstanceConfig__Group_2__0__Impl7379 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_2__1__Impl_in_rule__AttrInstanceConfig__Group_2__17410 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__ValueAssignment_2_1_in_rule__AttrInstanceConfig__Group_2__1__Impl7437 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3__0__Impl_in_rule__AttrInstanceConfig__Group_3__07471 = new BitSet(new long[]{0x0000000400200000L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3__1_in_rule__AttrInstanceConfig__Group_3__07474 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_19_in_rule__AttrInstanceConfig__Group_3__0__Impl7502 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3__1__Impl_in_rule__AttrInstanceConfig__Group_3__17533 = new BitSet(new long[]{0x0000000000100000L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3__2_in_rule__AttrInstanceConfig__Group_3__17536 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3_1__0_in_rule__AttrInstanceConfig__Group_3__1__Impl7563 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3__2__Impl_in_rule__AttrInstanceConfig__Group_3__27593 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_20_in_rule__AttrInstanceConfig__Group_3__2__Impl7621 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3_1__0__Impl_in_rule__AttrInstanceConfig__Group_3_1__07658 = new BitSet(new long[]{0x0000000400200000L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3_1__1_in_rule__AttrInstanceConfig__Group_3_1__07661 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3_1_0__0_in_rule__AttrInstanceConfig__Group_3_1__0__Impl7688 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3_1__1__Impl_in_rule__AttrInstanceConfig__Group_3_1__17719 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__AttributesAssignment_3_1_1_in_rule__AttrInstanceConfig__Group_3_1__1__Impl7746 = new BitSet(new long[]{0x0000000400000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3_1_0__0__Impl_in_rule__AttrInstanceConfig__Group_3_1_0__07781 = new BitSet(new long[]{0x0000080000002000L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3_1_0__1_in_rule__AttrInstanceConfig__Group_3_1_0__07784 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_0_in_rule__AttrInstanceConfig__Group_3_1_0__0__Impl7811 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Group_3_1_0__1__Impl_in_rule__AttrInstanceConfig__Group_3_1_0__17841 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__AttrInstanceConfig__Alternatives_3_1_0_1_in_rule__AttrInstanceConfig__Group_3_1_0__1__Impl7868 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RefPath__Group__0__Impl_in_rule__RefPath__Group__07902 = new BitSet(new long[]{0x0000000010000000L});
+ public static final BitSet FOLLOW_rule__RefPath__Group__1_in_rule__RefPath__Group__07905 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RefPath__RefsAssignment_0_in_rule__RefPath__Group__0__Impl7932 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RefPath__Group__1__Impl_in_rule__RefPath__Group__17962 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RefPath__Group_1__0_in_rule__RefPath__Group__1__Impl7989 = new BitSet(new long[]{0x0000000010000002L});
+ public static final BitSet FOLLOW_rule__RefPath__Group_1__0__Impl_in_rule__RefPath__Group_1__08024 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__RefPath__Group_1__1_in_rule__RefPath__Group_1__08027 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_28_in_rule__RefPath__Group_1__0__Impl8055 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RefPath__Group_1__1__Impl_in_rule__RefPath__Group_1__18086 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RefPath__RefsAssignment_1_1_in_rule__RefPath__Group_1__1__Impl8113 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__08147 = new BitSet(new long[]{0x0000000000004020L});
+ public static final BitSet FOLLOW_rule__Import__Group__1_in_rule__Import__Group__08150 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_38_in_rule__Import__Group__0__Impl8178 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__18209 = new BitSet(new long[]{0x0000000000000100L});
+ public static final BitSet FOLLOW_rule__Import__Group__2_in_rule__Import__Group__18212 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__Alternatives_1_in_rule__Import__Group__1__Impl8239 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__Group__2__Impl_in_rule__Import__Group__28269 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__ImportURIAssignment_2_in_rule__Import__Group__2__Impl8296 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__Group_1_0__0__Impl_in_rule__Import__Group_1_0__08332 = new BitSet(new long[]{0x0000008000000000L});
+ public static final BitSet FOLLOW_rule__Import__Group_1_0__1_in_rule__Import__Group_1_0__08335 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__ImportedNamespaceAssignment_1_0_0_in_rule__Import__Group_1_0__0__Impl8362 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Import__Group_1_0__1__Impl_in_rule__Import__Group_1_0__18392 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_39_in_rule__Import__Group_1_0__1__Impl8420 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ImportedFQN__Group__0__Impl_in_rule__ImportedFQN__Group__08455 = new BitSet(new long[]{0x0000010000000000L});
+ public static final BitSet FOLLOW_rule__ImportedFQN__Group__1_in_rule__ImportedFQN__Group__08458 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleFQN_in_rule__ImportedFQN__Group__0__Impl8485 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ImportedFQN__Group__1__Impl_in_rule__ImportedFQN__Group__18514 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_40_in_rule__ImportedFQN__Group__1__Impl8543 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group__0__Impl_in_rule__FQN__Group__08580 = new BitSet(new long[]{0x0000020000000000L});
+ public static final BitSet FOLLOW_rule__FQN__Group__1_in_rule__FQN__Group__08583 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__FQN__Group__0__Impl8610 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group__1__Impl_in_rule__FQN__Group__18639 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group_1__0_in_rule__FQN__Group__1__Impl8666 = new BitSet(new long[]{0x0000020000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group_1__0__Impl_in_rule__FQN__Group_1__08701 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_rule__FQN__Group_1__1_in_rule__FQN__Group_1__08704 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_41_in_rule__FQN__Group_1__0__Impl8732 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__FQN__Group_1__1__Impl_in_rule__FQN__Group_1__18763 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__FQN__Group_1__1__Impl8790 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__LiteralArray__Group__0__Impl_in_rule__LiteralArray__Group__08823 = new BitSet(new long[]{0x0000040000000000L});
+ public static final BitSet FOLLOW_rule__LiteralArray__Group__1_in_rule__LiteralArray__Group__08826 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__LiteralArray__LiteralsAssignment_0_in_rule__LiteralArray__Group__0__Impl8853 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__LiteralArray__Group__1__Impl_in_rule__LiteralArray__Group__18883 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__LiteralArray__Group_1__0_in_rule__LiteralArray__Group__1__Impl8910 = new BitSet(new long[]{0x0000040000000002L});
+ public static final BitSet FOLLOW_rule__LiteralArray__Group_1__0__Impl_in_rule__LiteralArray__Group_1__08945 = new BitSet(new long[]{0x0000120000038150L});
+ public static final BitSet FOLLOW_rule__LiteralArray__Group_1__1_in_rule__LiteralArray__Group_1__08948 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_42_in_rule__LiteralArray__Group_1__0__Impl8976 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__LiteralArray__Group_1__1__Impl_in_rule__LiteralArray__Group_1__19007 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__LiteralArray__LiteralsAssignment_1_1_in_rule__LiteralArray__Group_1__1__Impl9034 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Group__0__Impl_in_rule__BooleanLiteral__Group__09068 = new BitSet(new long[]{0x0000100000008000L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Group__1_in_rule__BooleanLiteral__Group__09071 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Group__1__Impl_in_rule__BooleanLiteral__Group__19129 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__BooleanLiteral__Alternatives_1_in_rule__BooleanLiteral__Group__1__Impl9156 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RealLiteral__Group__0__Impl_in_rule__RealLiteral__Group__09190 = new BitSet(new long[]{0x0000020000030050L});
+ public static final BitSet FOLLOW_rule__RealLiteral__Group__1_in_rule__RealLiteral__Group__09193 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RealLiteral__Group__1__Impl_in_rule__RealLiteral__Group__19251 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__RealLiteral__ValueAssignment_1_in_rule__RealLiteral__Group__1__Impl9278 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__IntLiteral__Group__0__Impl_in_rule__IntLiteral__Group__09312 = new BitSet(new long[]{0x0000000000030050L});
+ public static final BitSet FOLLOW_rule__IntLiteral__Group__1_in_rule__IntLiteral__Group__09315 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__IntLiteral__Group__1__Impl_in_rule__IntLiteral__Group__19373 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__IntLiteral__ValueAssignment_1_in_rule__IntLiteral__Group__1__Impl9400 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__StringLiteral__Group__0__Impl_in_rule__StringLiteral__Group__09434 = new BitSet(new long[]{0x0000120000038150L});
+ public static final BitSet FOLLOW_rule__StringLiteral__Group__1_in_rule__StringLiteral__Group__09437 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__StringLiteral__Group__1__Impl_in_rule__StringLiteral__Group__19495 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__StringLiteral__ValueAssignment_1_in_rule__StringLiteral__Group__1__Impl9522 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Group__0__Impl_in_rule__SignedInteger__Group__09556 = new BitSet(new long[]{0x0000000000030040L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Group__1_in_rule__SignedInteger__Group__09559 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Alternatives_0_in_rule__SignedInteger__Group__0__Impl9586 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__SignedInteger__Group__1__Impl_in_rule__SignedInteger__Group__19617 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__SignedInteger__Group__1__Impl9644 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__0__Impl_in_rule__Decimal__Group__09677 = new BitSet(new long[]{0x0000000000030040L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__1_in_rule__Decimal__Group__09680 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Alternatives_0_in_rule__Decimal__Group__0__Impl9707 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__1__Impl_in_rule__Decimal__Group__19738 = new BitSet(new long[]{0x0000020000000000L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__2_in_rule__Decimal__Group__19741 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__Decimal__Group__1__Impl9768 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__2__Impl_in_rule__Decimal__Group__29797 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__3_in_rule__Decimal__Group__29800 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_41_in_rule__Decimal__Group__2__Impl9828 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__Decimal__Group__3__Impl_in_rule__Decimal__Group__39859 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__Decimal__Group__3__Impl9886 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__0__Impl_in_rule__DotDecimal__Group__09923 = new BitSet(new long[]{0x0000020000030000L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__1_in_rule__DotDecimal__Group__09926 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Alternatives_0_in_rule__DotDecimal__Group__0__Impl9953 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__1__Impl_in_rule__DotDecimal__Group__19984 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__2_in_rule__DotDecimal__Group__19987 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_41_in_rule__DotDecimal__Group__1__Impl10015 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DotDecimal__Group__2__Impl_in_rule__DotDecimal__Group__210046 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__DotDecimal__Group__2__Impl10073 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__0__Impl_in_rule__DecimalDot__Group__010108 = new BitSet(new long[]{0x0000000000030040L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__1_in_rule__DecimalDot__Group__010111 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Alternatives_0_in_rule__DecimalDot__Group__0__Impl10138 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__1__Impl_in_rule__DecimalDot__Group__110169 = new BitSet(new long[]{0x0000020000000000L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__2_in_rule__DecimalDot__Group__110172 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalDot__Group__1__Impl10199 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalDot__Group__2__Impl_in_rule__DecimalDot__Group__210228 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_41_in_rule__DecimalDot__Group__2__Impl10256 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__0__Impl_in_rule__DecimalExp__Group__010293 = new BitSet(new long[]{0x0000020000030050L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__1_in_rule__DecimalExp__Group__010296 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Alternatives_0_in_rule__DecimalExp__Group__0__Impl10323 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__1__Impl_in_rule__DecimalExp__Group__110354 = new BitSet(new long[]{0x0000020000000000L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__2_in_rule__DecimalExp__Group__110357 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalExp__Group__1__Impl10384 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__2__Impl_in_rule__DecimalExp__Group__210413 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__3_in_rule__DecimalExp__Group__210416 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_41_in_rule__DecimalExp__Group__2__Impl10444 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__3__Impl_in_rule__DecimalExp__Group__310475 = new BitSet(new long[]{0x0000000000000080L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__4_in_rule__DecimalExp__Group__310478 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__DecimalExp__Group__3__Impl10505 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DecimalExp__Group__4__Impl_in_rule__DecimalExp__Group__410534 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_EXP_in_rule__DecimalExp__Group__4__Impl10561 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__UnorderedGroup_2__0_in_rule__DynamicConfig__UnorderedGroup_210601 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Alternatives_2_0_in_rule__DynamicConfig__UnorderedGroup_2__Impl10690 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__Group_2_1__0_in_rule__DynamicConfig__UnorderedGroup_2__Impl10781 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__UnorderedGroup_2__Impl_in_rule__DynamicConfig__UnorderedGroup_2__010840 = new BitSet(new long[]{0x0000000002C00002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__UnorderedGroup_2__1_in_rule__DynamicConfig__UnorderedGroup_2__010843 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__DynamicConfig__UnorderedGroup_2__Impl_in_rule__DynamicConfig__UnorderedGroup_2__110868 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5__0_in_rule__ActorInstanceConfig__UnorderedGroup_510896 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__AttributesAssignment_5_0_in_rule__ActorInstanceConfig__UnorderedGroup_5__Impl10984 = new BitSet(new long[]{0x0000000400000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__AttributesAssignment_5_0_in_rule__ActorInstanceConfig__UnorderedGroup_5__Impl11028 = new BitSet(new long[]{0x0000000400000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__PortsAssignment_5_1_in_rule__ActorInstanceConfig__UnorderedGroup_5__Impl11127 = new BitSet(new long[]{0x0000000600000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__PortsAssignment_5_1_in_rule__ActorInstanceConfig__UnorderedGroup_5__Impl11171 = new BitSet(new long[]{0x0000000600000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5__Impl_in_rule__ActorInstanceConfig__UnorderedGroup_5__011237 = new BitSet(new long[]{0x0000000600000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5__1_in_rule__ActorInstanceConfig__UnorderedGroup_5__011240 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__UnorderedGroup_5__Impl_in_rule__ActorInstanceConfig__UnorderedGroup_5__111265 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__0_in_rule__ProtocolClassConfig__UnorderedGroup_311293 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_0__0_in_rule__ProtocolClassConfig__UnorderedGroup_3__Impl11380 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__Group_3_1__0_in_rule__ProtocolClassConfig__UnorderedGroup_3__Impl11471 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__Impl_in_rule__ProtocolClassConfig__UnorderedGroup_3__011530 = new BitSet(new long[]{0x00000000C0000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__1_in_rule__ProtocolClassConfig__UnorderedGroup_3__011533 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ProtocolClassConfig__UnorderedGroup_3__Impl_in_rule__ProtocolClassConfig__UnorderedGroup_3__111558 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleImport_in_rule__ConfigModel__ImportsAssignment_011590 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleConfigElement_in_rule__ConfigModel__ConfigElementsAssignment_111621 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__SubSystemConfig__SubSystemAssignment_111656 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDynamicConfig_in_rule__SubSystemConfig__DynConfigAssignment_311691 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_rule__DynamicConfig__FilePathAssignment_2_0_0_111722 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_rule__DynamicConfig__UserCode1Assignment_2_0_1_0_111753 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_rule__DynamicConfig__UserCode2Assignment_2_0_1_1_111784 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_INT_in_rule__DynamicConfig__PollingAssignment_2_1_111815 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleFQN_in_rule__ActorClassConfig__ActorAssignment_111850 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrClassConfig_in_rule__ActorClassConfig__AttributesAssignment_311885 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleFQN_in_rule__ActorInstanceConfig__RootAssignment_111920 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRefPath_in_rule__ActorInstanceConfig__PathAssignment_311955 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_rule__ActorInstanceConfig__AttributesAssignment_5_011986 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rulePortInstanceConfig_in_rule__ActorInstanceConfig__PortsAssignment_5_112017 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleFQN_in_rule__ProtocolClassConfig__ProtocolAssignment_112052 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rulePortClassConfig_in_rule__ProtocolClassConfig__RegularAssignment_3_0_112087 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rulePortClassConfig_in_rule__ProtocolClassConfig__ConjugatedAssignment_3_1_112118 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrClassConfig_in_rule__PortClassConfig__AttributesAssignment_312149 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__PortInstanceConfig__ItemAssignment_112184 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_rule__PortInstanceConfig__AttributesAssignment_312219 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__AttrClassConfig__AttributeAssignment_112254 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteralArray_in_rule__AttrClassConfig__ValueAssignment_2_112289 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_rule__AttrClassConfig__MinAssignment_3_1_0_212320 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_rule__AttrClassConfig__MaxAssignment_3_1_1_212351 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrClassConfig_in_rule__AttrClassConfig__AttributesAssignment_3_1_212382 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__AttrInstanceConfig__AttributeAssignment_112417 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteralArray_in_rule__AttrInstanceConfig__ValueAssignment_2_112452 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_21_in_rule__AttrInstanceConfig__DynConfigAssignment_3_1_0_012488 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_43_in_rule__AttrInstanceConfig__ReadOnlyAssignment_3_1_0_1_012532 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_rule__AttrInstanceConfig__AttributesAssignment_3_1_112571 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__RefPath__RefsAssignment_012602 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_rule__RefPath__RefsAssignment_1_112633 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleImportedFQN_in_rule__Import__ImportedNamespaceAssignment_1_0_012664 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment_212695 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteral_in_rule__LiteralArray__LiteralsAssignment_012726 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteral_in_rule__LiteralArray__LiteralsAssignment_1_112757 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_44_in_rule__BooleanLiteral__IsTrueAssignment_1_112793 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleReal_in_rule__RealLiteral__ValueAssignment_112832 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleInteger_in_rule__IntLiteral__ValueAssignment_112863 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_rule__StringLiteral__ValueAssignment_112894 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__AttributesAssignment_5_0_in_synpred1_InternalConfig11025 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rule__ActorInstanceConfig__PortsAssignment_5_1_in_synpred2_InternalConfig11168 = new BitSet(new long[]{0x0000000000000002L});
}
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/internal/ConfigActivator.java b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/internal/ConfigActivator.java
index be11391da..f266afb93 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/internal/ConfigActivator.java
+++ b/plugins/org.eclipse.etrice.core.config.ui/src-gen/org/eclipse/etrice/core/ui/internal/ConfigActivator.java
@@ -1,95 +1,95 @@
-/*
- * generated by Xtext
- */
-package org.eclipse.etrice.core.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 ConfigActivator extends AbstractUIPlugin {
-
- public static final String ORG_ECLIPSE_ETRICE_CORE_CONFIG = "org.eclipse.etrice.core.Config";
-
- private static final Logger logger = Logger.getLogger(ConfigActivator.class);
-
- private static ConfigActivator 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 ConfigActivator 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_CONFIG.equals(grammar)) {
- return new org.eclipse.etrice.core.ConfigRuntimeModule();
- }
-
- throw new IllegalArgumentException(grammar);
- }
-
- protected Module getUiModule(String grammar) {
- if (ORG_ECLIPSE_ETRICE_CORE_CONFIG.equals(grammar)) {
- return new org.eclipse.etrice.core.ui.ConfigUiModule(this);
- }
-
- throw new IllegalArgumentException(grammar);
- }
-
- protected Module getSharedStateModule() {
- return new SharedStateModule();
- }
-
-}
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core.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 ConfigActivator extends AbstractUIPlugin {
+
+ public static final String ORG_ECLIPSE_ETRICE_CORE_CONFIG = "org.eclipse.etrice.core.Config";
+
+ private static final Logger logger = Logger.getLogger(ConfigActivator.class);
+
+ private static ConfigActivator 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 ConfigActivator 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_CONFIG.equals(grammar)) {
+ return new org.eclipse.etrice.core.ConfigRuntimeModule();
+ }
+
+ throw new IllegalArgumentException(grammar);
+ }
+
+ protected Module getUiModule(String grammar) {
+ if (ORG_ECLIPSE_ETRICE_CORE_CONFIG.equals(grammar)) {
+ return new org.eclipse.etrice.core.ui.ConfigUiModule(this);
+ }
+
+ throw new IllegalArgumentException(grammar);
+ }
+
+ protected Module getSharedStateModule() {
+ return new SharedStateModule();
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/ConfigUiModule.java b/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/ConfigUiModule.java
index 8e8c33a62..c175b435b 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/ConfigUiModule.java
+++ b/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/ConfigUiModule.java
@@ -11,8 +11,8 @@
*******************************************************************************/
package org.eclipse.etrice.core.ui;
+import org.eclipse.etrice.core.ui.linking.ConfigHyperlinkHelper;
import org.eclipse.etrice.core.ui.linking.GlobalNonPlatformURIEditorOpener;
-import org.eclipse.etrice.core.ui.linking.ImportAwareHyperlinkHelper;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.eclipse.xtext.ui.editor.hyperlinking.IHyperlinkHelper;
@@ -33,6 +33,6 @@ public class ConfigUiModule extends
// HOWTO: use URI imports - need special class for creating hyper links for
// imports
public Class<? extends IHyperlinkHelper> bindIHyperlinkHelper() {
- return ImportAwareHyperlinkHelper.class;
+ return ConfigHyperlinkHelper.class;
}
}
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/contentassist/ConfigProposalProvider.java b/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/contentassist/ConfigProposalProvider.java
index f8120ca02..d2183bea2 100644
--- a/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/contentassist/ConfigProposalProvider.java
+++ b/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/contentassist/ConfigProposalProvider.java
@@ -23,16 +23,20 @@ import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Path;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.config.ActorClassConfig;
import org.eclipse.etrice.core.config.ActorInstanceConfig;
import org.eclipse.etrice.core.config.AttrConfig;
+import org.eclipse.etrice.core.config.AttrInstanceConfig;
+import org.eclipse.etrice.core.config.LiteralArray;
import org.eclipse.etrice.core.config.RefPath;
import org.eclipse.etrice.core.config.util.ConfigUtil;
import org.eclipse.etrice.core.room.ActorContainerClass;
import org.eclipse.etrice.core.room.ActorContainerRef;
import org.eclipse.etrice.core.room.ActorRef;
import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DataType;
import org.eclipse.etrice.core.room.LiteralType;
+import org.eclipse.etrice.core.room.PrimitiveType;
import org.eclipse.etrice.core.room.util.RoomHelpers;
import org.eclipse.etrice.core.ui.contentassist.AbstractConfigProposalProvider;
import org.eclipse.jface.viewers.StyledString;
@@ -126,13 +130,18 @@ public class ConfigProposalProvider extends AbstractConfigProposalProvider {
List<ActorRef> refs = new ArrayList<ActorRef>();
ActorContainerClass root = config.getRoot();
- RefPath path = config.getPath();
- if (path != null)
- root = ConfigUtil.resolve(root, path);
if (root != null) {
- for (ActorContainerRef ref : RoomHelpers.getRefs(root, true)) {
- if (ref instanceof ActorRef)
- refs.add((ActorRef) ref);
+ RefPath path = config.getPath();
+ if (path != null && !path.getRefs().isEmpty())
+ root = ConfigUtil.resolve(root, path);
+ if (root != null) {
+ for (ActorContainerRef ref : RoomHelpers.getRefs(root, true)) {
+ if (ref instanceof ActorRef) {
+ ActorRef aRef = (ActorRef) ref;
+ if (aRef.getSize() == 1)
+ refs.add((ActorRef) ref);
+ }
+ }
}
}
@@ -142,9 +151,9 @@ public class ConfigProposalProvider extends AbstractConfigProposalProvider {
@Override
public void complete_STRING(EObject model, RuleCall ruleCall,
ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
- if (model instanceof AttrConfig) {
- LiteralType type = ConfigUtil.getLiteralType(((AttrConfig) model)
- .getAttribute());
+ Attribute attr = getAttribute(model);
+ if (attr != null) {
+ LiteralType type = ConfigUtil.getLiteralType(attr);
if (type != LiteralType.CHAR)
return;
}
@@ -156,8 +165,8 @@ public class ConfigProposalProvider extends AbstractConfigProposalProvider {
public void complete_BooleanLiteral(EObject model, RuleCall ruleCall,
ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
String mult = "";
- if (model instanceof AttrConfig) {
- Attribute attr = ((AttrConfig) model).getAttribute();
+ Attribute attr = getAttribute(model);
+ if (attr != null) {
mult = (attr.getSize() > 0) ? "[" + attr.getSize() + "]" : "";
LiteralType type = ConfigUtil.getLiteralType(attr);
if (type != LiteralType.BOOL)
@@ -166,15 +175,18 @@ public class ConfigProposalProvider extends AbstractConfigProposalProvider {
acceptor.accept(createCompletionProposal("", "Boolean" + mult, null,
context));
+ acceptor.accept(createCompletionProposal("true", "true", null, context));
+ acceptor.accept(createCompletionProposal("false", "false", null,
+ context));
}
@Override
public void complete_IntLiteral(EObject model, RuleCall ruleCall,
ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
String mult = "";
- if (model instanceof AttrConfig) {
- Attribute attr = ((AttrConfig) model).getAttribute();
- mult = (attr.getSize() > 0) ? "[" + (attr.getSize() + 1) + "]" : "";
+ Attribute attr = getAttribute(model);
+ if (attr != null) {
+ mult = (attr.getSize() > 0) ? "[" + attr.getSize() + "]" : "";
LiteralType type = ConfigUtil.getLiteralType(attr);
if (type != LiteralType.INT && type != LiteralType.REAL)
return;
@@ -190,9 +202,9 @@ public class ConfigProposalProvider extends AbstractConfigProposalProvider {
public void complete_RealLiteral(EObject model, RuleCall ruleCall,
ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
String mult = "";
- if (model instanceof AttrConfig) {
- Attribute attr = ((AttrConfig) model).getAttribute();
- mult = (attr.getSize() > 0) ? "[" + (attr.getSize() + 1) + "]" : "";
+ Attribute attr = getAttribute(model);
+ if (attr != null) {
+ mult = (attr.getSize() > 0) ? "[" + attr.getSize() + "]" : "";
LiteralType type = ConfigUtil.getLiteralType(attr);
if (type != LiteralType.REAL)
return;
@@ -202,46 +214,85 @@ public class ConfigProposalProvider extends AbstractConfigProposalProvider {
context));
}
- private static final String[] noneClassAttributes = new String[] {};
- private static final String[] noneInstanceAttributes = new String[] {
- "min", "max" };
-
@Override
public void completeKeyword(Keyword keyword,
ContentAssistContext contentAssistContext,
ICompletionProposalAcceptor acceptor) {
- if (contentAssistContext.getCurrentModel() instanceof AttrConfig) {
- AttrConfig config = (AttrConfig) contentAssistContext
- .getCurrentModel();
- if (hideAttributeKeyword(config, keyword))
+ EObject model = contentAssistContext.getCurrentModel();
+ if (model instanceof AttrConfig)
+ if (hideKeyword((AttrConfig) model, keyword))
return;
- if (hideBooleanLiteralKeyword(config, keyword))
+ if (model instanceof LiteralArray)
+ if (hideKeyword((LiteralArray) model, keyword))
+ return;
+ if (keyword.getValue().equals("true")
+ || keyword.getValue().equals("false")) {
+ return;
+ }
+ if (model instanceof AttrInstanceConfig) {
+ if (hideKeyword((AttrInstanceConfig) model, keyword))
return;
}
super.completeKeyword(keyword, contentAssistContext, acceptor);
}
- private boolean hideBooleanLiteralKeyword(AttrConfig config, Keyword keyword) {
+ private boolean hideKeyword(AttrConfig config, Keyword keyword) {
LiteralType type = ConfigUtil.getLiteralType(config.getAttribute());
- if (type != LiteralType.BOOL)
- return true;
+ DataType dataType = config.getAttribute().getRefType().getType();
+ if (keyword.getValue().equals("min")
+ || keyword.getValue().equals("max")) {
+ if (type != LiteralType.INT && type != LiteralType.REAL)
+ return true;
+ }
+ if (keyword.getValue().equals("Attr")) {
+ if (!(dataType instanceof PrimitiveType || dataType instanceof DataClass))
+ return true;
+ }
+ if (keyword.getValue().equals("=")) {
+ if (!config.getAttribute().eIsProxy())
+ if (!(dataType instanceof PrimitiveType))
+ return true;
+ }
return false;
}
- private boolean hideAttributeKeyword(AttrConfig config, Keyword keyword) {
- String[] hideKeywords = new String[0];
- if (config.eContainer() instanceof ActorClassConfig)
- hideKeywords = noneClassAttributes;
- else if (config.eContainer() instanceof ActorInstanceConfig)
- hideKeywords = noneInstanceAttributes;
-
- for (String s : hideKeywords)
- if (s.equalsIgnoreCase(keyword.getValue()))
+ private boolean hideKeyword(AttrInstanceConfig config, Keyword keyword) {
+ if (keyword.getValue().equals("dynamic configuration")) {
+ if (!(config.eContainer() instanceof ActorInstanceConfig))
return true;
+ }
return false;
}
+
+ private boolean hideKeyword(LiteralArray array, Keyword keyword) {
+ if (keyword.getValue().equals(",")) {
+ if (array.eContainer() instanceof AttrConfig) {
+ Attribute attr = ((AttrConfig) array.eContainer())
+ .getAttribute();
+ if (attr.getSize() <= array.getLiterals().size())
+ return true;
+ if (((PrimitiveType) attr.getRefType().getType()).getType() == LiteralType.CHAR)
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ private Attribute getAttribute(EObject o) {
+ if (o == null)
+ return null;
+ if (o instanceof Attribute)
+ return (Attribute) o;
+ if (o instanceof AttrConfig)
+ return ((AttrConfig) o).getAttribute();
+ else
+ return getAttribute(o.eContainer());
+
+ }
+
}
diff --git a/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/linking/ConfigHyperlinkHelper.java b/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/linking/ConfigHyperlinkHelper.java
new file mode 100644
index 000000000..f8ac2b2d3
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.config.ui/src/org/eclipse/etrice/core/ui/linking/ConfigHyperlinkHelper.java
@@ -0,0 +1,60 @@
+package org.eclipse.etrice.core.ui.linking;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.core.config.ActorInstanceConfig;
+import org.eclipse.etrice.core.room.ActorContainerClass;
+import org.eclipse.etrice.core.room.ActorRef;
+import org.eclipse.etrice.core.room.SubSystemClass;
+import org.eclipse.xtext.AbstractRule;
+import org.eclipse.xtext.RuleCall;
+import org.eclipse.xtext.nodemodel.ILeafNode;
+import org.eclipse.xtext.nodemodel.util.NodeModelUtils;
+import org.eclipse.xtext.parser.IParseResult;
+import org.eclipse.xtext.resource.XtextResource;
+import org.eclipse.xtext.ui.editor.hyperlinking.IHyperlinkAcceptor;
+
+public class ConfigHyperlinkHelper extends ImportAwareHyperlinkHelper {
+
+ @Override
+ public void createHyperlinksByOffset(XtextResource resource, int offset,
+ IHyperlinkAcceptor acceptor) {
+ IParseResult parseResult = resource.getParseResult();
+ if (parseResult != null && parseResult.getRootNode() != null) {
+ ILeafNode leaf = NodeModelUtils.findLeafNodeAtOffset(
+ parseResult.getRootNode(), offset);
+ EObject grammarElement = leaf.getParent().getGrammarElement();
+ if (grammarElement instanceof RuleCall) {
+ RuleCall rc = (RuleCall) grammarElement;
+ AbstractRule rule = rc.getRule();
+
+ EObject crossLinkedEObject = null;
+ if (rule.getName().equals("RefPath")) {
+ EObject parent = leaf.getSemanticElement().eContainer();
+ if (parent instanceof ActorInstanceConfig) {
+ crossLinkedEObject = getCrossLinkedEObject((ActorInstanceConfig) parent);
+ }
+ }
+ if (crossLinkedEObject != null)
+ createHyperlinksTo(resource, null, crossLinkedEObject,
+ acceptor);
+ }
+ }
+
+ super.createHyperlinksByOffset(resource, offset, acceptor);
+ }
+
+ private EObject getCrossLinkedEObject(ActorInstanceConfig config) {
+ ActorContainerClass lastAcContainer = config.getRoot();
+ ActorRef lastRef = null;
+ for (String ref : config.getPath().getRefs()) {
+ for (ActorRef r : lastAcContainer.getActorRefs())
+ if (r.getName().equals(ref)) {
+ lastRef = r;
+ lastAcContainer = lastRef.getType();
+ break;
+ }
+ }
+
+ return lastRef;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.config/plugin.xml_gen b/plugins/org.eclipse.etrice.core.config/plugin.xml_gen
index e1d038f34..86ac574da 100644
--- a/plugins/org.eclipse.etrice.core.config/plugin.xml_gen
+++ b/plugins/org.eclipse.etrice.core.config/plugin.xml_gen
@@ -1,17 +1,17 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
- <extension point="org.eclipse.emf.ecore.generated_package">
- <package
- uri = "http://www.eclipse.org/etrice/core/Config"
- class = "org.eclipse.etrice.core.config.ConfigPackage"
- genModel = "org/eclipse/etrice/core/Config.genmodel" />
-
- </extension>
-
-
-
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri = "http://www.eclipse.org/etrice/core/Config"
+ class = "org.eclipse.etrice.core.config.ConfigPackage"
+ genModel = "org/eclipse/etrice/core/Config.genmodel" />
+
+ </extension>
+
+
+
+
+</plugin>
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/AbstractConfigRuntimeModule.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/AbstractConfigRuntimeModule.java
index c1bdce9cb..61110b1ad 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/AbstractConfigRuntimeModule.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/AbstractConfigRuntimeModule.java
@@ -1,162 +1,162 @@
-/*
- * generated by Xtext
- */
-package org.eclipse.etrice.core;
-
-import java.util.Properties;
-
-import org.eclipse.xtext.Constants;
-import org.eclipse.xtext.service.DefaultRuntimeModule;
-
-import com.google.inject.Binder;
-import com.google.inject.name.Names;
-
-/**
- * Manual modifications go to {org.eclipse.etrice.core.ConfigRuntimeModule}
- */
- @SuppressWarnings("all")
-public abstract class AbstractConfigRuntimeModule extends DefaultRuntimeModule {
-
- protected Properties properties = null;
-
- @Override
- public void configure(Binder binder) {
- properties = tryBindProperties(binder, "org/eclipse/etrice/core/Config.properties");
- super.configure(binder);
- }
-
- public void configureLanguageName(Binder binder) {
- binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.etrice.core.Config");
- }
-
- public void configureFileExtensions(Binder binder) {
- if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
- binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("config");
- }
-
- // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
- public java.lang.ClassLoader bindClassLoaderToInstance() {
- return getClass().getClassLoader();
- }
-
- // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
- public Class<? extends org.eclipse.xtext.IGrammarAccess> bindIGrammarAccess() {
- return org.eclipse.etrice.core.services.ConfigGrammarAccess.class;
- }
-
- // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment
- public Class<? extends org.eclipse.xtext.serializer.sequencer.ISemanticSequencer> bindISemanticSequencer() {
- return org.eclipse.etrice.core.serializer.ConfigSemanticSequencer.class;
- }
-
- // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment
- public Class<? extends org.eclipse.xtext.serializer.sequencer.ISyntacticSequencer> bindISyntacticSequencer() {
- return org.eclipse.etrice.core.serializer.ConfigSyntacticSequencer.class;
- }
-
- // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment
- public Class<? extends org.eclipse.xtext.serializer.ISerializer> bindISerializer() {
- return org.eclipse.xtext.serializer.impl.Serializer.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.IParser> bindIParser() {
- return org.eclipse.etrice.core.parser.antlr.ConfigParser.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.ITokenToStringConverter> bindITokenToStringConverter() {
- return org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() {
- return org.eclipse.etrice.core.parser.antlr.ConfigAntlrTokenFileProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.antlr.Lexer> bindLexer() {
- return org.eclipse.etrice.core.parser.antlr.internal.InternalConfigLexer.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public com.google.inject.Provider<org.eclipse.etrice.core.parser.antlr.internal.InternalConfigLexer> provideInternalConfigLexer() {
- return org.eclipse.xtext.parser.antlr.LexerProvider.create(org.eclipse.etrice.core.parser.antlr.internal.InternalConfigLexer.class);
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public void configureRuntimeLexer(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.parser.antlr.LexerBindings.RUNTIME)).to(org.eclipse.etrice.core.parser.antlr.internal.InternalConfigLexer.class);
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.antlr.ITokenDefProvider> bindITokenDefProvider() {
- return org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
- public Class<? extends org.eclipse.xtext.parser.antlr.IUnorderedGroupHelper> bindIUnorderedGroupHelper() {
- return org.eclipse.xtext.parser.antlr.UnorderedGroupHelper.class;
- }
-
- // contributed by org.eclipse.xtext.generator.validation.JavaValidatorFragment
- @org.eclipse.xtext.service.SingletonBinding(eager=true) public Class<? extends org.eclipse.etrice.core.validation.ConfigJavaValidator> bindConfigJavaValidator() {
- return org.eclipse.etrice.core.validation.ConfigJavaValidator.class;
- }
-
- // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
- public Class<? extends org.eclipse.xtext.scoping.IScopeProvider> bindIScopeProvider() {
- return org.eclipse.etrice.core.scoping.ConfigScopeProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
- public void configureIScopeProviderDelegate(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.scoping.IScopeProvider.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(org.eclipse.xtext.scoping.impl.SimpleLocalScopeProvider.class);
- }
-
- // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
- public Class<? extends org.eclipse.xtext.scoping.IGlobalScopeProvider> bindIGlobalScopeProvider() {
- return org.eclipse.xtext.scoping.impl.ImportUriGlobalScopeProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
- public void configureIgnoreCaseLinking(com.google.inject.Binder binder) {
- binder.bindConstant().annotatedWith(org.eclipse.xtext.scoping.IgnoreCaseLinking.class).to(false);
- }
-
- // contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
- public Class<? extends org.eclipse.xtext.naming.IQualifiedNameProvider> bindIQualifiedNameProvider() {
- return org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public Class<? extends org.eclipse.xtext.resource.IContainer.Manager> bindIContainer$Manager() {
- return org.eclipse.xtext.resource.containers.StateBasedContainerManager.class;
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public Class<? extends org.eclipse.xtext.resource.containers.IAllContainersState.Provider> bindIAllContainersState$Provider() {
- return org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider.class;
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public void configureIResourceDescriptions(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
- }
-
- // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
- public void configureIResourceDescriptionsBuilderScope(com.google.inject.Binder binder) {
- binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
- }
-
- // contributed by org.eclipse.xtext.generator.generator.GeneratorFragment
- public Class<? extends org.eclipse.xtext.generator.IGenerator> bindIGenerator() {
- return org.eclipse.etrice.core.generator.ConfigGenerator.class;
- }
-
- // contributed by org.eclipse.xtext.generator.formatting.FormatterFragment
- public Class<? extends org.eclipse.xtext.formatting.IFormatter> bindIFormatter() {
- return org.eclipse.etrice.core.formatting.ConfigFormatter.class;
- }
-
-}
+/*
+ * generated by Xtext
+ */
+package org.eclipse.etrice.core;
+
+import java.util.Properties;
+
+import org.eclipse.xtext.Constants;
+import org.eclipse.xtext.service.DefaultRuntimeModule;
+
+import com.google.inject.Binder;
+import com.google.inject.name.Names;
+
+/**
+ * Manual modifications go to {org.eclipse.etrice.core.ConfigRuntimeModule}
+ */
+ @SuppressWarnings("all")
+public abstract class AbstractConfigRuntimeModule extends DefaultRuntimeModule {
+
+ protected Properties properties = null;
+
+ @Override
+ public void configure(Binder binder) {
+ properties = tryBindProperties(binder, "org/eclipse/etrice/core/Config.properties");
+ super.configure(binder);
+ }
+
+ public void configureLanguageName(Binder binder) {
+ binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.etrice.core.Config");
+ }
+
+ public void configureFileExtensions(Binder binder) {
+ if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
+ binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("config");
+ }
+
+ // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
+ public java.lang.ClassLoader bindClassLoaderToInstance() {
+ return getClass().getClassLoader();
+ }
+
+ // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
+ public Class<? extends org.eclipse.xtext.IGrammarAccess> bindIGrammarAccess() {
+ return org.eclipse.etrice.core.services.ConfigGrammarAccess.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment
+ public Class<? extends org.eclipse.xtext.serializer.sequencer.ISemanticSequencer> bindISemanticSequencer() {
+ return org.eclipse.etrice.core.serializer.ConfigSemanticSequencer.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment
+ public Class<? extends org.eclipse.xtext.serializer.sequencer.ISyntacticSequencer> bindISyntacticSequencer() {
+ return org.eclipse.etrice.core.serializer.ConfigSyntacticSequencer.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment
+ public Class<? extends org.eclipse.xtext.serializer.ISerializer> bindISerializer() {
+ return org.eclipse.xtext.serializer.impl.Serializer.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.IParser> bindIParser() {
+ return org.eclipse.etrice.core.parser.antlr.ConfigParser.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.ITokenToStringConverter> bindITokenToStringConverter() {
+ return org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() {
+ return org.eclipse.etrice.core.parser.antlr.ConfigAntlrTokenFileProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.antlr.Lexer> bindLexer() {
+ return org.eclipse.etrice.core.parser.antlr.internal.InternalConfigLexer.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public com.google.inject.Provider<org.eclipse.etrice.core.parser.antlr.internal.InternalConfigLexer> provideInternalConfigLexer() {
+ return org.eclipse.xtext.parser.antlr.LexerProvider.create(org.eclipse.etrice.core.parser.antlr.internal.InternalConfigLexer.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public void configureRuntimeLexer(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.parser.antlr.LexerBindings.RUNTIME)).to(org.eclipse.etrice.core.parser.antlr.internal.InternalConfigLexer.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.antlr.ITokenDefProvider> bindITokenDefProvider() {
+ return org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
+ public Class<? extends org.eclipse.xtext.parser.antlr.IUnorderedGroupHelper> bindIUnorderedGroupHelper() {
+ return org.eclipse.xtext.parser.antlr.UnorderedGroupHelper.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.validation.JavaValidatorFragment
+ @org.eclipse.xtext.service.SingletonBinding(eager=true) public Class<? extends org.eclipse.etrice.core.validation.ConfigJavaValidator> bindConfigJavaValidator() {
+ return org.eclipse.etrice.core.validation.ConfigJavaValidator.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
+ public Class<? extends org.eclipse.xtext.scoping.IScopeProvider> bindIScopeProvider() {
+ return org.eclipse.etrice.core.scoping.ConfigScopeProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
+ public void configureIScopeProviderDelegate(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.scoping.IScopeProvider.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(org.eclipse.xtext.scoping.impl.SimpleLocalScopeProvider.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
+ public Class<? extends org.eclipse.xtext.scoping.IGlobalScopeProvider> bindIGlobalScopeProvider() {
+ return org.eclipse.xtext.scoping.impl.ImportUriGlobalScopeProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
+ public void configureIgnoreCaseLinking(com.google.inject.Binder binder) {
+ binder.bindConstant().annotatedWith(org.eclipse.xtext.scoping.IgnoreCaseLinking.class).to(false);
+ }
+
+ // contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
+ public Class<? extends org.eclipse.xtext.naming.IQualifiedNameProvider> bindIQualifiedNameProvider() {
+ return org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public Class<? extends org.eclipse.xtext.resource.IContainer.Manager> bindIContainer$Manager() {
+ return org.eclipse.xtext.resource.containers.StateBasedContainerManager.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public Class<? extends org.eclipse.xtext.resource.containers.IAllContainersState.Provider> bindIAllContainersState$Provider() {
+ return org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public void configureIResourceDescriptions(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
+ public void configureIResourceDescriptionsBuilderScope(com.google.inject.Binder binder) {
+ binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
+ }
+
+ // contributed by org.eclipse.xtext.generator.generator.GeneratorFragment
+ public Class<? extends org.eclipse.xtext.generator.IGenerator> bindIGenerator() {
+ return org.eclipse.etrice.core.generator.ConfigGenerator.class;
+ }
+
+ // contributed by org.eclipse.xtext.generator.formatting.FormatterFragment
+ public Class<? extends org.eclipse.xtext.formatting.IFormatter> bindIFormatter() {
+ return org.eclipse.etrice.core.formatting.ConfigFormatter.class;
+ }
+
+}
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.ecore b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.ecore
index 9d60629e8..5c015048a 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.ecore
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.ecore
@@ -17,12 +17,28 @@
<details key="body" value="EList&lt;ProtocolClassConfig> list = new org.eclipse.emf.common.util.BasicEList&lt;ProtocolClassConfig>();&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;for(ConfigElement element : this.getConfigElements())&#xD;&#xA;&#x9;&#x9;&#x9; &#x9;&#x9;if(element instanceof ProtocolClassConfig)&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;list.add((ProtocolClassConfig) element);&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;return list;"/>
</eAnnotations>
</eOperations>
+ <eOperations name="getSubSystemConfigs" upperBound="-1" eType="#//SubSystemConfig">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="body" value="EList&lt;SubSystemConfig> list = new org.eclipse.emf.common.util.BasicEList&lt;SubSystemConfig>();&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;for(ConfigElement element : this.getConfigElements())&#xD;&#xA;&#x9;&#x9;&#x9; &#x9;&#x9;if(element instanceof SubSystemConfig)&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;list.add((SubSystemConfig) element);&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;return list;"/>
+ </eAnnotations>
+ </eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1"
eType="#//Import" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="configElements" upperBound="-1"
eType="#//ConfigElement" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConfigElement"/>
+ <eClassifiers xsi:type="ecore:EClass" name="SubSystemConfig" eSuperTypes="#//ConfigElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="subSystem" eType="ecore:EClass ../../../../../../org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/Room.ecore#//SubSystemClass"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="dynConfig" eType="#//DynamicConfig"
+ containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DynamicConfig">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="filePath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="userCode1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="userCode2" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="polling" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ActorClassConfig" eSuperTypes="#//ConfigElement">
<eStructuralFeatures xsi:type="ecore:EReference" name="actor" eType="ecore:EClass ../../../../../../org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/Room.ecore#//ActorClass"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1"
@@ -63,8 +79,15 @@
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="max" eType="#//NumberLiteral"
containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1"
+ eType="#//AttrClassConfig" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="AttrInstanceConfig" eSuperTypes="#//AttrConfig">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dynConfig" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="readOnly" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1"
+ eType="#//AttrInstanceConfig" containment="true"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="AttrInstanceConfig" eSuperTypes="#//AttrConfig"/>
<eClassifiers xsi:type="ecore:EClass" name="RefPath">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="refs" unique="false" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -86,7 +109,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IntLiteral" eSuperTypes="#//NumberLiteral">
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StringLiteral" eSuperTypes="#//Literal">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.genmodel b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.genmodel
index d65a29062..d51932dd5 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.genmodel
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.genmodel
@@ -13,8 +13,19 @@
<genOperations ecoreOperation="Config.ecore#//ConfigModel/getActorClassConfigs"/>
<genOperations ecoreOperation="Config.ecore#//ConfigModel/getActorInstanceConfigs"/>
<genOperations ecoreOperation="Config.ecore#//ConfigModel/getProtocolClassConfigs"/>
+ <genOperations ecoreOperation="Config.ecore#//ConfigModel/getSubSystemConfigs"/>
</genClasses>
<genClasses ecoreClass="Config.ecore#//ConfigElement"/>
+ <genClasses ecoreClass="Config.ecore#//SubSystemConfig">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Config.ecore#//SubSystemConfig/subSystem"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Config.ecore#//SubSystemConfig/dynConfig"/>
+ </genClasses>
+ <genClasses ecoreClass="Config.ecore#//DynamicConfig">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Config.ecore#//DynamicConfig/filePath"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Config.ecore#//DynamicConfig/userCode1"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Config.ecore#//DynamicConfig/userCode2"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Config.ecore#//DynamicConfig/polling"/>
+ </genClasses>
<genClasses ecoreClass="Config.ecore#//ActorClassConfig">
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Config.ecore#//ActorClassConfig/actor"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Config.ecore#//ActorClassConfig/attributes"/>
@@ -44,8 +55,13 @@
<genClasses ecoreClass="Config.ecore#//AttrClassConfig">
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Config.ecore#//AttrClassConfig/min"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Config.ecore#//AttrClassConfig/max"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Config.ecore#//AttrClassConfig/attributes"/>
+ </genClasses>
+ <genClasses ecoreClass="Config.ecore#//AttrInstanceConfig">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Config.ecore#//AttrInstanceConfig/dynConfig"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Config.ecore#//AttrInstanceConfig/readOnly"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Config.ecore#//AttrInstanceConfig/attributes"/>
</genClasses>
- <genClasses ecoreClass="Config.ecore#//AttrInstanceConfig"/>
<genClasses ecoreClass="Config.ecore#//RefPath">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute Config.ecore#//RefPath/refs"/>
</genClasses>
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.xmi b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.xmi
index d0e14b869..1f8b3e820 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.xmi
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/Config.xmi
@@ -16,7 +16,7 @@
</type>
<alternatives xsi:type="xtext:Group">
<elements xsi:type="xtext:Assignment" cardinality="*" feature="imports" operator="+=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.11"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.13"/>
</elements>
<elements xsi:type="xtext:Assignment" cardinality="*" feature="configElements" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="/0/@rules.1"/>
@@ -29,8 +29,70 @@
</type>
<alternatives xsi:type="xtext:Alternatives">
<elements xsi:type="xtext:RuleCall" rule="/0/@rules.2"/>
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.3"/>
<elements xsi:type="xtext:RuleCall" rule="/0/@rules.4"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.5"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
+ </alternatives>
+ </rules>
+ <rules xsi:type="xtext:ParserRule" name="SubSystemConfig">
+ <type metamodel="/0/@metamodelDeclarations.0">
+ <classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/etrice/core/Config#//SubSystemConfig"/>
+ </type>
+ <alternatives xsi:type="xtext:Group">
+ <elements xsi:type="xtext:Keyword" value="SubSystemConfig"/>
+ <elements xsi:type="xtext:Assignment" feature="subSystem" operator="=">
+ <terminal xsi:type="xtext:CrossReference">
+ <type metamodel="/0/@metamodelDeclarations.2">
+ <classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/etrice/Room#//SubSystemClass"/>
+ </type>
+ <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
+ </terminal>
+ </elements>
+ <elements xsi:type="xtext:Keyword" value="{"/>
+ <elements xsi:type="xtext:Assignment" feature="dynConfig" operator="=">
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.3"/>
+ </elements>
+ <elements xsi:type="xtext:Keyword" value="}"/>
+ </alternatives>
+ </rules>
+ <rules xsi:type="xtext:ParserRule" name="DynamicConfig">
+ <type metamodel="/0/@metamodelDeclarations.0">
+ <classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/etrice/core/Config#//DynamicConfig"/>
+ </type>
+ <alternatives xsi:type="xtext:Group">
+ <elements xsi:type="xtext:Keyword" value="dynamic configuration"/>
+ <elements xsi:type="xtext:Keyword" value="{"/>
+ <elements xsi:type="xtext:UnorderedGroup">
+ <elements xsi:type="xtext:Alternatives">
+ <elements xsi:type="xtext:Group">
+ <elements xsi:type="xtext:Keyword" value="file path"/>
+ <elements xsi:type="xtext:Assignment" feature="filePath" operator="=">
+ <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.2"/>
+ </elements>
+ </elements>
+ <elements xsi:type="xtext:Group">
+ <elements xsi:type="xtext:Group">
+ <elements xsi:type="xtext:Keyword" value="user import"/>
+ <elements xsi:type="xtext:Assignment" feature="userCode1" operator="=">
+ <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.2"/>
+ </elements>
+ </elements>
+ <elements xsi:type="xtext:Group">
+ <elements xsi:type="xtext:Keyword" value="user constructor"/>
+ <elements xsi:type="xtext:Assignment" feature="userCode2" operator="=">
+ <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.2"/>
+ </elements>
+ </elements>
+ </elements>
+ </elements>
+ <elements xsi:type="xtext:Group" cardinality="?">
+ <elements xsi:type="xtext:Keyword" value="polling timer [ms]"/>
+ <elements xsi:type="xtext:Assignment" feature="polling" operator="=">
+ <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.1"/>
+ </elements>
+ </elements>
+ </elements>
+ <elements xsi:type="xtext:Keyword" value="}"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="ActorClassConfig">
@@ -44,12 +106,12 @@
<type metamodel="/0/@metamodelDeclarations.2">
<classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/etrice/Room#//ActorClass"/>
</type>
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.13"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.15"/>
</terminal>
</elements>
<elements xsi:type="xtext:Keyword" value="{"/>
<elements xsi:type="xtext:Assignment" cardinality="*" feature="attributes" operator="+=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.8"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.10"/>
</elements>
<elements xsi:type="xtext:Keyword" value="}"/>
</alternatives>
@@ -65,19 +127,21 @@
<type metamodel="/0/@metamodelDeclarations.2">
<classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/etrice/Room#//SubSystemClass"/>
</type>
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.13"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.15"/>
</terminal>
</elements>
<elements xsi:type="xtext:Keyword" value="/"/>
<elements xsi:type="xtext:Assignment" feature="path" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.10"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.12"/>
</elements>
<elements xsi:type="xtext:Keyword" value="{"/>
- <elements xsi:type="xtext:Assignment" cardinality="*" feature="attributes" operator="+=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.9"/>
- </elements>
- <elements xsi:type="xtext:Assignment" cardinality="*" feature="ports" operator="+=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
+ <elements xsi:type="xtext:UnorderedGroup">
+ <elements xsi:type="xtext:Assignment" cardinality="*" feature="attributes" operator="+=">
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.11"/>
+ </elements>
+ <elements xsi:type="xtext:Assignment" cardinality="*" feature="ports" operator="+=">
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.8"/>
+ </elements>
</elements>
<elements xsi:type="xtext:Keyword" value="}"/>
</alternatives>
@@ -93,7 +157,7 @@
<type metamodel="/0/@metamodelDeclarations.2">
<classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/etrice/Room#//ProtocolClass"/>
</type>
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.13"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.15"/>
</terminal>
</elements>
<elements xsi:type="xtext:Keyword" value="{"/>
@@ -101,13 +165,13 @@
<elements xsi:type="xtext:Group" cardinality="?">
<elements xsi:type="xtext:Keyword" value="regular"/>
<elements xsi:type="xtext:Assignment" feature="regular" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.5"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.7"/>
</elements>
</elements>
<elements xsi:type="xtext:Group" cardinality="?">
<elements xsi:type="xtext:Keyword" value="conjugate"/>
<elements xsi:type="xtext:Assignment" feature="conjugated" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.5"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.7"/>
</elements>
</elements>
</elements>
@@ -127,7 +191,7 @@
<elements xsi:type="xtext:Keyword" value="Port"/>
<elements xsi:type="xtext:Keyword" value="{"/>
<elements xsi:type="xtext:Assignment" cardinality="*" feature="attributes" operator="+=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.8"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.10"/>
</elements>
<elements xsi:type="xtext:Keyword" value="}"/>
</alternatives>
@@ -148,7 +212,7 @@
</elements>
<elements xsi:type="xtext:Keyword" value="{"/>
<elements xsi:type="xtext:Assignment" cardinality="*" feature="attributes" operator="+=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.9"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.11"/>
</elements>
<elements xsi:type="xtext:Keyword" value="}"/>
</alternatives>
@@ -158,8 +222,8 @@
<classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/etrice/core/Config#//AttrConfig"/>
</type>
<alternatives xsi:type="xtext:Alternatives">
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.8"/>
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.9"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.10"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.11"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AttrClassConfig">
@@ -179,26 +243,29 @@
<elements xsi:type="xtext:Group" cardinality="?">
<elements xsi:type="xtext:Keyword" value="="/>
<elements xsi:type="xtext:Assignment" feature="value" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.14"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
</elements>
</elements>
<elements xsi:type="xtext:Group" cardinality="?">
<elements xsi:type="xtext:Keyword" value="{"/>
- <elements xsi:type="xtext:UnorderedGroup">
+ <elements xsi:type="xtext:Group">
<elements xsi:type="xtext:Group" cardinality="?">
<elements xsi:type="xtext:Keyword" value="min"/>
<elements xsi:type="xtext:Keyword" value="="/>
<elements xsi:type="xtext:Assignment" feature="min" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.19"/>
</elements>
</elements>
<elements xsi:type="xtext:Group" cardinality="?">
<elements xsi:type="xtext:Keyword" value="max"/>
<elements xsi:type="xtext:Keyword" value="="/>
<elements xsi:type="xtext:Assignment" feature="max" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.19"/>
</elements>
</elements>
+ <elements xsi:type="xtext:Assignment" cardinality="*" feature="attributes" operator="+=">
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.10"/>
+ </elements>
</elements>
<elements xsi:type="xtext:Keyword" value="}"/>
</elements>
@@ -221,9 +288,29 @@
<elements xsi:type="xtext:Group" cardinality="?">
<elements xsi:type="xtext:Keyword" value="="/>
<elements xsi:type="xtext:Assignment" feature="value" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.14"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
</elements>
</elements>
+ <elements xsi:type="xtext:Group" cardinality="?">
+ <elements xsi:type="xtext:Keyword" value="{"/>
+ <elements xsi:type="xtext:Group">
+ <elements xsi:type="xtext:Group" cardinality="?">
+ <elements xsi:type="xtext:Assignment" feature="dynConfig" operator="?=">
+ <terminal xsi:type="xtext:Keyword" value="dynamic configuration"/>
+ </elements>
+ <elements xsi:type="xtext:Alternatives">
+ <elements xsi:type="xtext:Assignment" feature="readOnly" operator="?=">
+ <terminal xsi:type="xtext:Keyword" value="read"/>
+ </elements>
+ <elements xsi:type="xtext:Keyword" value="write"/>
+ </elements>
+ </elements>
+ <elements xsi:type="xtext:Assignment" cardinality="*" feature="attributes" operator="+=">
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.11"/>
+ </elements>
+ </elements>
+ <elements xsi:type="xtext:Keyword" value="}"/>
+ </elements>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="RefPath">
@@ -251,7 +338,7 @@
<elements xsi:type="xtext:Alternatives">
<elements xsi:type="xtext:Group">
<elements xsi:type="xtext:Assignment" feature="importedNamespace" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.12"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.14"/>
</elements>
<elements xsi:type="xtext:Keyword" value="from"/>
</elements>
@@ -267,7 +354,7 @@
<classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</type>
<alternatives xsi:type="xtext:Group">
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.13"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.15"/>
<elements xsi:type="xtext:Keyword" cardinality="?" value=".*"/>
</alternatives>
</rules>
@@ -289,12 +376,12 @@
</type>
<alternatives xsi:type="xtext:Group">
<elements xsi:type="xtext:Assignment" feature="literals" operator="+=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.15"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
</elements>
<elements xsi:type="xtext:Group" cardinality="*">
<elements xsi:type="xtext:Keyword" value=","/>
<elements xsi:type="xtext:Assignment" feature="literals" operator="+=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.15"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
</elements>
</elements>
</alternatives>
@@ -304,9 +391,9 @@
<classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/etrice/core/Config#//Literal"/>
</type>
<alternatives xsi:type="xtext:Alternatives">
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.20"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.18"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.19"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.22"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="BooleanLiteral">
@@ -332,8 +419,8 @@
<classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/etrice/core/Config#//NumberLiteral"/>
</type>
<alternatives xsi:type="xtext:Alternatives">
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.19"/>
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.18"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.21"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.20"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="RealLiteral">
@@ -347,7 +434,7 @@
</type>
</elements>
<elements xsi:type="xtext:Assignment" feature="value" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.24"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.26"/>
</elements>
</alternatives>
</rules>
@@ -362,7 +449,7 @@
</type>
</elements>
<elements xsi:type="xtext:Assignment" feature="value" operator="=">
- <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.21"/>
+ <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.23"/>
</elements>
</alternatives>
</rules>
@@ -383,11 +470,11 @@
</rules>
<rules xsi:type="xtext:ParserRule" name="Integer">
<type metamodel="/0/@metamodelDeclarations.1">
- <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//ELong"/>
</type>
<alternatives xsi:type="xtext:Alternatives">
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.22"/>
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.23"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.24"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.25"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="SignedInteger" definesHiddenTokens="true">
@@ -406,17 +493,17 @@
<type metamodel="/0/@metamodelDeclarations.1">
<classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</type>
- <alternatives xsi:type="xtext:RuleCall" rule="/0/@rules.29"/>
+ <alternatives xsi:type="xtext:RuleCall" rule="/0/@rules.32"/>
</rules>
<rules xsi:type="xtext:ParserRule" name="Real">
<type metamodel="/0/@metamodelDeclarations.1">
<classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</type>
<alternatives xsi:type="xtext:Alternatives">
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.25"/>
- <elements xsi:type="xtext:RuleCall" rule="/0/@rules.26"/>
<elements xsi:type="xtext:RuleCall" rule="/0/@rules.27"/>
<elements xsi:type="xtext:RuleCall" rule="/0/@rules.28"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.29"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.30"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Decimal" definesHiddenTokens="true">
@@ -471,12 +558,26 @@
<elements xsi:type="xtext:RuleCall" rule="/1/@rules.1"/>
<elements xsi:type="xtext:Keyword" value="."/>
<elements xsi:type="xtext:RuleCall" rule="/1/@rules.1"/>
- <elements xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
+ <elements xsi:type="xtext:RuleCall" rule="/0/@rules.31"/>
+ </alternatives>
+ </rules>
+ <rules xsi:type="xtext:TerminalRule" name="EXP">
+ <type metamodel="/0/@metamodelDeclarations.1">
+ <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </type>
+ <alternatives xsi:type="xtext:Group">
+ <elements xsi:type="xtext:Alternatives">
+ <elements xsi:type="xtext:Keyword" value="e"/>
+ <elements xsi:type="xtext:Keyword" value="E"/>
+ </elements>
<elements xsi:type="xtext:Alternatives" cardinality="?">
<elements xsi:type="xtext:Keyword" value="+"/>
<elements xsi:type="xtext:Keyword" value="-"/>
</elements>
- <elements xsi:type="xtext:RuleCall" rule="/1/@rules.1"/>
+ <elements xsi:type="xtext:CharacterRange" cardinality="+">
+ <left value="0"/>
+ <right value="9"/>
+ </elements>
</alternatives>
</rules>
<rules xsi:type="xtext:TerminalRule" name="HEX">
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/ConfigStandaloneSetupGenerated.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/ConfigStandaloneSetupGenerated.java
index d31b31c64..4651430a3 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/ConfigStandaloneSetupGenerated.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/ConfigStandaloneSetupGenerated.java
@@ -1,43 +1,43 @@
-
-package org.eclipse.etrice.core;
-
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.xtext.ISetup;
-import org.eclipse.emf.ecore.resource.Resource;
-
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-
-/**
- * Generated from StandaloneSetup.xpt!
- */
-@SuppressWarnings("all")
-public class ConfigStandaloneSetupGenerated implements ISetup {
-
- public Injector createInjectorAndDoEMFRegistration() {
- org.eclipse.xtext.common.TerminalsStandaloneSetup.doSetup();
-
- Injector injector = createInjector();
- register(injector);
- return injector;
- }
-
- public Injector createInjector() {
- return Guice.createInjector(new org.eclipse.etrice.core.ConfigRuntimeModule());
- }
-
- public void register(Injector injector) {
- if (!EPackage.Registry.INSTANCE.containsKey("http://www.eclipse.org/etrice/core/Config")) {
- EPackage.Registry.INSTANCE.put("http://www.eclipse.org/etrice/core/Config", org.eclipse.etrice.core.config.ConfigPackage.eINSTANCE);
- }
-
- org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
- org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
- Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("config", resourceFactory);
- org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("config", serviceProvider);
-
-
-
-
- }
-}
+
+package org.eclipse.etrice.core;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.xtext.ISetup;
+import org.eclipse.emf.ecore.resource.Resource;
+
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+
+/**
+ * Generated from StandaloneSetup.xpt!
+ */
+@SuppressWarnings("all")
+public class ConfigStandaloneSetupGenerated implements ISetup {
+
+ public Injector createInjectorAndDoEMFRegistration() {
+ org.eclipse.xtext.common.TerminalsStandaloneSetup.doSetup();
+
+ Injector injector = createInjector();
+ register(injector);
+ return injector;
+ }
+
+ public Injector createInjector() {
+ return Guice.createInjector(new org.eclipse.etrice.core.ConfigRuntimeModule());
+ }
+
+ public void register(Injector injector) {
+ if (!EPackage.Registry.INSTANCE.containsKey("http://www.eclipse.org/etrice/core/Config")) {
+ EPackage.Registry.INSTANCE.put("http://www.eclipse.org/etrice/core/Config", org.eclipse.etrice.core.config.ConfigPackage.eINSTANCE);
+ }
+
+ org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
+ org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
+ Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("config", resourceFactory);
+ org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("config", serviceProvider);
+
+
+
+
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrClassConfig.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrClassConfig.java
index 4c1a167b2..c8e4032db 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrClassConfig.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrClassConfig.java
@@ -2,6 +2,7 @@
*/
package org.eclipse.etrice.core.config;
+import org.eclipse.emf.common.util.EList;
/**
* <!-- begin-user-doc -->
@@ -13,6 +14,7 @@ package org.eclipse.etrice.core.config;
* <ul>
* <li>{@link org.eclipse.etrice.core.config.AttrClassConfig#getMin <em>Min</em>}</li>
* <li>{@link org.eclipse.etrice.core.config.AttrClassConfig#getMax <em>Max</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.AttrClassConfig#getAttributes <em>Attributes</em>}</li>
* </ul>
* </p>
*
@@ -74,4 +76,20 @@ public interface AttrClassConfig extends AttrConfig
*/
void setMax(NumberLiteral value);
+ /**
+ * Returns the value of the '<em><b>Attributes</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.etrice.core.config.AttrClassConfig}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Attributes</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Attributes</em>' containment reference list.
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getAttrClassConfig_Attributes()
+ * @model containment="true"
+ * @generated
+ */
+ EList<AttrClassConfig> getAttributes();
+
} // AttrClassConfig
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrInstanceConfig.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrInstanceConfig.java
index b9750bb19..41ff51746 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrInstanceConfig.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/AttrInstanceConfig.java
@@ -2,12 +2,21 @@
*/
package org.eclipse.etrice.core.config;
+import org.eclipse.emf.common.util.EList;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Attr Instance Config</b></em>'.
* <!-- end-user-doc -->
*
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.etrice.core.config.AttrInstanceConfig#isDynConfig <em>Dyn Config</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.AttrInstanceConfig#isReadOnly <em>Read Only</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.AttrInstanceConfig#getAttributes <em>Attributes</em>}</li>
+ * </ul>
+ * </p>
*
* @see org.eclipse.etrice.core.config.ConfigPackage#getAttrInstanceConfig()
* @model
@@ -15,4 +24,72 @@ package org.eclipse.etrice.core.config;
*/
public interface AttrInstanceConfig extends AttrConfig
{
+ /**
+ * Returns the value of the '<em><b>Dyn Config</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Dyn Config</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Dyn Config</em>' attribute.
+ * @see #setDynConfig(boolean)
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getAttrInstanceConfig_DynConfig()
+ * @model
+ * @generated
+ */
+ boolean isDynConfig();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.etrice.core.config.AttrInstanceConfig#isDynConfig <em>Dyn Config</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Dyn Config</em>' attribute.
+ * @see #isDynConfig()
+ * @generated
+ */
+ void setDynConfig(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Read Only</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Read Only</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Read Only</em>' attribute.
+ * @see #setReadOnly(boolean)
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getAttrInstanceConfig_ReadOnly()
+ * @model
+ * @generated
+ */
+ boolean isReadOnly();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.etrice.core.config.AttrInstanceConfig#isReadOnly <em>Read Only</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Read Only</em>' attribute.
+ * @see #isReadOnly()
+ * @generated
+ */
+ void setReadOnly(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Attributes</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.etrice.core.config.AttrInstanceConfig}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Attributes</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Attributes</em>' containment reference list.
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getAttrInstanceConfig_Attributes()
+ * @model containment="true"
+ * @generated
+ */
+ EList<AttrInstanceConfig> getAttributes();
+
} // AttrInstanceConfig
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigFactory.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigFactory.java
index 9490d0e47..70d175b4d 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigFactory.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigFactory.java
@@ -41,6 +41,24 @@ public interface ConfigFactory extends EFactory
ConfigElement createConfigElement();
/**
+ * Returns a new object of class '<em>Sub System Config</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Sub System Config</em>'.
+ * @generated
+ */
+ SubSystemConfig createSubSystemConfig();
+
+ /**
+ * Returns a new object of class '<em>Dynamic Config</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Dynamic Config</em>'.
+ * @generated
+ */
+ DynamicConfig createDynamicConfig();
+
+ /**
* Returns a new object of class '<em>Actor Class Config</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigModel.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigModel.java
index dd2539827..26a95f2e6 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigModel.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigModel.java
@@ -84,4 +84,13 @@ public interface ConfigModel extends EObject
*/
EList<ProtocolClassConfig> getProtocolClassConfigs();
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel body='EList<SubSystemConfig> list = new org.eclipse.emf.common.util.BasicEList<SubSystemConfig>();\r\n\t\t\t\tfor(ConfigElement element : this.getConfigElements())\r\n\t\t\t \t\tif(element instanceof SubSystemConfig)\r\n\t\t\t\t\t\tlist.add((SubSystemConfig) element);\r\n\t\t\t\treturn list;'"
+ * @generated
+ */
+ EList<SubSystemConfig> getSubSystemConfigs();
+
} // ConfigModel
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigPackage.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigPackage.java
index fa8c4dcbd..e6e347730 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigPackage.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/ConfigPackage.java
@@ -113,6 +113,98 @@ public interface ConfigPackage extends EPackage
int CONFIG_ELEMENT_FEATURE_COUNT = 0;
/**
+ * The meta object id for the '{@link org.eclipse.etrice.core.config.impl.SubSystemConfigImpl <em>Sub System Config</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.etrice.core.config.impl.SubSystemConfigImpl
+ * @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getSubSystemConfig()
+ * @generated
+ */
+ int SUB_SYSTEM_CONFIG = 2;
+
+ /**
+ * The feature id for the '<em><b>Sub System</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUB_SYSTEM_CONFIG__SUB_SYSTEM = CONFIG_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Dyn Config</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUB_SYSTEM_CONFIG__DYN_CONFIG = CONFIG_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Sub System Config</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SUB_SYSTEM_CONFIG_FEATURE_COUNT = CONFIG_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.etrice.core.config.impl.DynamicConfigImpl <em>Dynamic Config</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.etrice.core.config.impl.DynamicConfigImpl
+ * @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getDynamicConfig()
+ * @generated
+ */
+ int DYNAMIC_CONFIG = 3;
+
+ /**
+ * The feature id for the '<em><b>File Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DYNAMIC_CONFIG__FILE_PATH = 0;
+
+ /**
+ * The feature id for the '<em><b>User Code1</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DYNAMIC_CONFIG__USER_CODE1 = 1;
+
+ /**
+ * The feature id for the '<em><b>User Code2</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DYNAMIC_CONFIG__USER_CODE2 = 2;
+
+ /**
+ * The feature id for the '<em><b>Polling</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DYNAMIC_CONFIG__POLLING = 3;
+
+ /**
+ * The number of structural features of the '<em>Dynamic Config</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DYNAMIC_CONFIG_FEATURE_COUNT = 4;
+
+ /**
* The meta object id for the '{@link org.eclipse.etrice.core.config.impl.ActorClassConfigImpl <em>Actor Class Config</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -120,7 +212,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getActorClassConfig()
* @generated
*/
- int ACTOR_CLASS_CONFIG = 2;
+ int ACTOR_CLASS_CONFIG = 4;
/**
* The feature id for the '<em><b>Actor</b></em>' reference.
@@ -157,7 +249,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getActorInstanceConfig()
* @generated
*/
- int ACTOR_INSTANCE_CONFIG = 3;
+ int ACTOR_INSTANCE_CONFIG = 5;
/**
* The feature id for the '<em><b>Root</b></em>' reference.
@@ -212,7 +304,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getProtocolClassConfig()
* @generated
*/
- int PROTOCOL_CLASS_CONFIG = 4;
+ int PROTOCOL_CLASS_CONFIG = 6;
/**
* The feature id for the '<em><b>Protocol</b></em>' reference.
@@ -258,7 +350,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getPortClassConfig()
* @generated
*/
- int PORT_CLASS_CONFIG = 5;
+ int PORT_CLASS_CONFIG = 7;
/**
* The feature id for the '<em><b>Attributes</b></em>' containment reference list.
@@ -286,7 +378,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getPortInstanceConfig()
* @generated
*/
- int PORT_INSTANCE_CONFIG = 6;
+ int PORT_INSTANCE_CONFIG = 8;
/**
* The feature id for the '<em><b>Item</b></em>' reference.
@@ -323,7 +415,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getAttrConfig()
* @generated
*/
- int ATTR_CONFIG = 7;
+ int ATTR_CONFIG = 9;
/**
* The feature id for the '<em><b>Attribute</b></em>' reference.
@@ -360,7 +452,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getAttrClassConfig()
* @generated
*/
- int ATTR_CLASS_CONFIG = 8;
+ int ATTR_CLASS_CONFIG = 10;
/**
* The feature id for the '<em><b>Attribute</b></em>' reference.
@@ -399,13 +491,22 @@ public interface ConfigPackage extends EPackage
int ATTR_CLASS_CONFIG__MAX = ATTR_CONFIG_FEATURE_COUNT + 1;
/**
+ * The feature id for the '<em><b>Attributes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ATTR_CLASS_CONFIG__ATTRIBUTES = ATTR_CONFIG_FEATURE_COUNT + 2;
+
+ /**
* The number of structural features of the '<em>Attr Class Config</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ATTR_CLASS_CONFIG_FEATURE_COUNT = ATTR_CONFIG_FEATURE_COUNT + 2;
+ int ATTR_CLASS_CONFIG_FEATURE_COUNT = ATTR_CONFIG_FEATURE_COUNT + 3;
/**
* The meta object id for the '{@link org.eclipse.etrice.core.config.impl.AttrInstanceConfigImpl <em>Attr Instance Config</em>}' class.
@@ -415,7 +516,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getAttrInstanceConfig()
* @generated
*/
- int ATTR_INSTANCE_CONFIG = 9;
+ int ATTR_INSTANCE_CONFIG = 11;
/**
* The feature id for the '<em><b>Attribute</b></em>' reference.
@@ -436,13 +537,40 @@ public interface ConfigPackage extends EPackage
int ATTR_INSTANCE_CONFIG__VALUE = ATTR_CONFIG__VALUE;
/**
+ * The feature id for the '<em><b>Dyn Config</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ATTR_INSTANCE_CONFIG__DYN_CONFIG = ATTR_CONFIG_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Read Only</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ATTR_INSTANCE_CONFIG__READ_ONLY = ATTR_CONFIG_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Attributes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ATTR_INSTANCE_CONFIG__ATTRIBUTES = ATTR_CONFIG_FEATURE_COUNT + 2;
+
+ /**
* The number of structural features of the '<em>Attr Instance Config</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ATTR_INSTANCE_CONFIG_FEATURE_COUNT = ATTR_CONFIG_FEATURE_COUNT + 0;
+ int ATTR_INSTANCE_CONFIG_FEATURE_COUNT = ATTR_CONFIG_FEATURE_COUNT + 3;
/**
* The meta object id for the '{@link org.eclipse.etrice.core.config.impl.RefPathImpl <em>Ref Path</em>}' class.
@@ -452,7 +580,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getRefPath()
* @generated
*/
- int REF_PATH = 10;
+ int REF_PATH = 12;
/**
* The feature id for the '<em><b>Refs</b></em>' attribute list.
@@ -480,7 +608,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getImport()
* @generated
*/
- int IMPORT = 11;
+ int IMPORT = 13;
/**
* The feature id for the '<em><b>Imported Namespace</b></em>' attribute.
@@ -517,7 +645,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getLiteralArray()
* @generated
*/
- int LITERAL_ARRAY = 12;
+ int LITERAL_ARRAY = 14;
/**
* The feature id for the '<em><b>Literals</b></em>' containment reference list.
@@ -545,7 +673,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getLiteral()
* @generated
*/
- int LITERAL = 13;
+ int LITERAL = 15;
/**
* The number of structural features of the '<em>Literal</em>' class.
@@ -564,7 +692,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getBooleanLiteral()
* @generated
*/
- int BOOLEAN_LITERAL = 14;
+ int BOOLEAN_LITERAL = 16;
/**
* The feature id for the '<em><b>Is True</b></em>' attribute.
@@ -592,7 +720,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getNumberLiteral()
* @generated
*/
- int NUMBER_LITERAL = 15;
+ int NUMBER_LITERAL = 17;
/**
* The number of structural features of the '<em>Number Literal</em>' class.
@@ -611,7 +739,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getRealLiteral()
* @generated
*/
- int REAL_LITERAL = 16;
+ int REAL_LITERAL = 18;
/**
* The feature id for the '<em><b>Value</b></em>' attribute.
@@ -639,7 +767,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getIntLiteral()
* @generated
*/
- int INT_LITERAL = 17;
+ int INT_LITERAL = 19;
/**
* The feature id for the '<em><b>Value</b></em>' attribute.
@@ -667,7 +795,7 @@ public interface ConfigPackage extends EPackage
* @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getStringLiteral()
* @generated
*/
- int STRING_LITERAL = 18;
+ int STRING_LITERAL = 20;
/**
* The feature id for the '<em><b>Value</b></em>' attribute.
@@ -731,6 +859,92 @@ public interface ConfigPackage extends EPackage
EClass getConfigElement();
/**
+ * Returns the meta object for class '{@link org.eclipse.etrice.core.config.SubSystemConfig <em>Sub System Config</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Sub System Config</em>'.
+ * @see org.eclipse.etrice.core.config.SubSystemConfig
+ * @generated
+ */
+ EClass getSubSystemConfig();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.etrice.core.config.SubSystemConfig#getSubSystem <em>Sub System</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Sub System</em>'.
+ * @see org.eclipse.etrice.core.config.SubSystemConfig#getSubSystem()
+ * @see #getSubSystemConfig()
+ * @generated
+ */
+ EReference getSubSystemConfig_SubSystem();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.etrice.core.config.SubSystemConfig#getDynConfig <em>Dyn Config</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Dyn Config</em>'.
+ * @see org.eclipse.etrice.core.config.SubSystemConfig#getDynConfig()
+ * @see #getSubSystemConfig()
+ * @generated
+ */
+ EReference getSubSystemConfig_DynConfig();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.etrice.core.config.DynamicConfig <em>Dynamic Config</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Dynamic Config</em>'.
+ * @see org.eclipse.etrice.core.config.DynamicConfig
+ * @generated
+ */
+ EClass getDynamicConfig();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.etrice.core.config.DynamicConfig#getFilePath <em>File Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>File Path</em>'.
+ * @see org.eclipse.etrice.core.config.DynamicConfig#getFilePath()
+ * @see #getDynamicConfig()
+ * @generated
+ */
+ EAttribute getDynamicConfig_FilePath();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.etrice.core.config.DynamicConfig#getUserCode1 <em>User Code1</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>User Code1</em>'.
+ * @see org.eclipse.etrice.core.config.DynamicConfig#getUserCode1()
+ * @see #getDynamicConfig()
+ * @generated
+ */
+ EAttribute getDynamicConfig_UserCode1();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.etrice.core.config.DynamicConfig#getUserCode2 <em>User Code2</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>User Code2</em>'.
+ * @see org.eclipse.etrice.core.config.DynamicConfig#getUserCode2()
+ * @see #getDynamicConfig()
+ * @generated
+ */
+ EAttribute getDynamicConfig_UserCode2();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.etrice.core.config.DynamicConfig#getPolling <em>Polling</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Polling</em>'.
+ * @see org.eclipse.etrice.core.config.DynamicConfig#getPolling()
+ * @see #getDynamicConfig()
+ * @generated
+ */
+ EAttribute getDynamicConfig_Polling();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.etrice.core.config.ActorClassConfig <em>Actor Class Config</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -977,6 +1191,17 @@ public interface ConfigPackage extends EPackage
EReference getAttrClassConfig_Max();
/**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.etrice.core.config.AttrClassConfig#getAttributes <em>Attributes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Attributes</em>'.
+ * @see org.eclipse.etrice.core.config.AttrClassConfig#getAttributes()
+ * @see #getAttrClassConfig()
+ * @generated
+ */
+ EReference getAttrClassConfig_Attributes();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.etrice.core.config.AttrInstanceConfig <em>Attr Instance Config</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -987,6 +1212,39 @@ public interface ConfigPackage extends EPackage
EClass getAttrInstanceConfig();
/**
+ * Returns the meta object for the attribute '{@link org.eclipse.etrice.core.config.AttrInstanceConfig#isDynConfig <em>Dyn Config</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Dyn Config</em>'.
+ * @see org.eclipse.etrice.core.config.AttrInstanceConfig#isDynConfig()
+ * @see #getAttrInstanceConfig()
+ * @generated
+ */
+ EAttribute getAttrInstanceConfig_DynConfig();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.etrice.core.config.AttrInstanceConfig#isReadOnly <em>Read Only</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Read Only</em>'.
+ * @see org.eclipse.etrice.core.config.AttrInstanceConfig#isReadOnly()
+ * @see #getAttrInstanceConfig()
+ * @generated
+ */
+ EAttribute getAttrInstanceConfig_ReadOnly();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.etrice.core.config.AttrInstanceConfig#getAttributes <em>Attributes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Attributes</em>'.
+ * @see org.eclipse.etrice.core.config.AttrInstanceConfig#getAttributes()
+ * @see #getAttrInstanceConfig()
+ * @generated
+ */
+ EReference getAttrInstanceConfig_Attributes();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.etrice.core.config.RefPath <em>Ref Path</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1224,6 +1482,74 @@ public interface ConfigPackage extends EPackage
EClass CONFIG_ELEMENT = eINSTANCE.getConfigElement();
/**
+ * The meta object literal for the '{@link org.eclipse.etrice.core.config.impl.SubSystemConfigImpl <em>Sub System Config</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.etrice.core.config.impl.SubSystemConfigImpl
+ * @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getSubSystemConfig()
+ * @generated
+ */
+ EClass SUB_SYSTEM_CONFIG = eINSTANCE.getSubSystemConfig();
+
+ /**
+ * The meta object literal for the '<em><b>Sub System</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SUB_SYSTEM_CONFIG__SUB_SYSTEM = eINSTANCE.getSubSystemConfig_SubSystem();
+
+ /**
+ * The meta object literal for the '<em><b>Dyn Config</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SUB_SYSTEM_CONFIG__DYN_CONFIG = eINSTANCE.getSubSystemConfig_DynConfig();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.etrice.core.config.impl.DynamicConfigImpl <em>Dynamic Config</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.etrice.core.config.impl.DynamicConfigImpl
+ * @see org.eclipse.etrice.core.config.impl.ConfigPackageImpl#getDynamicConfig()
+ * @generated
+ */
+ EClass DYNAMIC_CONFIG = eINSTANCE.getDynamicConfig();
+
+ /**
+ * The meta object literal for the '<em><b>File Path</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DYNAMIC_CONFIG__FILE_PATH = eINSTANCE.getDynamicConfig_FilePath();
+
+ /**
+ * The meta object literal for the '<em><b>User Code1</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DYNAMIC_CONFIG__USER_CODE1 = eINSTANCE.getDynamicConfig_UserCode1();
+
+ /**
+ * The meta object literal for the '<em><b>User Code2</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DYNAMIC_CONFIG__USER_CODE2 = eINSTANCE.getDynamicConfig_UserCode2();
+
+ /**
+ * The meta object literal for the '<em><b>Polling</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DYNAMIC_CONFIG__POLLING = eINSTANCE.getDynamicConfig_Polling();
+
+ /**
* The meta object literal for the '{@link org.eclipse.etrice.core.config.impl.ActorClassConfigImpl <em>Actor Class Config</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1422,6 +1748,14 @@ public interface ConfigPackage extends EPackage
EReference ATTR_CLASS_CONFIG__MAX = eINSTANCE.getAttrClassConfig_Max();
/**
+ * The meta object literal for the '<em><b>Attributes</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ATTR_CLASS_CONFIG__ATTRIBUTES = eINSTANCE.getAttrClassConfig_Attributes();
+
+ /**
* The meta object literal for the '{@link org.eclipse.etrice.core.config.impl.AttrInstanceConfigImpl <em>Attr Instance Config</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1432,6 +1766,30 @@ public interface ConfigPackage extends EPackage
EClass ATTR_INSTANCE_CONFIG = eINSTANCE.getAttrInstanceConfig();
/**
+ * The meta object literal for the '<em><b>Dyn Config</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ATTR_INSTANCE_CONFIG__DYN_CONFIG = eINSTANCE.getAttrInstanceConfig_DynConfig();
+
+ /**
+ * The meta object literal for the '<em><b>Read Only</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ATTR_INSTANCE_CONFIG__READ_ONLY = eINSTANCE.getAttrInstanceConfig_ReadOnly();
+
+ /**
+ * The meta object literal for the '<em><b>Attributes</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ATTR_INSTANCE_CONFIG__ATTRIBUTES = eINSTANCE.getAttrInstanceConfig_Attributes();
+
+ /**
* The meta object literal for the '{@link org.eclipse.etrice.core.config.impl.RefPathImpl <em>Ref Path</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/DynamicConfig.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/DynamicConfig.java
new file mode 100644
index 000000000..32f8daf46
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/DynamicConfig.java
@@ -0,0 +1,132 @@
+/**
+ */
+package org.eclipse.etrice.core.config;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Dynamic Config</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.etrice.core.config.DynamicConfig#getFilePath <em>File Path</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.DynamicConfig#getUserCode1 <em>User Code1</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.DynamicConfig#getUserCode2 <em>User Code2</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.DynamicConfig#getPolling <em>Polling</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getDynamicConfig()
+ * @model
+ * @generated
+ */
+public interface DynamicConfig extends EObject
+{
+ /**
+ * Returns the value of the '<em><b>File Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>File Path</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>File Path</em>' attribute.
+ * @see #setFilePath(String)
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getDynamicConfig_FilePath()
+ * @model
+ * @generated
+ */
+ String getFilePath();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.etrice.core.config.DynamicConfig#getFilePath <em>File Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>File Path</em>' attribute.
+ * @see #getFilePath()
+ * @generated
+ */
+ void setFilePath(String value);
+
+ /**
+ * Returns the value of the '<em><b>User Code1</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>User Code1</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>User Code1</em>' attribute.
+ * @see #setUserCode1(String)
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getDynamicConfig_UserCode1()
+ * @model
+ * @generated
+ */
+ String getUserCode1();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.etrice.core.config.DynamicConfig#getUserCode1 <em>User Code1</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>User Code1</em>' attribute.
+ * @see #getUserCode1()
+ * @generated
+ */
+ void setUserCode1(String value);
+
+ /**
+ * Returns the value of the '<em><b>User Code2</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>User Code2</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>User Code2</em>' attribute.
+ * @see #setUserCode2(String)
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getDynamicConfig_UserCode2()
+ * @model
+ * @generated
+ */
+ String getUserCode2();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.etrice.core.config.DynamicConfig#getUserCode2 <em>User Code2</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>User Code2</em>' attribute.
+ * @see #getUserCode2()
+ * @generated
+ */
+ void setUserCode2(String value);
+
+ /**
+ * Returns the value of the '<em><b>Polling</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Polling</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Polling</em>' attribute.
+ * @see #setPolling(int)
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getDynamicConfig_Polling()
+ * @model
+ * @generated
+ */
+ int getPolling();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.etrice.core.config.DynamicConfig#getPolling <em>Polling</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Polling</em>' attribute.
+ * @see #getPolling()
+ * @generated
+ */
+ void setPolling(int value);
+
+} // DynamicConfig
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/IntLiteral.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/IntLiteral.java
index c3904f137..13c92a3ab 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/IntLiteral.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/IntLiteral.java
@@ -30,12 +30,12 @@ public interface IntLiteral extends NumberLiteral
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Value</em>' attribute.
- * @see #setValue(int)
+ * @see #setValue(long)
* @see org.eclipse.etrice.core.config.ConfigPackage#getIntLiteral_Value()
* @model
* @generated
*/
- int getValue();
+ long getValue();
/**
* Sets the value of the '{@link org.eclipse.etrice.core.config.IntLiteral#getValue <em>Value</em>}' attribute.
@@ -45,6 +45,6 @@ public interface IntLiteral extends NumberLiteral
* @see #getValue()
* @generated
*/
- void setValue(int value);
+ void setValue(long value);
} // IntLiteral
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/SubSystemConfig.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/SubSystemConfig.java
new file mode 100644
index 000000000..a386742b7
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/SubSystemConfig.java
@@ -0,0 +1,78 @@
+/**
+ */
+package org.eclipse.etrice.core.config;
+
+import org.eclipse.etrice.core.room.SubSystemClass;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Sub System Config</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.etrice.core.config.SubSystemConfig#getSubSystem <em>Sub System</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.SubSystemConfig#getDynConfig <em>Dyn Config</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getSubSystemConfig()
+ * @model
+ * @generated
+ */
+public interface SubSystemConfig extends ConfigElement
+{
+ /**
+ * Returns the value of the '<em><b>Sub System</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Sub System</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Sub System</em>' reference.
+ * @see #setSubSystem(SubSystemClass)
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getSubSystemConfig_SubSystem()
+ * @model
+ * @generated
+ */
+ SubSystemClass getSubSystem();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.etrice.core.config.SubSystemConfig#getSubSystem <em>Sub System</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Sub System</em>' reference.
+ * @see #getSubSystem()
+ * @generated
+ */
+ void setSubSystem(SubSystemClass value);
+
+ /**
+ * Returns the value of the '<em><b>Dyn Config</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Dyn Config</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Dyn Config</em>' containment reference.
+ * @see #setDynConfig(DynamicConfig)
+ * @see org.eclipse.etrice.core.config.ConfigPackage#getSubSystemConfig_DynConfig()
+ * @model containment="true"
+ * @generated
+ */
+ DynamicConfig getDynConfig();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.etrice.core.config.SubSystemConfig#getDynConfig <em>Dyn Config</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Dyn Config</em>' containment reference.
+ * @see #getDynConfig()
+ * @generated
+ */
+ void setDynConfig(DynamicConfig value);
+
+} // SubSystemConfig
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrClassConfigImpl.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrClassConfigImpl.java
index 6da8632ee..6c2235ce6 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrClassConfigImpl.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrClassConfigImpl.java
@@ -2,14 +2,21 @@
*/
package org.eclipse.etrice.core.config.impl;
+import java.util.Collection;
+
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
import org.eclipse.etrice.core.config.AttrClassConfig;
import org.eclipse.etrice.core.config.ConfigPackage;
import org.eclipse.etrice.core.config.NumberLiteral;
@@ -23,6 +30,7 @@ import org.eclipse.etrice.core.config.NumberLiteral;
* <ul>
* <li>{@link org.eclipse.etrice.core.config.impl.AttrClassConfigImpl#getMin <em>Min</em>}</li>
* <li>{@link org.eclipse.etrice.core.config.impl.AttrClassConfigImpl#getMax <em>Max</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.impl.AttrClassConfigImpl#getAttributes <em>Attributes</em>}</li>
* </ul>
* </p>
*
@@ -51,6 +59,16 @@ public class AttrClassConfigImpl extends AttrConfigImpl implements AttrClassConf
protected NumberLiteral max;
/**
+ * The cached value of the '{@link #getAttributes() <em>Attributes</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAttributes()
+ * @generated
+ * @ordered
+ */
+ protected EList<AttrClassConfig> attributes;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -172,6 +190,20 @@ public class AttrClassConfigImpl extends AttrConfigImpl implements AttrClassConf
* <!-- end-user-doc -->
* @generated
*/
+ public EList<AttrClassConfig> getAttributes()
+ {
+ if (attributes == null)
+ {
+ attributes = new EObjectContainmentEList<AttrClassConfig>(AttrClassConfig.class, this, ConfigPackage.ATTR_CLASS_CONFIG__ATTRIBUTES);
+ }
+ return attributes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
{
@@ -181,6 +213,8 @@ public class AttrClassConfigImpl extends AttrConfigImpl implements AttrClassConf
return basicSetMin(null, msgs);
case ConfigPackage.ATTR_CLASS_CONFIG__MAX:
return basicSetMax(null, msgs);
+ case ConfigPackage.ATTR_CLASS_CONFIG__ATTRIBUTES:
+ return ((InternalEList<?>)getAttributes()).basicRemove(otherEnd, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
@@ -199,6 +233,8 @@ public class AttrClassConfigImpl extends AttrConfigImpl implements AttrClassConf
return getMin();
case ConfigPackage.ATTR_CLASS_CONFIG__MAX:
return getMax();
+ case ConfigPackage.ATTR_CLASS_CONFIG__ATTRIBUTES:
+ return getAttributes();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -208,6 +244,7 @@ public class AttrClassConfigImpl extends AttrConfigImpl implements AttrClassConf
* <!-- end-user-doc -->
* @generated
*/
+ @SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue)
{
@@ -219,6 +256,10 @@ public class AttrClassConfigImpl extends AttrConfigImpl implements AttrClassConf
case ConfigPackage.ATTR_CLASS_CONFIG__MAX:
setMax((NumberLiteral)newValue);
return;
+ case ConfigPackage.ATTR_CLASS_CONFIG__ATTRIBUTES:
+ getAttributes().clear();
+ getAttributes().addAll((Collection<? extends AttrClassConfig>)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -239,6 +280,9 @@ public class AttrClassConfigImpl extends AttrConfigImpl implements AttrClassConf
case ConfigPackage.ATTR_CLASS_CONFIG__MAX:
setMax((NumberLiteral)null);
return;
+ case ConfigPackage.ATTR_CLASS_CONFIG__ATTRIBUTES:
+ getAttributes().clear();
+ return;
}
super.eUnset(featureID);
}
@@ -257,6 +301,8 @@ public class AttrClassConfigImpl extends AttrConfigImpl implements AttrClassConf
return min != null;
case ConfigPackage.ATTR_CLASS_CONFIG__MAX:
return max != null;
+ case ConfigPackage.ATTR_CLASS_CONFIG__ATTRIBUTES:
+ return attributes != null && !attributes.isEmpty();
}
return super.eIsSet(featureID);
}
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrInstanceConfigImpl.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrInstanceConfigImpl.java
index e1e26984d..9b01d2fcf 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrInstanceConfigImpl.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/AttrInstanceConfigImpl.java
@@ -2,7 +2,20 @@
*/
package org.eclipse.etrice.core.config.impl;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
import org.eclipse.etrice.core.config.AttrInstanceConfig;
import org.eclipse.etrice.core.config.ConfigPackage;
@@ -12,6 +25,12 @@ import org.eclipse.etrice.core.config.ConfigPackage;
* An implementation of the model object '<em><b>Attr Instance Config</b></em>'.
* <!-- end-user-doc -->
* <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.etrice.core.config.impl.AttrInstanceConfigImpl#isDynConfig <em>Dyn Config</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.impl.AttrInstanceConfigImpl#isReadOnly <em>Read Only</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.impl.AttrInstanceConfigImpl#getAttributes <em>Attributes</em>}</li>
+ * </ul>
* </p>
*
* @generated
@@ -19,6 +38,56 @@ import org.eclipse.etrice.core.config.ConfigPackage;
public class AttrInstanceConfigImpl extends AttrConfigImpl implements AttrInstanceConfig
{
/**
+ * The default value of the '{@link #isDynConfig() <em>Dyn Config</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isDynConfig()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean DYN_CONFIG_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isDynConfig() <em>Dyn Config</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isDynConfig()
+ * @generated
+ * @ordered
+ */
+ protected boolean dynConfig = DYN_CONFIG_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isReadOnly() <em>Read Only</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isReadOnly()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean READ_ONLY_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isReadOnly() <em>Read Only</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isReadOnly()
+ * @generated
+ * @ordered
+ */
+ protected boolean readOnly = READ_ONLY_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getAttributes() <em>Attributes</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAttributes()
+ * @generated
+ * @ordered
+ */
+ protected EList<AttrInstanceConfig> attributes;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -39,4 +108,187 @@ public class AttrInstanceConfigImpl extends AttrConfigImpl implements AttrInstan
return ConfigPackage.Literals.ATTR_INSTANCE_CONFIG;
}
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isDynConfig()
+ {
+ return dynConfig;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDynConfig(boolean newDynConfig)
+ {
+ boolean oldDynConfig = dynConfig;
+ dynConfig = newDynConfig;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ConfigPackage.ATTR_INSTANCE_CONFIG__DYN_CONFIG, oldDynConfig, dynConfig));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isReadOnly()
+ {
+ return readOnly;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setReadOnly(boolean newReadOnly)
+ {
+ boolean oldReadOnly = readOnly;
+ readOnly = newReadOnly;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ConfigPackage.ATTR_INSTANCE_CONFIG__READ_ONLY, oldReadOnly, readOnly));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AttrInstanceConfig> getAttributes()
+ {
+ if (attributes == null)
+ {
+ attributes = new EObjectContainmentEList<AttrInstanceConfig>(AttrInstanceConfig.class, this, ConfigPackage.ATTR_INSTANCE_CONFIG__ATTRIBUTES);
+ }
+ return attributes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__ATTRIBUTES:
+ return ((InternalEList<?>)getAttributes()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__DYN_CONFIG:
+ return isDynConfig();
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__READ_ONLY:
+ return isReadOnly();
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__ATTRIBUTES:
+ return getAttributes();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__DYN_CONFIG:
+ setDynConfig((Boolean)newValue);
+ return;
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__READ_ONLY:
+ setReadOnly((Boolean)newValue);
+ return;
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__ATTRIBUTES:
+ getAttributes().clear();
+ getAttributes().addAll((Collection<? extends AttrInstanceConfig>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__DYN_CONFIG:
+ setDynConfig(DYN_CONFIG_EDEFAULT);
+ return;
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__READ_ONLY:
+ setReadOnly(READ_ONLY_EDEFAULT);
+ return;
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__ATTRIBUTES:
+ getAttributes().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__DYN_CONFIG:
+ return dynConfig != DYN_CONFIG_EDEFAULT;
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__READ_ONLY:
+ return readOnly != READ_ONLY_EDEFAULT;
+ case ConfigPackage.ATTR_INSTANCE_CONFIG__ATTRIBUTES:
+ return attributes != null && !attributes.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString()
+ {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (dynConfig: ");
+ result.append(dynConfig);
+ result.append(", readOnly: ");
+ result.append(readOnly);
+ result.append(')');
+ return result.toString();
+ }
+
} //AttrInstanceConfigImpl
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigFactoryImpl.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigFactoryImpl.java
index 3f9571218..d737efbb0 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigFactoryImpl.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigFactoryImpl.java
@@ -66,6 +66,8 @@ public class ConfigFactoryImpl extends EFactoryImpl implements ConfigFactory
{
case ConfigPackage.CONFIG_MODEL: return createConfigModel();
case ConfigPackage.CONFIG_ELEMENT: return createConfigElement();
+ case ConfigPackage.SUB_SYSTEM_CONFIG: return createSubSystemConfig();
+ case ConfigPackage.DYNAMIC_CONFIG: return createDynamicConfig();
case ConfigPackage.ACTOR_CLASS_CONFIG: return createActorClassConfig();
case ConfigPackage.ACTOR_INSTANCE_CONFIG: return createActorInstanceConfig();
case ConfigPackage.PROTOCOL_CLASS_CONFIG: return createProtocolClassConfig();
@@ -115,6 +117,28 @@ public class ConfigFactoryImpl extends EFactoryImpl implements ConfigFactory
* <!-- end-user-doc -->
* @generated
*/
+ public SubSystemConfig createSubSystemConfig()
+ {
+ SubSystemConfigImpl subSystemConfig = new SubSystemConfigImpl();
+ return subSystemConfig;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DynamicConfig createDynamicConfig()
+ {
+ DynamicConfigImpl dynamicConfig = new DynamicConfigImpl();
+ return dynamicConfig;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public ActorClassConfig createActorClassConfig()
{
ActorClassConfigImpl actorClassConfig = new ActorClassConfigImpl();
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigModelImpl.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigModelImpl.java
index bd9377e3a..6204b4cec 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigModelImpl.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigModelImpl.java
@@ -23,6 +23,7 @@ import org.eclipse.etrice.core.config.ConfigModel;
import org.eclipse.etrice.core.config.ConfigPackage;
import org.eclipse.etrice.core.config.Import;
import org.eclipse.etrice.core.config.ProtocolClassConfig;
+import org.eclipse.etrice.core.config.SubSystemConfig;
/**
* <!-- begin-user-doc -->
@@ -156,6 +157,20 @@ public class ConfigModelImpl extends MinimalEObjectImpl.Container implements Con
* <!-- end-user-doc -->
* @generated
*/
+ public EList<SubSystemConfig> getSubSystemConfigs()
+ {
+ EList<SubSystemConfig> list = new org.eclipse.emf.common.util.BasicEList<SubSystemConfig>();
+ for(ConfigElement element : this.getConfigElements())
+ if(element instanceof SubSystemConfig)
+ list.add((SubSystemConfig) element);
+ return list;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
{
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigPackageImpl.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigPackageImpl.java
index 5a50f70a3..f06fde557 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigPackageImpl.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/ConfigPackageImpl.java
@@ -19,6 +19,7 @@ import org.eclipse.etrice.core.config.ConfigElement;
import org.eclipse.etrice.core.config.ConfigFactory;
import org.eclipse.etrice.core.config.ConfigModel;
import org.eclipse.etrice.core.config.ConfigPackage;
+import org.eclipse.etrice.core.config.DynamicConfig;
import org.eclipse.etrice.core.config.Import;
import org.eclipse.etrice.core.config.IntLiteral;
import org.eclipse.etrice.core.config.Literal;
@@ -30,6 +31,7 @@ import org.eclipse.etrice.core.config.ProtocolClassConfig;
import org.eclipse.etrice.core.config.RealLiteral;
import org.eclipse.etrice.core.config.RefPath;
import org.eclipse.etrice.core.config.StringLiteral;
+import org.eclipse.etrice.core.config.SubSystemConfig;
import org.eclipse.etrice.core.room.RoomPackage;
@@ -60,6 +62,20 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
* <!-- end-user-doc -->
* @generated
*/
+ private EClass subSystemConfigEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dynamicConfigEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
private EClass actorClassConfigEClass = null;
/**
@@ -285,6 +301,86 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
* <!-- end-user-doc -->
* @generated
*/
+ public EClass getSubSystemConfig()
+ {
+ return subSystemConfigEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getSubSystemConfig_SubSystem()
+ {
+ return (EReference)subSystemConfigEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getSubSystemConfig_DynConfig()
+ {
+ return (EReference)subSystemConfigEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDynamicConfig()
+ {
+ return dynamicConfigEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDynamicConfig_FilePath()
+ {
+ return (EAttribute)dynamicConfigEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDynamicConfig_UserCode1()
+ {
+ return (EAttribute)dynamicConfigEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDynamicConfig_UserCode2()
+ {
+ return (EAttribute)dynamicConfigEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDynamicConfig_Polling()
+ {
+ return (EAttribute)dynamicConfigEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EClass getActorClassConfig()
{
return actorClassConfigEClass;
@@ -515,6 +611,16 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
* <!-- end-user-doc -->
* @generated
*/
+ public EReference getAttrClassConfig_Attributes()
+ {
+ return (EReference)attrClassConfigEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EClass getAttrInstanceConfig()
{
return attrInstanceConfigEClass;
@@ -525,6 +631,36 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
* <!-- end-user-doc -->
* @generated
*/
+ public EAttribute getAttrInstanceConfig_DynConfig()
+ {
+ return (EAttribute)attrInstanceConfigEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getAttrInstanceConfig_ReadOnly()
+ {
+ return (EAttribute)attrInstanceConfigEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAttrInstanceConfig_Attributes()
+ {
+ return (EReference)attrInstanceConfigEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EClass getRefPath()
{
return refPathEClass;
@@ -726,6 +862,16 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
configElementEClass = createEClass(CONFIG_ELEMENT);
+ subSystemConfigEClass = createEClass(SUB_SYSTEM_CONFIG);
+ createEReference(subSystemConfigEClass, SUB_SYSTEM_CONFIG__SUB_SYSTEM);
+ createEReference(subSystemConfigEClass, SUB_SYSTEM_CONFIG__DYN_CONFIG);
+
+ dynamicConfigEClass = createEClass(DYNAMIC_CONFIG);
+ createEAttribute(dynamicConfigEClass, DYNAMIC_CONFIG__FILE_PATH);
+ createEAttribute(dynamicConfigEClass, DYNAMIC_CONFIG__USER_CODE1);
+ createEAttribute(dynamicConfigEClass, DYNAMIC_CONFIG__USER_CODE2);
+ createEAttribute(dynamicConfigEClass, DYNAMIC_CONFIG__POLLING);
+
actorClassConfigEClass = createEClass(ACTOR_CLASS_CONFIG);
createEReference(actorClassConfigEClass, ACTOR_CLASS_CONFIG__ACTOR);
createEReference(actorClassConfigEClass, ACTOR_CLASS_CONFIG__ATTRIBUTES);
@@ -755,8 +901,12 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
attrClassConfigEClass = createEClass(ATTR_CLASS_CONFIG);
createEReference(attrClassConfigEClass, ATTR_CLASS_CONFIG__MIN);
createEReference(attrClassConfigEClass, ATTR_CLASS_CONFIG__MAX);
+ createEReference(attrClassConfigEClass, ATTR_CLASS_CONFIG__ATTRIBUTES);
attrInstanceConfigEClass = createEClass(ATTR_INSTANCE_CONFIG);
+ createEAttribute(attrInstanceConfigEClass, ATTR_INSTANCE_CONFIG__DYN_CONFIG);
+ createEAttribute(attrInstanceConfigEClass, ATTR_INSTANCE_CONFIG__READ_ONLY);
+ createEReference(attrInstanceConfigEClass, ATTR_INSTANCE_CONFIG__ATTRIBUTES);
refPathEClass = createEClass(REF_PATH);
createEAttribute(refPathEClass, REF_PATH__REFS);
@@ -817,6 +967,7 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
// Set bounds for type parameters
// Add supertypes to classes
+ subSystemConfigEClass.getESuperTypes().add(this.getConfigElement());
actorClassConfigEClass.getESuperTypes().add(this.getConfigElement());
actorInstanceConfigEClass.getESuperTypes().add(this.getConfigElement());
protocolClassConfigEClass.getESuperTypes().add(this.getConfigElement());
@@ -839,8 +990,20 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
addEOperation(configModelEClass, this.getProtocolClassConfig(), "getProtocolClassConfigs", 0, -1, IS_UNIQUE, IS_ORDERED);
+ addEOperation(configModelEClass, this.getSubSystemConfig(), "getSubSystemConfigs", 0, -1, IS_UNIQUE, IS_ORDERED);
+
initEClass(configElementEClass, ConfigElement.class, "ConfigElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEClass(subSystemConfigEClass, SubSystemConfig.class, "SubSystemConfig", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getSubSystemConfig_SubSystem(), theRoomPackage.getSubSystemClass(), null, "subSystem", null, 0, 1, SubSystemConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getSubSystemConfig_DynConfig(), this.getDynamicConfig(), null, "dynConfig", null, 0, 1, SubSystemConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dynamicConfigEClass, DynamicConfig.class, "DynamicConfig", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDynamicConfig_FilePath(), ecorePackage.getEString(), "filePath", null, 0, 1, DynamicConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDynamicConfig_UserCode1(), ecorePackage.getEString(), "userCode1", null, 0, 1, DynamicConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDynamicConfig_UserCode2(), ecorePackage.getEString(), "userCode2", null, 0, 1, DynamicConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDynamicConfig_Polling(), ecorePackage.getEInt(), "polling", null, 0, 1, DynamicConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
initEClass(actorClassConfigEClass, ActorClassConfig.class, "ActorClassConfig", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getActorClassConfig_Actor(), theRoomPackage.getActorClass(), null, "actor", null, 0, 1, ActorClassConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getActorClassConfig_Attributes(), this.getAttrClassConfig(), null, "attributes", null, 0, -1, ActorClassConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -870,8 +1033,12 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
initEClass(attrClassConfigEClass, AttrClassConfig.class, "AttrClassConfig", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getAttrClassConfig_Min(), this.getNumberLiteral(), null, "min", null, 0, 1, AttrClassConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getAttrClassConfig_Max(), this.getNumberLiteral(), null, "max", null, 0, 1, AttrClassConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getAttrClassConfig_Attributes(), this.getAttrClassConfig(), null, "attributes", null, 0, -1, AttrClassConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(attrInstanceConfigEClass, AttrInstanceConfig.class, "AttrInstanceConfig", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getAttrInstanceConfig_DynConfig(), ecorePackage.getEBoolean(), "dynConfig", null, 0, 1, AttrInstanceConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getAttrInstanceConfig_ReadOnly(), ecorePackage.getEBoolean(), "readOnly", null, 0, 1, AttrInstanceConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getAttrInstanceConfig_Attributes(), this.getAttrInstanceConfig(), null, "attributes", null, 0, -1, AttrInstanceConfig.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(refPathEClass, RefPath.class, "RefPath", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getRefPath_Refs(), ecorePackage.getEString(), "refs", null, 0, -1, RefPath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -894,7 +1061,7 @@ public class ConfigPackageImpl extends EPackageImpl implements ConfigPackage
initEAttribute(getRealLiteral_Value(), ecorePackage.getEDouble(), "value", null, 0, 1, RealLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(intLiteralEClass, IntLiteral.class, "IntLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEAttribute(getIntLiteral_Value(), ecorePackage.getEInt(), "value", null, 0, 1, IntLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getIntLiteral_Value(), ecorePackage.getELong(), "value", null, 0, 1, IntLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(stringLiteralEClass, StringLiteral.class, "StringLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getStringLiteral_Value(), ecorePackage.getEString(), "value", null, 0, 1, StringLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/DynamicConfigImpl.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/DynamicConfigImpl.java
new file mode 100644
index 000000000..67430583d
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/DynamicConfigImpl.java
@@ -0,0 +1,345 @@
+/**
+ */
+package org.eclipse.etrice.core.config.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.etrice.core.config.ConfigPackage;
+import org.eclipse.etrice.core.config.DynamicConfig;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Dynamic Config</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.etrice.core.config.impl.DynamicConfigImpl#getFilePath <em>File Path</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.impl.DynamicConfigImpl#getUserCode1 <em>User Code1</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.impl.DynamicConfigImpl#getUserCode2 <em>User Code2</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.impl.DynamicConfigImpl#getPolling <em>Polling</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DynamicConfigImpl extends MinimalEObjectImpl.Container implements DynamicConfig
+{
+ /**
+ * The default value of the '{@link #getFilePath() <em>File Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFilePath()
+ * @generated
+ * @ordered
+ */
+ protected static final String FILE_PATH_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getFilePath() <em>File Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFilePath()
+ * @generated
+ * @ordered
+ */
+ protected String filePath = FILE_PATH_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getUserCode1() <em>User Code1</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUserCode1()
+ * @generated
+ * @ordered
+ */
+ protected static final String USER_CODE1_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getUserCode1() <em>User Code1</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUserCode1()
+ * @generated
+ * @ordered
+ */
+ protected String userCode1 = USER_CODE1_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getUserCode2() <em>User Code2</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUserCode2()
+ * @generated
+ * @ordered
+ */
+ protected static final String USER_CODE2_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getUserCode2() <em>User Code2</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUserCode2()
+ * @generated
+ * @ordered
+ */
+ protected String userCode2 = USER_CODE2_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPolling() <em>Polling</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolling()
+ * @generated
+ * @ordered
+ */
+ protected static final int POLLING_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getPolling() <em>Polling</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolling()
+ * @generated
+ * @ordered
+ */
+ protected int polling = POLLING_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DynamicConfigImpl()
+ {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass()
+ {
+ return ConfigPackage.Literals.DYNAMIC_CONFIG;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getFilePath()
+ {
+ return filePath;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFilePath(String newFilePath)
+ {
+ String oldFilePath = filePath;
+ filePath = newFilePath;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ConfigPackage.DYNAMIC_CONFIG__FILE_PATH, oldFilePath, filePath));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getUserCode1()
+ {
+ return userCode1;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setUserCode1(String newUserCode1)
+ {
+ String oldUserCode1 = userCode1;
+ userCode1 = newUserCode1;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ConfigPackage.DYNAMIC_CONFIG__USER_CODE1, oldUserCode1, userCode1));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getUserCode2()
+ {
+ return userCode2;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setUserCode2(String newUserCode2)
+ {
+ String oldUserCode2 = userCode2;
+ userCode2 = newUserCode2;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ConfigPackage.DYNAMIC_CONFIG__USER_CODE2, oldUserCode2, userCode2));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getPolling()
+ {
+ return polling;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPolling(int newPolling)
+ {
+ int oldPolling = polling;
+ polling = newPolling;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ConfigPackage.DYNAMIC_CONFIG__POLLING, oldPolling, polling));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.DYNAMIC_CONFIG__FILE_PATH:
+ return getFilePath();
+ case ConfigPackage.DYNAMIC_CONFIG__USER_CODE1:
+ return getUserCode1();
+ case ConfigPackage.DYNAMIC_CONFIG__USER_CODE2:
+ return getUserCode2();
+ case ConfigPackage.DYNAMIC_CONFIG__POLLING:
+ return getPolling();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.DYNAMIC_CONFIG__FILE_PATH:
+ setFilePath((String)newValue);
+ return;
+ case ConfigPackage.DYNAMIC_CONFIG__USER_CODE1:
+ setUserCode1((String)newValue);
+ return;
+ case ConfigPackage.DYNAMIC_CONFIG__USER_CODE2:
+ setUserCode2((String)newValue);
+ return;
+ case ConfigPackage.DYNAMIC_CONFIG__POLLING:
+ setPolling((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.DYNAMIC_CONFIG__FILE_PATH:
+ setFilePath(FILE_PATH_EDEFAULT);
+ return;
+ case ConfigPackage.DYNAMIC_CONFIG__USER_CODE1:
+ setUserCode1(USER_CODE1_EDEFAULT);
+ return;
+ case ConfigPackage.DYNAMIC_CONFIG__USER_CODE2:
+ setUserCode2(USER_CODE2_EDEFAULT);
+ return;
+ case ConfigPackage.DYNAMIC_CONFIG__POLLING:
+ setPolling(POLLING_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.DYNAMIC_CONFIG__FILE_PATH:
+ return FILE_PATH_EDEFAULT == null ? filePath != null : !FILE_PATH_EDEFAULT.equals(filePath);
+ case ConfigPackage.DYNAMIC_CONFIG__USER_CODE1:
+ return USER_CODE1_EDEFAULT == null ? userCode1 != null : !USER_CODE1_EDEFAULT.equals(userCode1);
+ case ConfigPackage.DYNAMIC_CONFIG__USER_CODE2:
+ return USER_CODE2_EDEFAULT == null ? userCode2 != null : !USER_CODE2_EDEFAULT.equals(userCode2);
+ case ConfigPackage.DYNAMIC_CONFIG__POLLING:
+ return polling != POLLING_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString()
+ {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (filePath: ");
+ result.append(filePath);
+ result.append(", userCode1: ");
+ result.append(userCode1);
+ result.append(", userCode2: ");
+ result.append(userCode2);
+ result.append(", polling: ");
+ result.append(polling);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DynamicConfigImpl
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/IntLiteralImpl.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/IntLiteralImpl.java
index 5f3084db1..a9cfc4ebf 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/IntLiteralImpl.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/IntLiteralImpl.java
@@ -34,7 +34,7 @@ public class IntLiteralImpl extends NumberLiteralImpl implements IntLiteral
* @generated
* @ordered
*/
- protected static final int VALUE_EDEFAULT = 0;
+ protected static final long VALUE_EDEFAULT = 0L;
/**
* The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
@@ -44,7 +44,7 @@ public class IntLiteralImpl extends NumberLiteralImpl implements IntLiteral
* @generated
* @ordered
*/
- protected int value = VALUE_EDEFAULT;
+ protected long value = VALUE_EDEFAULT;
/**
* <!-- begin-user-doc -->
@@ -72,7 +72,7 @@ public class IntLiteralImpl extends NumberLiteralImpl implements IntLiteral
* <!-- end-user-doc -->
* @generated
*/
- public int getValue()
+ public long getValue()
{
return value;
}
@@ -82,9 +82,9 @@ public class IntLiteralImpl extends NumberLiteralImpl implements IntLiteral
* <!-- end-user-doc -->
* @generated
*/
- public void setValue(int newValue)
+ public void setValue(long newValue)
{
- int oldValue = value;
+ long oldValue = value;
value = newValue;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, ConfigPackage.INT_LITERAL__VALUE, oldValue, value));
@@ -117,7 +117,7 @@ public class IntLiteralImpl extends NumberLiteralImpl implements IntLiteral
switch (featureID)
{
case ConfigPackage.INT_LITERAL__VALUE:
- setValue((Integer)newValue);
+ setValue((Long)newValue);
return;
}
super.eSet(featureID, newValue);
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/SubSystemConfigImpl.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/SubSystemConfigImpl.java
new file mode 100644
index 000000000..3c9df8df9
--- /dev/null
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/impl/SubSystemConfigImpl.java
@@ -0,0 +1,260 @@
+/**
+ */
+package org.eclipse.etrice.core.config.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.etrice.core.config.ConfigPackage;
+import org.eclipse.etrice.core.config.DynamicConfig;
+import org.eclipse.etrice.core.config.SubSystemConfig;
+
+import org.eclipse.etrice.core.room.SubSystemClass;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Sub System Config</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.etrice.core.config.impl.SubSystemConfigImpl#getSubSystem <em>Sub System</em>}</li>
+ * <li>{@link org.eclipse.etrice.core.config.impl.SubSystemConfigImpl#getDynConfig <em>Dyn Config</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SubSystemConfigImpl extends ConfigElementImpl implements SubSystemConfig
+{
+ /**
+ * The cached value of the '{@link #getSubSystem() <em>Sub System</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubSystem()
+ * @generated
+ * @ordered
+ */
+ protected SubSystemClass subSystem;
+
+ /**
+ * The cached value of the '{@link #getDynConfig() <em>Dyn Config</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDynConfig()
+ * @generated
+ * @ordered
+ */
+ protected DynamicConfig dynConfig;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SubSystemConfigImpl()
+ {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass()
+ {
+ return ConfigPackage.Literals.SUB_SYSTEM_CONFIG;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SubSystemClass getSubSystem()
+ {
+ if (subSystem != null && subSystem.eIsProxy())
+ {
+ InternalEObject oldSubSystem = (InternalEObject)subSystem;
+ subSystem = (SubSystemClass)eResolveProxy(oldSubSystem);
+ if (subSystem != oldSubSystem)
+ {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ConfigPackage.SUB_SYSTEM_CONFIG__SUB_SYSTEM, oldSubSystem, subSystem));
+ }
+ }
+ return subSystem;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SubSystemClass basicGetSubSystem()
+ {
+ return subSystem;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubSystem(SubSystemClass newSubSystem)
+ {
+ SubSystemClass oldSubSystem = subSystem;
+ subSystem = newSubSystem;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ConfigPackage.SUB_SYSTEM_CONFIG__SUB_SYSTEM, oldSubSystem, subSystem));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DynamicConfig getDynConfig()
+ {
+ return dynConfig;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetDynConfig(DynamicConfig newDynConfig, NotificationChain msgs)
+ {
+ DynamicConfig oldDynConfig = dynConfig;
+ dynConfig = newDynConfig;
+ if (eNotificationRequired())
+ {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ConfigPackage.SUB_SYSTEM_CONFIG__DYN_CONFIG, oldDynConfig, newDynConfig);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDynConfig(DynamicConfig newDynConfig)
+ {
+ if (newDynConfig != dynConfig)
+ {
+ NotificationChain msgs = null;
+ if (dynConfig != null)
+ msgs = ((InternalEObject)dynConfig).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ConfigPackage.SUB_SYSTEM_CONFIG__DYN_CONFIG, null, msgs);
+ if (newDynConfig != null)
+ msgs = ((InternalEObject)newDynConfig).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ConfigPackage.SUB_SYSTEM_CONFIG__DYN_CONFIG, null, msgs);
+ msgs = basicSetDynConfig(newDynConfig, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ConfigPackage.SUB_SYSTEM_CONFIG__DYN_CONFIG, newDynConfig, newDynConfig));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.SUB_SYSTEM_CONFIG__DYN_CONFIG:
+ return basicSetDynConfig(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.SUB_SYSTEM_CONFIG__SUB_SYSTEM:
+ if (resolve) return getSubSystem();
+ return basicGetSubSystem();
+ case ConfigPackage.SUB_SYSTEM_CONFIG__DYN_CONFIG:
+ return getDynConfig();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.SUB_SYSTEM_CONFIG__SUB_SYSTEM:
+ setSubSystem((SubSystemClass)newValue);
+ return;
+ case ConfigPackage.SUB_SYSTEM_CONFIG__DYN_CONFIG:
+ setDynConfig((DynamicConfig)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.SUB_SYSTEM_CONFIG__SUB_SYSTEM:
+ setSubSystem((SubSystemClass)null);
+ return;
+ case ConfigPackage.SUB_SYSTEM_CONFIG__DYN_CONFIG:
+ setDynConfig((DynamicConfig)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID)
+ {
+ switch (featureID)
+ {
+ case ConfigPackage.SUB_SYSTEM_CONFIG__SUB_SYSTEM:
+ return subSystem != null;
+ case ConfigPackage.SUB_SYSTEM_CONFIG__DYN_CONFIG:
+ return dynConfig != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //SubSystemConfigImpl
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigAdapterFactory.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigAdapterFactory.java
index ff95dcf08..2049a1230 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigAdapterFactory.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigAdapterFactory.java
@@ -85,6 +85,16 @@ public class ConfigAdapterFactory extends AdapterFactoryImpl
return createConfigElementAdapter();
}
@Override
+ public Adapter caseSubSystemConfig(SubSystemConfig object)
+ {
+ return createSubSystemConfigAdapter();
+ }
+ @Override
+ public Adapter caseDynamicConfig(DynamicConfig object)
+ {
+ return createDynamicConfigAdapter();
+ }
+ @Override
public Adapter caseActorClassConfig(ActorClassConfig object)
{
return createActorClassConfigAdapter();
@@ -222,6 +232,36 @@ public class ConfigAdapterFactory extends AdapterFactoryImpl
}
/**
+ * Creates a new adapter for an object of class '{@link org.eclipse.etrice.core.config.SubSystemConfig <em>Sub System Config</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.etrice.core.config.SubSystemConfig
+ * @generated
+ */
+ public Adapter createSubSystemConfigAdapter()
+ {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.etrice.core.config.DynamicConfig <em>Dynamic Config</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.etrice.core.config.DynamicConfig
+ * @generated
+ */
+ public Adapter createDynamicConfigAdapter()
+ {
+ return null;
+ }
+
+ /**
* Creates a new adapter for an object of class '{@link org.eclipse.etrice.core.config.ActorClassConfig <em>Actor Class Config</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigSwitch.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigSwitch.java
index ab7d81a01..e5bfbbd8f 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigSwitch.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/config/util/ConfigSwitch.java
@@ -86,6 +86,21 @@ public class ConfigSwitch<T> extends Switch<T>
if (result == null) result = defaultCase(theEObject);
return result;
}
+ case ConfigPackage.SUB_SYSTEM_CONFIG:
+ {
+ SubSystemConfig subSystemConfig = (SubSystemConfig)theEObject;
+ T result = caseSubSystemConfig(subSystemConfig);
+ if (result == null) result = caseConfigElement(subSystemConfig);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ConfigPackage.DYNAMIC_CONFIG:
+ {
+ DynamicConfig dynamicConfig = (DynamicConfig)theEObject;
+ T result = caseDynamicConfig(dynamicConfig);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
case ConfigPackage.ACTOR_CLASS_CONFIG:
{
ActorClassConfig actorClassConfig = (ActorClassConfig)theEObject;
@@ -254,6 +269,38 @@ public class ConfigSwitch<T> extends Switch<T>
}
/**
+ * Returns the result of interpreting the object as an instance of '<em>Sub System Config</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Sub System Config</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSubSystemConfig(SubSystemConfig object)
+ {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Dynamic Config</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Dynamic Config</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDynamicConfig(DynamicConfig object)
+ {
+ return null;
+ }
+
+ /**
* Returns the result of interpreting the object as an instance of '<em>Actor Class Config</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g
index 5183c5268..a9e7e19bf 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g
@@ -136,33 +136,270 @@ ruleConfigElement returns [EObject current=null]
@after { leaveRule(); }:
(
{
- newCompositeNode(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_0());
+ newCompositeNode(grammarAccess.getConfigElementAccess().getSubSystemConfigParserRuleCall_0());
}
- this_ActorClassConfig_0=ruleActorClassConfig
+ this_SubSystemConfig_0=ruleSubSystemConfig
{
- $current = $this_ActorClassConfig_0.current;
+ $current = $this_SubSystemConfig_0.current;
afterParserOrEnumRuleCall();
}
|
{
- newCompositeNode(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_1());
+ newCompositeNode(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_1());
}
- this_ActorInstanceConfig_1=ruleActorInstanceConfig
+ this_ActorClassConfig_1=ruleActorClassConfig
{
- $current = $this_ActorInstanceConfig_1.current;
+ $current = $this_ActorClassConfig_1.current;
afterParserOrEnumRuleCall();
}
|
{
- newCompositeNode(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_2());
+ newCompositeNode(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_2());
}
- this_ProtocolClassConfig_2=ruleProtocolClassConfig
+ this_ActorInstanceConfig_2=ruleActorInstanceConfig
{
- $current = $this_ProtocolClassConfig_2.current;
+ $current = $this_ActorInstanceConfig_2.current;
afterParserOrEnumRuleCall();
}
+
+ |
+ {
+ newCompositeNode(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_3());
+ }
+ this_ProtocolClassConfig_3=ruleProtocolClassConfig
+ {
+ $current = $this_ProtocolClassConfig_3.current;
+ afterParserOrEnumRuleCall();
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleSubSystemConfig
+entryRuleSubSystemConfig returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getSubSystemConfigRule()); }
+ iv_ruleSubSystemConfig=ruleSubSystemConfig
+ { $current=$iv_ruleSubSystemConfig.current; }
+ EOF
+;
+
+// Rule SubSystemConfig
+ruleSubSystemConfig returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='SubSystemConfig'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getSubSystemConfigAccess().getSubSystemConfigKeyword_0());
+ }
+(
+(
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getSubSystemConfigRule());
+ }
+ }
+ otherlv_1=RULE_ID
+ {
+ newLeafNode(otherlv_1, grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassCrossReference_1_0());
+ }
+
+)
+) otherlv_2='{'
+ {
+ newLeafNode(otherlv_2, grammarAccess.getSubSystemConfigAccess().getLeftCurlyBracketKeyword_2());
+ }
+(
+(
+ {
+ newCompositeNode(grammarAccess.getSubSystemConfigAccess().getDynConfigDynamicConfigParserRuleCall_3_0());
+ }
+ lv_dynConfig_3_0=ruleDynamicConfig {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getSubSystemConfigRule());
+ }
+ set(
+ $current,
+ "dynConfig",
+ lv_dynConfig_3_0,
+ "DynamicConfig");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+) otherlv_4='}'
+ {
+ newLeafNode(otherlv_4, grammarAccess.getSubSystemConfigAccess().getRightCurlyBracketKeyword_4());
+ }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleDynamicConfig
+entryRuleDynamicConfig returns [EObject current=null]
+ :
+ { newCompositeNode(grammarAccess.getDynamicConfigRule()); }
+ iv_ruleDynamicConfig=ruleDynamicConfig
+ { $current=$iv_ruleDynamicConfig.current; }
+ EOF
+;
+
+// Rule DynamicConfig
+ruleDynamicConfig returns [EObject current=null]
+ @init { enterRule();
+ }
+ @after { leaveRule(); }:
+( otherlv_0='dynamic configuration'
+ {
+ newLeafNode(otherlv_0, grammarAccess.getDynamicConfigAccess().getDynamicConfigurationKeyword_0());
+ }
+ otherlv_1='{'
+ {
+ newLeafNode(otherlv_1, grammarAccess.getDynamicConfigAccess().getLeftCurlyBracketKeyword_1());
+ }
+(
+
+(
+ {
+ getUnorderedGroupHelper().enter(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+ }
+ (
+ (
+
+ (
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0)}?=>(
+ {
+ getUnorderedGroupHelper().select(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0);
+ }
+ ({true}?=>(( otherlv_3='file path'
+ {
+ newLeafNode(otherlv_3, grammarAccess.getDynamicConfigAccess().getFilePathKeyword_2_0_0_0());
+ }
+(
+(
+ lv_filePath_4_0=RULE_STRING
+ {
+ newLeafNode(lv_filePath_4_0, grammarAccess.getDynamicConfigAccess().getFilePathSTRINGTerminalRuleCall_2_0_0_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getDynamicConfigRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "filePath",
+ lv_filePath_4_0,
+ "STRING");
+ }
+
+)
+))
+ |(( otherlv_5='user import'
+ {
+ newLeafNode(otherlv_5, grammarAccess.getDynamicConfigAccess().getUserImportKeyword_2_0_1_0_0());
+ }
+(
+(
+ lv_userCode1_6_0=RULE_STRING
+ {
+ newLeafNode(lv_userCode1_6_0, grammarAccess.getDynamicConfigAccess().getUserCode1STRINGTerminalRuleCall_2_0_1_0_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getDynamicConfigRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "userCode1",
+ lv_userCode1_6_0,
+ "STRING");
+ }
+
+)
+))( otherlv_7='user constructor'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getDynamicConfigAccess().getUserConstructorKeyword_2_0_1_1_0());
+ }
+(
+(
+ lv_userCode2_8_0=RULE_STRING
+ {
+ newLeafNode(lv_userCode2_8_0, grammarAccess.getDynamicConfigAccess().getUserCode2STRINGTerminalRuleCall_2_0_1_1_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getDynamicConfigRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "userCode2",
+ lv_userCode2_8_0,
+ "STRING");
+ }
+
+)
+)))))
+ {
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+ }
+ )
+ ) |
+
+ (
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1)}?=>(
+ {
+ getUnorderedGroupHelper().select(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1);
+ }
+ ({true}?=>( otherlv_9='polling timer [ms]'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getDynamicConfigAccess().getPollingTimerMsKeyword_2_1_0());
+ }
+(
+(
+ lv_polling_10_0=RULE_INT
+ {
+ newLeafNode(lv_polling_10_0, grammarAccess.getDynamicConfigAccess().getPollingINTTerminalRuleCall_2_1_1_0());
+ }
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getDynamicConfigRule());
+ }
+ setWithLastConsumed(
+ $current,
+ "polling",
+ lv_polling_10_0,
+ "INT");
+ }
+
+)
+)))
+ {
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+ }
+ )
+ )
+
+ )+
+ {getUnorderedGroupHelper().canLeave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2())}?
+ )
+)
+ {
+ getUnorderedGroupHelper().leave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+ }
+
+) otherlv_11='}'
+ {
+ newLeafNode(otherlv_11, grammarAccess.getDynamicConfigAccess().getRightCurlyBracketKeyword_3());
+ }
)
;
@@ -296,44 +533,84 @@ ruleActorInstanceConfig returns [EObject current=null]
newLeafNode(otherlv_4, grammarAccess.getActorInstanceConfigAccess().getLeftCurlyBracketKeyword_4());
}
(
+
+(
+ {
+ getUnorderedGroupHelper().enter(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+ }
+ (
+ (
+
+ (
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0)}?=>(
+ {
+ getUnorderedGroupHelper().select(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0);
+ }
+ ({true}?=>(
(
{
- newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0());
+ newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0_0());
}
- lv_attributes_5_0=ruleAttrInstanceConfig {
+ lv_attributes_6_0=ruleAttrInstanceConfig {
if ($current==null) {
$current = createModelElementForParent(grammarAccess.getActorInstanceConfigRule());
}
add(
$current,
"attributes",
- lv_attributes_5_0,
+ lv_attributes_6_0,
"AttrInstanceConfig");
afterParserOrEnumRuleCall();
}
)
-)*(
+))+
+ {
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+ }
+ )
+ ) |
+
+ (
+ {getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1)}?=>(
+ {
+ getUnorderedGroupHelper().select(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1);
+ }
+ ({true}?=>(
(
{
- newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_6_0());
+ newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_5_1_0());
}
- lv_ports_6_0=rulePortInstanceConfig {
+ lv_ports_7_0=rulePortInstanceConfig {
if ($current==null) {
$current = createModelElementForParent(grammarAccess.getActorInstanceConfigRule());
}
add(
$current,
"ports",
- lv_ports_6_0,
+ lv_ports_7_0,
"PortInstanceConfig");
afterParserOrEnumRuleCall();
}
)
-)* otherlv_7='}'
+))+
+ {
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+ }
+ )
+ )
+
+ )*
+ )
+)
+ {
+ getUnorderedGroupHelper().leave(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+ }
+
+) otherlv_8='}'
{
- newLeafNode(otherlv_7, grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_7());
+ newLeafNode(otherlv_8, grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_6());
}
)
;
@@ -654,99 +931,77 @@ ruleAttrClassConfig returns [EObject current=null]
{
newLeafNode(otherlv_4, grammarAccess.getAttrClassConfigAccess().getLeftCurlyBracketKeyword_3_0());
}
-(
-
-(
- {
- getUnorderedGroupHelper().enter(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
- }
- (
- (
-
- (
- {getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0)}?=>(
- {
- getUnorderedGroupHelper().select(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0);
- }
- ({true}?=>( otherlv_6='min'
+(( otherlv_5='min'
{
- newLeafNode(otherlv_6, grammarAccess.getAttrClassConfigAccess().getMinKeyword_3_1_0_0());
+ newLeafNode(otherlv_5, grammarAccess.getAttrClassConfigAccess().getMinKeyword_3_1_0_0());
}
- otherlv_7='='
+ otherlv_6='='
{
- newLeafNode(otherlv_7, grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_0_1());
+ newLeafNode(otherlv_6, grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_0_1());
}
(
(
{
newCompositeNode(grammarAccess.getAttrClassConfigAccess().getMinNumberLiteralParserRuleCall_3_1_0_2_0());
}
- lv_min_8_0=ruleNumberLiteral {
+ lv_min_7_0=ruleNumberLiteral {
if ($current==null) {
$current = createModelElementForParent(grammarAccess.getAttrClassConfigRule());
}
set(
$current,
"min",
- lv_min_8_0,
+ lv_min_7_0,
"NumberLiteral");
afterParserOrEnumRuleCall();
}
)
-)))
- {
- getUnorderedGroupHelper().returnFromSelection(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
- }
- )
- ) |
-
- (
- {getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1)}?=>(
- {
- getUnorderedGroupHelper().select(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1);
- }
- ({true}?=>( otherlv_9='max'
+))?( otherlv_8='max'
{
- newLeafNode(otherlv_9, grammarAccess.getAttrClassConfigAccess().getMaxKeyword_3_1_1_0());
+ newLeafNode(otherlv_8, grammarAccess.getAttrClassConfigAccess().getMaxKeyword_3_1_1_0());
}
- otherlv_10='='
+ otherlv_9='='
{
- newLeafNode(otherlv_10, grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_1_1());
+ newLeafNode(otherlv_9, grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_1_1());
}
(
(
{
newCompositeNode(grammarAccess.getAttrClassConfigAccess().getMaxNumberLiteralParserRuleCall_3_1_1_2_0());
}
- lv_max_11_0=ruleNumberLiteral {
+ lv_max_10_0=ruleNumberLiteral {
if ($current==null) {
$current = createModelElementForParent(grammarAccess.getAttrClassConfigRule());
}
set(
$current,
"max",
- lv_max_11_0,
+ lv_max_10_0,
"NumberLiteral");
afterParserOrEnumRuleCall();
}
)
-)))
- {
- getUnorderedGroupHelper().returnFromSelection(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
- }
- )
- )
+))?(
+(
+ {
+ newCompositeNode(grammarAccess.getAttrClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_1_2_0());
+ }
+ lv_attributes_11_0=ruleAttrClassConfig {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getAttrClassConfigRule());
+ }
+ add(
+ $current,
+ "attributes",
+ lv_attributes_11_0,
+ "AttrClassConfig");
+ afterParserOrEnumRuleCall();
+ }
- )*
- )
)
- {
- getUnorderedGroupHelper().leave(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
- }
-
-) otherlv_12='}'
+)*) otherlv_12='}'
{
newLeafNode(otherlv_12, grammarAccess.getAttrClassConfigAccess().getRightCurlyBracketKeyword_3_2());
}
@@ -810,7 +1065,68 @@ ruleAttrInstanceConfig returns [EObject current=null]
}
)
-))?)
+))?( otherlv_4='{'
+ {
+ newLeafNode(otherlv_4, grammarAccess.getAttrInstanceConfigAccess().getLeftCurlyBracketKeyword_3_0());
+ }
+(((
+(
+ lv_dynConfig_5_0= 'dynamic configuration'
+ {
+ newLeafNode(lv_dynConfig_5_0, grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0());
+ }
+
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getAttrInstanceConfigRule());
+ }
+ setWithLastConsumed($current, "dynConfig", true, "dynamic configuration");
+ }
+
+)
+)((
+(
+ lv_readOnly_6_0= 'read'
+ {
+ newLeafNode(lv_readOnly_6_0, grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0());
+ }
+
+ {
+ if ($current==null) {
+ $current = createModelElement(grammarAccess.getAttrInstanceConfigRule());
+ }
+ setWithLastConsumed($current, "readOnly", true, "read");
+ }
+
+)
+)
+ | otherlv_7='write'
+ {
+ newLeafNode(otherlv_7, grammarAccess.getAttrInstanceConfigAccess().getWriteKeyword_3_1_0_1_1());
+ }
+))?(
+(
+ {
+ newCompositeNode(grammarAccess.getAttrInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_1_1_0());
+ }
+ lv_attributes_8_0=ruleAttrInstanceConfig {
+ if ($current==null) {
+ $current = createModelElementForParent(grammarAccess.getAttrInstanceConfigRule());
+ }
+ add(
+ $current,
+ "attributes",
+ lv_attributes_8_0,
+ "AttrInstanceConfig");
+ afterParserOrEnumRuleCall();
+ }
+
+)
+)*) otherlv_9='}'
+ {
+ newLeafNode(otherlv_9, grammarAccess.getAttrInstanceConfigAccess().getRightCurlyBracketKeyword_3_2());
+ }
+)?)
;
@@ -1793,32 +2109,12 @@ ruleDecimalExp returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToke
{
newLeafNode(this_INT_4, grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3());
}
- this_ID_5=RULE_ID {
- $current.merge(this_ID_5);
- }
-
- {
- newLeafNode(this_ID_5, grammarAccess.getDecimalExpAccess().getIDTerminalRuleCall_4());
- }
-(
- kw='+'
- {
- $current.merge(kw);
- newLeafNode(kw, grammarAccess.getDecimalExpAccess().getPlusSignKeyword_5_0());
- }
-
- |
- kw='-'
- {
- $current.merge(kw);
- newLeafNode(kw, grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_5_1());
- }
-)? this_INT_8=RULE_INT {
- $current.merge(this_INT_8);
+ this_EXP_5=RULE_EXP {
+ $current.merge(this_EXP_5);
}
{
- newLeafNode(this_INT_8, grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_6());
+ newLeafNode(this_EXP_5, grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4());
}
)
;
@@ -1830,6 +2126,8 @@ finally {
+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')*;
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.tokens b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.tokens
index aeb69ec85..23c5fb220 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.tokens
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.tokens
@@ -1,4 +1,5 @@
RULE_ID=4
+RULE_EXP=8
T__29=29
T__28=28
T__27=27
@@ -7,50 +8,66 @@ T__25=25
T__24=24
T__23=23
T__22=22
-RULE_ANY_OTHER=11
+RULE_ANY_OTHER=12
T__21=21
T__20=20
-RULE_SL_COMMENT=9
-RULE_ML_COMMENT=8
-T__30=30
T__19=19
-T__31=31
RULE_HEX=7
-RULE_STRING=5
-T__32=32
-T__33=33
T__16=16
-T__34=34
T__15=15
-T__35=35
T__18=18
T__17=17
-T__12=12
T__14=14
T__13=13
RULE_INT=6
-RULE_WS=10
-'Attr'=22
-'true'=33
-'}'=14
-'/'=16
-'model'=28
-'ActorClassConfig'=12
-'{'=13
-'.*'=29
-'conjugate'=19
-'ActorInstanceConfig'=15
-'false'=32
-'='=23
-'Port'=20
-'-'=35
-'InterfaceItem'=21
-'+'=34
-'min'=24
-','=31
-'.'=30
-'ProtocolClassConfig'=17
-'regular'=18
-'max'=25
-'from'=27
-'import'=26
+T__42=42
+T__43=43
+T__40=40
+T__41=41
+T__44=44
+RULE_SL_COMMENT=10
+RULE_ML_COMMENT=9
+T__30=30
+T__31=31
+T__32=32
+RULE_STRING=5
+T__33=33
+T__34=34
+T__35=35
+T__36=36
+T__37=37
+T__38=38
+T__39=39
+RULE_WS=11
+'Attr'=29
+'/'=23
+'model'=37
+'user import'=18
+'user constructor'=19
+'.*'=38
+'conjugate'=26
+'='=30
+'Port'=27
+'InterfaceItem'=28
+'+'=43
+'.'=39
+'ProtocolClassConfig'=24
+'regular'=25
+'max'=32
+'import'=35
+'true'=42
+'}'=15
+'ActorClassConfig'=21
+'SubSystemConfig'=13
+'polling timer [ms]'=20
+'dynamic configuration'=16
+'{'=14
+'write'=34
+'ActorInstanceConfig'=22
+'false'=41
+'-'=44
+'min'=31
+','=40
+'file path'=17
+'read'=33
+'from'=36
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigLexer.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigLexer.java
index bede177eb..76bae0166 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigLexer.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigLexer.java
@@ -13,6 +13,7 @@ import java.util.ArrayList;
@SuppressWarnings("all")
public class InternalConfigLexer extends Lexer {
public static final int RULE_ID=4;
+ public static final int RULE_EXP=8;
public static final int T__29=29;
public static final int T__28=28;
public static final int T__27=27;
@@ -21,30 +22,38 @@ public class InternalConfigLexer extends Lexer {
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=11;
public static final int T__21=21;
+ public static final int RULE_ANY_OTHER=12;
public static final int T__20=20;
public static final int EOF=-1;
- public static final int RULE_SL_COMMENT=9;
- public static final int RULE_ML_COMMENT=8;
- 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 T__32=32;
- public static final int RULE_STRING=5;
public static final int RULE_HEX=7;
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__35=35;
public static final int T__17=17;
- public static final int T__12=12;
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=10;
+ public static final int T__42=42;
+ public static final int T__43=43;
+ public static final int T__40=40;
+ public static final int T__41=41;
+ public static final int T__44=44;
+ public static final int RULE_SL_COMMENT=10;
+ public static final int RULE_ML_COMMENT=9;
+ 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_STRING=5;
+ public static final int T__33=33;
+ public static final int T__34=34;
+ public static final int T__35=35;
+ public static final int T__36=36;
+ public static final int T__37=37;
+ public static final int T__38=38;
+ public static final int T__39=39;
+ public static final int RULE_WS=11;
// delegates
// delegators
@@ -59,36 +68,16 @@ public class InternalConfigLexer extends Lexer {
}
public String getGrammarFileName() { return "../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g"; }
- // $ANTLR start "T__12"
- public final void mT__12() throws RecognitionException {
- try {
- int _type = T__12;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:11:7: ( 'ActorClassConfig' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:11:9: 'ActorClassConfig'
- {
- match("ActorClassConfig");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__12"
-
// $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.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:12:7: ( '{' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:12:9: '{'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:11:7: ( 'SubSystemConfig' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:11:9: 'SubSystemConfig'
{
- match('{');
+ match("SubSystemConfig");
+
}
@@ -105,10 +94,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__14;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:13:7: ( '}' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:13:9: '}'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:12:7: ( '{' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:12:9: '{'
{
- match('}');
+ match('{');
}
@@ -125,11 +114,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__15;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:14:7: ( 'ActorInstanceConfig' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:14:9: 'ActorInstanceConfig'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:13:7: ( '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:13:9: '}'
{
- match("ActorInstanceConfig");
-
+ match('}');
}
@@ -146,10 +134,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__16;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:15:7: ( '/' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:15:9: '/'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:14:7: ( 'dynamic configuration' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:14:9: 'dynamic configuration'
{
- match('/');
+ match("dynamic configuration");
+
}
@@ -166,10 +155,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__17;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:16:7: ( 'ProtocolClassConfig' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:16:9: 'ProtocolClassConfig'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:15:7: ( 'file path' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:15:9: 'file path'
{
- match("ProtocolClassConfig");
+ match("file path");
}
@@ -187,10 +176,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__18;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:17:7: ( 'regular' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:17:9: 'regular'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:16:7: ( 'user import' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:16:9: 'user import'
{
- match("regular");
+ match("user import");
}
@@ -208,10 +197,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__19;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:18:7: ( 'conjugate' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:18:9: 'conjugate'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:17:7: ( 'user constructor' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:17:9: 'user constructor'
{
- match("conjugate");
+ match("user constructor");
}
@@ -229,10 +218,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__20;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:19:7: ( 'Port' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:19:9: 'Port'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:18:7: ( 'polling timer [ms]' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:18:9: 'polling timer [ms]'
{
- match("Port");
+ match("polling timer [ms]");
}
@@ -250,10 +239,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__21;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:20:7: ( 'InterfaceItem' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:20:9: 'InterfaceItem'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:19:7: ( 'ActorClassConfig' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:19:9: 'ActorClassConfig'
{
- match("InterfaceItem");
+ match("ActorClassConfig");
}
@@ -271,10 +260,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__22;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:21:7: ( 'Attr' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:21:9: 'Attr'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:20:7: ( 'ActorInstanceConfig' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:20:9: 'ActorInstanceConfig'
{
- match("Attr");
+ match("ActorInstanceConfig");
}
@@ -292,10 +281,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__23;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:22:7: ( '=' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:22:9: '='
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:21:7: ( '/' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:21:9: '/'
{
- match('=');
+ match('/');
}
@@ -312,10 +301,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__24;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:23:7: ( 'min' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:23:9: 'min'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:22:7: ( 'ProtocolClassConfig' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:22:9: 'ProtocolClassConfig'
{
- match("min");
+ match("ProtocolClassConfig");
}
@@ -333,10 +322,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__25;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:24:7: ( 'max' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:24:9: 'max'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:23:7: ( 'regular' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:23:9: 'regular'
{
- match("max");
+ match("regular");
}
@@ -354,10 +343,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__26;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:25:7: ( 'import' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:25:9: 'import'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:24:7: ( 'conjugate' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:24:9: 'conjugate'
{
- match("import");
+ match("conjugate");
}
@@ -375,10 +364,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__27;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:26:7: ( 'from' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:26:9: 'from'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:25:7: ( 'Port' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:25:9: 'Port'
{
- match("from");
+ match("Port");
}
@@ -396,10 +385,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__28;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:27:7: ( 'model' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:27:9: 'model'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:26:7: ( 'InterfaceItem' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:26:9: 'InterfaceItem'
{
- match("model");
+ match("InterfaceItem");
}
@@ -417,10 +406,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__29;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:28:7: ( '.*' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:28:9: '.*'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:27:7: ( 'Attr' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:27:9: 'Attr'
{
- match(".*");
+ match("Attr");
}
@@ -438,10 +427,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__30;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:29:7: ( '.' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:29:9: '.'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:28:7: ( '=' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:28:9: '='
{
- match('.');
+ match('=');
}
@@ -458,10 +447,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__31;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:30:7: ( ',' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:30:9: ','
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:29:7: ( 'min' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:29:9: 'min'
{
- match(',');
+ match("min");
+
}
@@ -478,10 +468,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__32;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:31:7: ( 'false' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:31:9: 'false'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:30:7: ( 'max' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:30:9: 'max'
{
- match("false");
+ match("max");
}
@@ -499,10 +489,10 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__33;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:32:7: ( 'true' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:32:9: 'true'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:31:7: ( 'read' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:31:9: 'read'
{
- match("true");
+ match("read");
}
@@ -520,10 +510,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__34;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:33:7: ( '+' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:33:9: '+'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:32:7: ( 'write' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:32:9: 'write'
{
- match('+');
+ match("write");
+
}
@@ -540,10 +531,11 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = T__35;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:34:7: ( '-' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:34:9: '-'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:33:7: ( 'import' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:33:9: 'import'
{
- match('-');
+ match("import");
+
}
@@ -555,43 +547,312 @@ public class InternalConfigLexer extends Lexer {
}
// $ANTLR end "T__35"
+ // $ANTLR start "T__36"
+ public final void mT__36() throws RecognitionException {
+ try {
+ int _type = T__36;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:34:7: ( 'from' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:34:9: 'from'
+ {
+ match("from");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__36"
+
+ // $ANTLR start "T__37"
+ public final void mT__37() throws RecognitionException {
+ try {
+ int _type = T__37;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:35:7: ( 'model' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:35:9: 'model'
+ {
+ match("model");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__37"
+
+ // $ANTLR start "T__38"
+ public final void mT__38() throws RecognitionException {
+ try {
+ int _type = T__38;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:36:7: ( '.*' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:36:9: '.*'
+ {
+ match(".*");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__38"
+
+ // $ANTLR start "T__39"
+ public final void mT__39() throws RecognitionException {
+ try {
+ int _type = T__39;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:37:7: ( '.' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:37:9: '.'
+ {
+ match('.');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__39"
+
+ // $ANTLR start "T__40"
+ public final void mT__40() throws RecognitionException {
+ try {
+ int _type = T__40;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:38:7: ( ',' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:38:9: ','
+ {
+ match(',');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__40"
+
+ // $ANTLR start "T__41"
+ public final void mT__41() throws RecognitionException {
+ try {
+ int _type = T__41;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:39:7: ( 'false' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:39:9: 'false'
+ {
+ match("false");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__41"
+
+ // $ANTLR start "T__42"
+ public final void mT__42() throws RecognitionException {
+ try {
+ int _type = T__42;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:40:7: ( 'true' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:40:9: 'true'
+ {
+ match("true");
+
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__42"
+
+ // $ANTLR start "T__43"
+ public final void mT__43() throws RecognitionException {
+ try {
+ int _type = T__43;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:41:7: ( '+' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:41:9: '+'
+ {
+ match('+');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__43"
+
+ // $ANTLR start "T__44"
+ public final void mT__44() throws RecognitionException {
+ try {
+ int _type = T__44;
+ int _channel = DEFAULT_TOKEN_CHANNEL;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:42:7: ( '-' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:42:9: '-'
+ {
+ match('-');
+
+ }
+
+ state.type = _type;
+ state.channel = _channel;
+ }
+ finally {
+ }
+ }
+ // $ANTLR end "T__44"
+
+ // $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.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2129:10: ( ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+ )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2129: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.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2129: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.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.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.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2129: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.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2129: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.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1833:10: ( ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+ )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1833:12: ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2131:10: ( ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+ )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2131:12: ( '0x' | '0X' ) ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1833:12: ( '0x' | '0X' )
- int alt1=2;
- int LA1_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2131:12: ( '0x' | '0X' )
+ int alt3=2;
+ int LA3_0 = input.LA(1);
- if ( (LA1_0=='0') ) {
- int LA1_1 = input.LA(2);
+ if ( (LA3_0=='0') ) {
+ int LA3_1 = input.LA(2);
- if ( (LA1_1=='x') ) {
- alt1=1;
+ if ( (LA3_1=='x') ) {
+ alt3=1;
}
- else if ( (LA1_1=='X') ) {
- alt1=2;
+ else if ( (LA3_1=='X') ) {
+ alt3=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 1, 1, input);
+ new NoViableAltException("", 3, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 1, 0, input);
+ new NoViableAltException("", 3, 0, input);
throw nvae;
}
- switch (alt1) {
+ switch (alt3) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1833:13: '0x'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2131:13: '0x'
{
match("0x");
@@ -599,7 +860,7 @@ public class InternalConfigLexer extends Lexer {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1833:18: '0X'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2131:18: '0X'
{
match("0X");
@@ -609,19 +870,19 @@ public class InternalConfigLexer extends Lexer {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1833:24: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
- int cnt2=0;
- loop2:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2131:24: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )+
+ int cnt4=0;
+ loop4:
do {
- int alt2=2;
- int LA2_0 = input.LA(1);
+ int alt4=2;
+ int LA4_0 = input.LA(1);
- if ( ((LA2_0>='0' && LA2_0<='9')||(LA2_0>='A' && LA2_0<='F')||(LA2_0>='a' && LA2_0<='f')) ) {
- alt2=1;
+ if ( ((LA4_0>='0' && LA4_0<='9')||(LA4_0>='A' && LA4_0<='F')||(LA4_0>='a' && LA4_0<='f')) ) {
+ alt4=1;
}
- switch (alt2) {
+ switch (alt4) {
case 1 :
// ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:
{
@@ -639,12 +900,12 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- if ( cnt2 >= 1 ) break loop2;
+ if ( cnt4 >= 1 ) break loop4;
EarlyExitException eee =
- new EarlyExitException(2, input);
+ new EarlyExitException(4, input);
throw eee;
}
- cnt2++;
+ cnt4++;
} while (true);
@@ -663,19 +924,19 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_ID;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1835:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1835:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2133:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2133:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1835:11: ( '^' )?
- int alt3=2;
- int LA3_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2133:11: ( '^' )?
+ int alt5=2;
+ int LA5_0 = input.LA(1);
- if ( (LA3_0=='^') ) {
- alt3=1;
+ if ( (LA5_0=='^') ) {
+ alt5=1;
}
- switch (alt3) {
+ switch (alt5) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1835:11: '^'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2133:11: '^'
{
match('^');
@@ -693,18 +954,18 @@ public class InternalConfigLexer extends Lexer {
recover(mse);
throw mse;}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1835:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
- loop4:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2133:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+ loop6:
do {
- int alt4=2;
- int LA4_0 = input.LA(1);
+ int alt6=2;
+ int LA6_0 = input.LA(1);
- if ( ((LA4_0>='0' && LA4_0<='9')||(LA4_0>='A' && LA4_0<='Z')||LA4_0=='_'||(LA4_0>='a' && LA4_0<='z')) ) {
- alt4=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 (alt4) {
+ switch (alt6) {
case 1 :
// ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:
{
@@ -722,7 +983,7 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop4;
+ break loop6;
}
} while (true);
@@ -742,24 +1003,24 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_INT;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1837:10: ( ( '0' .. '9' )+ )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1837:12: ( '0' .. '9' )+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2135:10: ( ( '0' .. '9' )+ )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2135:12: ( '0' .. '9' )+
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1837:12: ( '0' .. '9' )+
- int cnt5=0;
- loop5:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2135:12: ( '0' .. '9' )+
+ int cnt7=0;
+ loop7:
do {
- int alt5=2;
- int LA5_0 = input.LA(1);
+ int alt7=2;
+ int LA7_0 = input.LA(1);
- if ( ((LA5_0>='0' && LA5_0<='9')) ) {
- alt5=1;
+ if ( ((LA7_0>='0' && LA7_0<='9')) ) {
+ alt7=1;
}
- switch (alt5) {
+ switch (alt7) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1837:13: '0' .. '9'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2135:13: '0' .. '9'
{
matchRange('0','9');
@@ -767,12 +1028,12 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- if ( cnt5 >= 1 ) break loop5;
+ if ( cnt7 >= 1 ) break loop7;
EarlyExitException eee =
- new EarlyExitException(5, input);
+ new EarlyExitException(7, input);
throw eee;
}
- cnt5++;
+ cnt7++;
} while (true);
@@ -791,47 +1052,47 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_STRING;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
- int alt8=2;
- int LA8_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+ int alt10=2;
+ int LA10_0 = input.LA(1);
- if ( (LA8_0=='\"') ) {
- alt8=1;
+ if ( (LA10_0=='\"') ) {
+ alt10=1;
}
- else if ( (LA8_0=='\'') ) {
- alt8=2;
+ else if ( (LA10_0=='\'') ) {
+ alt10=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 8, 0, input);
+ new NoViableAltException("", 10, 0, input);
throw nvae;
}
- switch (alt8) {
+ switch (alt10) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
{
match('\"');
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
- loop6:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
+ loop8:
do {
- int alt6=3;
- int LA6_0 = input.LA(1);
+ int alt8=3;
+ int LA8_0 = input.LA(1);
- if ( (LA6_0=='\\') ) {
- alt6=1;
+ if ( (LA8_0=='\\') ) {
+ alt8=1;
}
- else if ( ((LA6_0>='\u0000' && LA6_0<='!')||(LA6_0>='#' && LA6_0<='[')||(LA6_0>=']' && LA6_0<='\uFFFF')) ) {
- alt6=2;
+ else if ( ((LA8_0>='\u0000' && LA8_0<='!')||(LA8_0>='#' && LA8_0<='[')||(LA8_0>=']' && LA8_0<='\uFFFF')) ) {
+ alt8=2;
}
- switch (alt6) {
+ switch (alt8) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137: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') ) {
@@ -847,7 +1108,7 @@ public class InternalConfigLexer extends Lexer {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:66: ~ ( ( '\\\\' | '\"' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137:66: ~ ( ( '\\\\' | '\"' ) )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
input.consume();
@@ -863,7 +1124,7 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop6;
+ break loop8;
}
} while (true);
@@ -872,26 +1133,26 @@ public class InternalConfigLexer extends Lexer {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
{
match('\'');
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
- loop7:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
+ loop9:
do {
- int alt7=3;
- int LA7_0 = input.LA(1);
+ int alt9=3;
+ int LA9_0 = input.LA(1);
- if ( (LA7_0=='\\') ) {
- alt7=1;
+ if ( (LA9_0=='\\') ) {
+ alt9=1;
}
- else if ( ((LA7_0>='\u0000' && LA7_0<='&')||(LA7_0>='(' && LA7_0<='[')||(LA7_0>=']' && LA7_0<='\uFFFF')) ) {
- alt7=2;
+ else if ( ((LA9_0>='\u0000' && LA9_0<='&')||(LA9_0>='(' && LA9_0<='[')||(LA9_0>=']' && LA9_0<='\uFFFF')) ) {
+ alt9=2;
}
- switch (alt7) {
+ switch (alt9) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137: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') ) {
@@ -907,7 +1168,7 @@ public class InternalConfigLexer extends Lexer {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:137: ~ ( ( '\\\\' | '\\'' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2137:137: ~ ( ( '\\\\' | '\\'' ) )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
input.consume();
@@ -923,7 +1184,7 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop7;
+ break loop9;
}
} while (true);
@@ -950,37 +1211,37 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_ML_COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1841:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1841:19: '/*' ( options {greedy=false; } : . )* '*/'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2139:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2139:19: '/*' ( options {greedy=false; } : . )* '*/'
{
match("/*");
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1841:24: ( options {greedy=false; } : . )*
- loop9:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2139:24: ( options {greedy=false; } : . )*
+ loop11:
do {
- int alt9=2;
- int LA9_0 = input.LA(1);
+ int alt11=2;
+ int LA11_0 = input.LA(1);
- if ( (LA9_0=='*') ) {
- int LA9_1 = input.LA(2);
+ if ( (LA11_0=='*') ) {
+ int LA11_1 = input.LA(2);
- if ( (LA9_1=='/') ) {
- alt9=2;
+ if ( (LA11_1=='/') ) {
+ alt11=2;
}
- else if ( ((LA9_1>='\u0000' && LA9_1<='.')||(LA9_1>='0' && LA9_1<='\uFFFF')) ) {
- alt9=1;
+ else if ( ((LA11_1>='\u0000' && LA11_1<='.')||(LA11_1>='0' && LA11_1<='\uFFFF')) ) {
+ alt11=1;
}
}
- else if ( ((LA9_0>='\u0000' && LA9_0<=')')||(LA9_0>='+' && LA9_0<='\uFFFF')) ) {
- alt9=1;
+ else if ( ((LA11_0>='\u0000' && LA11_0<=')')||(LA11_0>='+' && LA11_0<='\uFFFF')) ) {
+ alt11=1;
}
- switch (alt9) {
+ switch (alt11) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1841:52: .
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2139:52: .
{
matchAny();
@@ -988,7 +1249,7 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop9;
+ break loop11;
}
} while (true);
@@ -1010,25 +1271,25 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_SL_COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1843:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1843:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2141:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2141:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
{
match("//");
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1843:24: (~ ( ( '\\n' | '\\r' ) ) )*
- loop10:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2141:24: (~ ( ( '\\n' | '\\r' ) ) )*
+ loop12:
do {
- int alt10=2;
- int LA10_0 = input.LA(1);
+ int alt12=2;
+ int LA12_0 = input.LA(1);
- if ( ((LA10_0>='\u0000' && LA10_0<='\t')||(LA10_0>='\u000B' && LA10_0<='\f')||(LA10_0>='\u000E' && LA10_0<='\uFFFF')) ) {
- alt10=1;
+ if ( ((LA12_0>='\u0000' && LA12_0<='\t')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\uFFFF')) ) {
+ alt12=1;
}
- switch (alt10) {
+ switch (alt12) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1843:24: ~ ( ( '\\n' | '\\r' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2141: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();
@@ -1044,31 +1305,31 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- break loop10;
+ break loop12;
}
} while (true);
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1843:40: ( ( '\\r' )? '\\n' )?
- int alt12=2;
- int LA12_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2141:40: ( ( '\\r' )? '\\n' )?
+ int alt14=2;
+ int LA14_0 = input.LA(1);
- if ( (LA12_0=='\n'||LA12_0=='\r') ) {
- alt12=1;
+ if ( (LA14_0=='\n'||LA14_0=='\r') ) {
+ alt14=1;
}
- switch (alt12) {
+ switch (alt14) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1843:41: ( '\\r' )? '\\n'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2141:41: ( '\\r' )? '\\n'
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1843:41: ( '\\r' )?
- int alt11=2;
- int LA11_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2141:41: ( '\\r' )?
+ int alt13=2;
+ int LA13_0 = input.LA(1);
- if ( (LA11_0=='\r') ) {
- alt11=1;
+ if ( (LA13_0=='\r') ) {
+ alt13=1;
}
- switch (alt11) {
+ switch (alt13) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1843:41: '\\r'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2141:41: '\\r'
{
match('\r');
@@ -1100,22 +1361,22 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_WS;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1845:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1845:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2143:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2143:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1845:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
- int cnt13=0;
- loop13:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2143:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+ int cnt15=0;
+ loop15:
do {
- int alt13=2;
- int LA13_0 = input.LA(1);
+ int alt15=2;
+ int LA15_0 = input.LA(1);
- if ( ((LA13_0>='\t' && LA13_0<='\n')||LA13_0=='\r'||LA13_0==' ') ) {
- alt13=1;
+ if ( ((LA15_0>='\t' && LA15_0<='\n')||LA15_0=='\r'||LA15_0==' ') ) {
+ alt15=1;
}
- switch (alt13) {
+ switch (alt15) {
case 1 :
// ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:
{
@@ -1133,12 +1394,12 @@ public class InternalConfigLexer extends Lexer {
break;
default :
- if ( cnt13 >= 1 ) break loop13;
+ if ( cnt15 >= 1 ) break loop15;
EarlyExitException eee =
- new EarlyExitException(13, input);
+ new EarlyExitException(15, input);
throw eee;
}
- cnt13++;
+ cnt15++;
} while (true);
@@ -1157,8 +1418,8 @@ public class InternalConfigLexer extends Lexer {
try {
int _type = RULE_ANY_OTHER;
int _channel = DEFAULT_TOKEN_CHANNEL;
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1847:16: ( . )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1847:18: .
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2145:16: ( . )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2145:18: .
{
matchAny();
@@ -1173,229 +1434,292 @@ public class InternalConfigLexer extends Lexer {
// $ANTLR end "RULE_ANY_OTHER"
public void mTokens() throws RecognitionException {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:8: ( T__12 | 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 | T__35 | RULE_HEX | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
- int alt14=32;
- alt14 = dfa14.predict(input);
- switch (alt14) {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.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 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | RULE_EXP | RULE_HEX | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+ int alt16=41;
+ alt16 = dfa16.predict(input);
+ switch (alt16) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:10: T__12
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:10: T__13
{
- mT__12();
+ mT__13();
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:16: T__13
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:16: T__14
{
- mT__13();
+ mT__14();
}
break;
case 3 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:22: T__14
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:22: T__15
{
- mT__14();
+ mT__15();
}
break;
case 4 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:28: T__15
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:28: T__16
{
- mT__15();
+ mT__16();
}
break;
case 5 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:34: T__16
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:34: T__17
{
- mT__16();
+ mT__17();
}
break;
case 6 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:40: T__17
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:40: T__18
{
- mT__17();
+ mT__18();
}
break;
case 7 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:46: T__18
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:46: T__19
{
- mT__18();
+ mT__19();
}
break;
case 8 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:52: T__19
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:52: T__20
{
- mT__19();
+ mT__20();
}
break;
case 9 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:58: T__20
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:58: T__21
{
- mT__20();
+ mT__21();
}
break;
case 10 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:64: T__21
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:64: T__22
{
- mT__21();
+ mT__22();
}
break;
case 11 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:70: T__22
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:70: T__23
{
- mT__22();
+ mT__23();
}
break;
case 12 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:76: T__23
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:76: T__24
{
- mT__23();
+ mT__24();
}
break;
case 13 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:82: T__24
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:82: T__25
{
- mT__24();
+ mT__25();
}
break;
case 14 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:88: T__25
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:88: T__26
{
- mT__25();
+ mT__26();
}
break;
case 15 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:94: T__26
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:94: T__27
{
- mT__26();
+ mT__27();
}
break;
case 16 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:100: T__27
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:100: T__28
{
- mT__27();
+ mT__28();
}
break;
case 17 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:106: T__28
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:106: T__29
{
- mT__28();
+ mT__29();
}
break;
case 18 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:112: T__29
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:112: T__30
{
- mT__29();
+ mT__30();
}
break;
case 19 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:118: T__30
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:118: T__31
{
- mT__30();
+ mT__31();
}
break;
case 20 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:124: T__31
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:124: T__32
{
- mT__31();
+ mT__32();
}
break;
case 21 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:130: T__32
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:130: T__33
{
- mT__32();
+ mT__33();
}
break;
case 22 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:136: T__33
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:136: T__34
{
- mT__33();
+ mT__34();
}
break;
case 23 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:142: T__34
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:142: T__35
{
- mT__34();
+ mT__35();
}
break;
case 24 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:148: T__35
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:148: T__36
{
- mT__35();
+ mT__36();
}
break;
case 25 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:154: RULE_HEX
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:154: T__37
{
- mRULE_HEX();
+ mT__37();
}
break;
case 26 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:163: RULE_ID
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:160: T__38
{
- mRULE_ID();
+ mT__38();
}
break;
case 27 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:171: RULE_INT
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:166: T__39
{
- mRULE_INT();
+ mT__39();
}
break;
case 28 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:180: RULE_STRING
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:172: T__40
{
- mRULE_STRING();
+ mT__40();
}
break;
case 29 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:192: RULE_ML_COMMENT
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:178: T__41
{
- mRULE_ML_COMMENT();
+ mT__41();
}
break;
case 30 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:208: RULE_SL_COMMENT
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:184: T__42
{
- mRULE_SL_COMMENT();
+ mT__42();
}
break;
case 31 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:224: RULE_WS
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:190: T__43
{
- mRULE_WS();
+ mT__43();
}
break;
case 32 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:232: RULE_ANY_OTHER
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:196: T__44
+ {
+ mT__44();
+
+ }
+ break;
+ case 33 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:202: RULE_EXP
+ {
+ mRULE_EXP();
+
+ }
+ break;
+ case 34 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:211: RULE_HEX
+ {
+ mRULE_HEX();
+
+ }
+ break;
+ case 35 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:220: RULE_ID
+ {
+ mRULE_ID();
+
+ }
+ break;
+ case 36 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:228: RULE_INT
+ {
+ mRULE_INT();
+
+ }
+ break;
+ case 37 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:237: RULE_STRING
+ {
+ mRULE_STRING();
+
+ }
+ break;
+ case 38 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:249: RULE_ML_COMMENT
+ {
+ mRULE_ML_COMMENT();
+
+ }
+ break;
+ case 39 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:265: RULE_SL_COMMENT
+ {
+ mRULE_SL_COMMENT();
+
+ }
+ break;
+ case 40 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:281: RULE_WS
+ {
+ mRULE_WS();
+
+ }
+ break;
+ case 41 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1:289: RULE_ANY_OTHER
{
mRULE_ANY_OTHER();
@@ -1407,336 +1731,416 @@ public class InternalConfigLexer extends Lexer {
}
- protected DFA14 dfa14 = new DFA14(this);
- static final String DFA14_eotS =
- "\1\uffff\1\34\2\uffff\1\41\4\34\1\uffff\3\34\1\57\1\uffff\1\34"+
- "\2\uffff\1\65\1\31\2\uffff\2\31\2\uffff\2\34\6\uffff\5\34\1\uffff"+
- "\6\34\3\uffff\1\34\6\uffff\7\34\1\115\1\116\6\34\1\125\1\34\1\127"+
- "\3\34\2\uffff\2\34\1\135\1\34\1\137\1\34\1\uffff\1\34\1\uffff\3"+
- "\34\1\146\1\34\1\uffff\1\150\1\uffff\6\34\1\uffff\1\157\1\uffff"+
- "\3\34\1\163\2\34\1\uffff\3\34\1\uffff\5\34\1\176\4\34\1\uffff\14"+
- "\34\1\u008f\3\34\1\uffff\3\34\1\u0096\2\34\1\uffff\4\34\1\u009d"+
- "\1\u009e\2\uffff";
- static final String DFA14_eofS =
- "\u009f\uffff";
- static final String DFA14_minS =
- "\1\0\1\143\2\uffff\1\52\1\157\1\145\1\157\1\156\1\uffff\1\141\1"+
- "\155\1\141\1\52\1\uffff\1\162\2\uffff\1\130\1\101\2\uffff\2\0\2"+
- "\uffff\2\164\6\uffff\1\157\1\162\1\147\1\156\1\164\1\uffff\1\156"+
- "\1\170\1\144\1\160\1\157\1\154\3\uffff\1\165\6\uffff\1\157\1\162"+
- "\2\164\1\165\1\152\1\145\2\60\1\145\1\157\1\155\1\163\1\145\1\162"+
- "\1\60\1\157\1\60\1\154\1\165\1\162\2\uffff\1\154\1\162\1\60\1\145"+
- "\1\60\1\103\1\uffff\1\143\1\uffff\1\141\1\147\1\146\1\60\1\164\1"+
- "\uffff\1\60\1\uffff\1\154\1\156\1\157\1\162\2\141\1\uffff\1\60\1"+
- "\uffff\1\141\1\163\1\154\1\60\1\164\1\143\1\uffff\1\163\1\164\1"+
- "\103\1\uffff\2\145\1\163\1\141\1\154\1\60\1\111\1\103\1\156\1\141"+
- "\1\uffff\1\164\1\157\1\143\1\163\1\145\1\156\1\145\1\163\1\155\1"+
- "\146\2\103\1\60\1\151\2\157\1\uffff\1\147\2\156\1\60\2\146\1\uffff"+
- "\2\151\2\147\2\60\2\uffff";
- static final String DFA14_maxS =
- "\1\uffff\1\164\2\uffff\1\57\1\162\1\145\1\157\1\156\1\uffff\1\157"+
- "\1\155\1\162\1\52\1\uffff\1\162\2\uffff\1\170\1\172\2\uffff\2\uffff"+
- "\2\uffff\2\164\6\uffff\1\157\1\162\1\147\1\156\1\164\1\uffff\1\156"+
- "\1\170\1\144\1\160\1\157\1\154\3\uffff\1\165\6\uffff\1\157\1\162"+
- "\2\164\1\165\1\152\1\145\2\172\1\145\1\157\1\155\1\163\1\145\1\162"+
- "\1\172\1\157\1\172\1\154\1\165\1\162\2\uffff\1\154\1\162\1\172\1"+
- "\145\1\172\1\111\1\uffff\1\143\1\uffff\1\141\1\147\1\146\1\172\1"+
- "\164\1\uffff\1\172\1\uffff\1\154\1\156\1\157\1\162\2\141\1\uffff"+
- "\1\172\1\uffff\1\141\1\163\1\154\1\172\1\164\1\143\1\uffff\1\163"+
- "\1\164\1\103\1\uffff\2\145\1\163\1\141\1\154\1\172\1\111\1\103\1"+
- "\156\1\141\1\uffff\1\164\1\157\1\143\1\163\1\145\1\156\1\145\1\163"+
- "\1\155\1\146\2\103\1\172\1\151\2\157\1\uffff\1\147\2\156\1\172\2"+
- "\146\1\uffff\2\151\2\147\2\172\2\uffff";
- static final String DFA14_acceptS =
- "\2\uffff\1\2\1\3\5\uffff\1\14\4\uffff\1\24\1\uffff\1\27\1\30\2"+
- "\uffff\1\32\1\33\2\uffff\1\37\1\40\2\uffff\1\32\1\2\1\3\1\35\1\36"+
- "\1\5\5\uffff\1\14\6\uffff\1\22\1\23\1\24\1\uffff\1\27\1\30\1\31"+
- "\1\33\1\34\1\37\25\uffff\1\15\1\16\6\uffff\1\13\1\uffff\1\11\5\uffff"+
- "\1\20\1\uffff\1\26\6\uffff\1\21\1\uffff\1\25\6\uffff\1\17\3\uffff"+
- "\1\7\12\uffff\1\10\20\uffff\1\12\6\uffff\1\1\6\uffff\1\4\1\6";
- static final String DFA14_specialS =
- "\1\1\25\uffff\1\0\1\2\u0087\uffff}>";
- static final String[] DFA14_transitionS = {
- "\11\31\2\30\2\31\1\30\22\31\1\30\1\31\1\26\4\31\1\27\3\31\1"+
- "\20\1\16\1\21\1\15\1\4\1\22\11\25\3\31\1\11\3\31\1\1\7\24\1"+
- "\10\6\24\1\5\12\24\3\31\1\23\1\24\1\31\2\24\1\7\2\24\1\14\2"+
- "\24\1\13\3\24\1\12\4\24\1\6\1\24\1\17\6\24\1\2\1\31\1\3\uff82"+
- "\31",
- "\1\32\20\uffff\1\33",
+ protected DFA16 dfa16 = new DFA16(this);
+ static final String DFA16_eotS =
+ "\1\uffff\1\41\2\uffff\5\41\1\56\4\41\1\uffff\3\41\1\73\1\uffff"+
+ "\1\41\2\uffff\1\41\1\103\1\37\2\uffff\2\37\2\uffff\1\41\3\uffff"+
+ "\10\41\3\uffff\5\41\1\uffff\5\41\3\uffff\1\41\3\uffff\1\100\4\uffff"+
+ "\17\41\1\152\1\153\7\41\1\163\4\41\1\170\1\41\1\172\1\41\1\174\2"+
+ "\41\2\uffff\3\41\1\u0082\2\41\2\uffff\1\u0085\1\uffff\2\41\1\uffff"+
+ "\1\41\1\uffff\1\41\1\uffff\2\41\1\u008f\1\u0090\1\41\1\uffff\2\41"+
+ "\3\uffff\7\41\2\uffff\1\u009b\6\41\1\u00a2\2\41\1\uffff\1\41\2\uffff"+
+ "\3\41\1\uffff\6\41\1\u00af\5\41\1\uffff\17\41\1\u00c4\4\41\1\uffff"+
+ "\1\u00c9\3\41\1\uffff\1\u00cd\2\41\1\uffff\4\41\1\u00d4\1\u00d5"+
+ "\2\uffff";
+ static final String DFA16_eofS =
+ "\u00d6\uffff";
+ static final String DFA16_minS =
+ "\1\0\1\165\2\uffff\1\171\1\141\1\163\1\157\1\143\1\52\1\157\1\145"+
+ "\1\157\1\156\1\uffff\1\141\1\162\1\155\1\52\1\uffff\1\162\2\uffff"+
+ "\1\53\1\130\1\101\2\uffff\2\0\2\uffff\1\142\3\uffff\1\156\1\154"+
+ "\1\157\1\154\1\145\1\154\2\164\3\uffff\1\157\1\162\1\141\1\156\1"+
+ "\164\1\uffff\1\156\1\170\1\144\1\151\1\160\3\uffff\1\165\3\uffff"+
+ "\1\60\4\uffff\1\123\1\141\1\145\1\155\1\163\1\162\1\154\1\157\1"+
+ "\162\2\164\1\165\1\144\1\152\1\145\2\60\1\145\1\164\1\157\1\145"+
+ "\1\171\1\155\1\40\1\60\1\145\1\40\1\151\1\162\1\60\1\157\1\60\1"+
+ "\154\1\60\1\165\1\162\2\uffff\1\154\1\145\1\162\1\60\1\163\1\151"+
+ "\2\uffff\1\60\1\143\1\156\1\103\1\uffff\1\143\1\uffff\1\141\1\uffff"+
+ "\1\147\1\146\2\60\1\164\1\uffff\1\164\1\143\3\uffff\1\147\1\154"+
+ "\1\156\1\157\1\162\2\141\2\uffff\1\60\1\145\2\40\1\141\1\163\1\154"+
+ "\1\60\1\164\1\143\1\uffff\1\155\2\uffff\1\163\1\164\1\103\1\uffff"+
+ "\2\145\1\103\1\163\1\141\1\154\1\60\1\111\1\157\1\103\1\156\1\141"+
+ "\1\uffff\1\164\1\156\1\157\1\143\1\163\1\145\1\146\1\156\1\145\1"+
+ "\163\1\155\1\151\1\146\2\103\1\60\1\147\1\151\2\157\1\uffff\1\60"+
+ "\1\147\2\156\1\uffff\1\60\2\146\1\uffff\2\151\2\147\2\60\2\uffff";
+ static final String DFA16_maxS =
+ "\1\uffff\1\165\2\uffff\1\171\1\162\1\163\1\157\1\164\1\57\1\162"+
+ "\1\145\1\157\1\156\1\uffff\1\157\1\162\1\155\1\52\1\uffff\1\162"+
+ "\2\uffff\1\71\1\170\1\172\2\uffff\2\uffff\2\uffff\1\142\3\uffff"+
+ "\1\156\1\154\1\157\1\154\1\145\1\154\2\164\3\uffff\1\157\1\162\1"+
+ "\147\1\156\1\164\1\uffff\1\156\1\170\1\144\1\151\1\160\3\uffff\1"+
+ "\165\3\uffff\1\172\4\uffff\1\123\1\141\1\145\1\155\1\163\1\162\1"+
+ "\154\1\157\1\162\2\164\1\165\1\144\1\152\1\145\2\172\1\145\1\164"+
+ "\1\157\1\145\1\171\1\155\1\40\1\172\1\145\1\40\1\151\1\162\1\172"+
+ "\1\157\1\172\1\154\1\172\1\165\1\162\2\uffff\1\154\1\145\1\162\1"+
+ "\172\1\163\1\151\2\uffff\1\172\1\151\1\156\1\111\1\uffff\1\143\1"+
+ "\uffff\1\141\1\uffff\1\147\1\146\2\172\1\164\1\uffff\1\164\1\143"+
+ "\3\uffff\1\147\1\154\1\156\1\157\1\162\2\141\2\uffff\1\172\1\145"+
+ "\2\40\1\141\1\163\1\154\1\172\1\164\1\143\1\uffff\1\155\2\uffff"+
+ "\1\163\1\164\1\103\1\uffff\2\145\1\103\1\163\1\141\1\154\1\172\1"+
+ "\111\1\157\1\103\1\156\1\141\1\uffff\1\164\1\156\1\157\1\143\1\163"+
+ "\1\145\1\146\1\156\1\145\1\163\1\155\1\151\1\146\2\103\1\172\1\147"+
+ "\1\151\2\157\1\uffff\1\172\1\147\2\156\1\uffff\1\172\2\146\1\uffff"+
+ "\2\151\2\147\2\172\2\uffff";
+ static final String DFA16_acceptS =
+ "\2\uffff\1\2\1\3\12\uffff\1\22\4\uffff\1\34\1\uffff\1\37\1\40\3"+
+ "\uffff\1\43\1\44\2\uffff\1\50\1\51\1\uffff\1\43\1\2\1\3\10\uffff"+
+ "\1\46\1\47\1\13\5\uffff\1\22\5\uffff\1\32\1\33\1\34\1\uffff\1\37"+
+ "\1\40\1\41\1\uffff\1\42\1\44\1\45\1\50\44\uffff\1\23\1\24\6\uffff"+
+ "\1\5\1\30\4\uffff\1\21\1\uffff\1\17\1\uffff\1\25\5\uffff\1\36\2"+
+ "\uffff\1\35\1\6\1\7\7\uffff\1\31\1\26\12\uffff\1\27\1\uffff\1\4"+
+ "\1\10\3\uffff\1\15\14\uffff\1\16\24\uffff\1\20\4\uffff\1\1\3\uffff"+
+ "\1\11\6\uffff\1\12\1\14";
+ static final String DFA16_specialS =
+ "\1\1\33\uffff\1\2\1\0\u00b8\uffff}>";
+ static final String[] DFA16_transitionS = {
+ "\11\37\2\36\2\37\1\36\22\37\1\36\1\37\1\34\4\37\1\35\3\37\1"+
+ "\25\1\23\1\26\1\22\1\11\1\30\11\33\3\37\1\16\3\37\1\10\3\32"+
+ "\1\27\3\32\1\15\6\32\1\12\2\32\1\1\7\32\3\37\1\31\1\32\1\37"+
+ "\2\32\1\14\1\4\1\27\1\5\2\32\1\21\3\32\1\17\2\32\1\7\1\32\1"+
+ "\13\1\32\1\24\1\6\1\32\1\20\3\32\1\2\1\37\1\3\uff82\37",
+ "\1\40",
"",
"",
- "\1\37\4\uffff\1\40",
- "\1\43\2\uffff\1\42",
"\1\44",
- "\1\45",
- "\1\46",
- "",
- "\1\51\7\uffff\1\50\5\uffff\1\52",
- "\1\53",
- "\1\55\20\uffff\1\54",
- "\1\56",
- "",
+ "\1\47\7\uffff\1\45\10\uffff\1\46",
+ "\1\50",
+ "\1\51",
+ "\1\52\20\uffff\1\53",
+ "\1\54\4\uffff\1\55",
+ "\1\60\2\uffff\1\57",
"\1\61",
+ "\1\62",
+ "\1\63",
"",
- "",
- "\1\64\37\uffff\1\64",
- "\32\34\4\uffff\1\34\1\uffff\32\34",
- "",
- "",
- "\0\66",
- "\0\66",
- "",
- "",
+ "\1\66\7\uffff\1\65\5\uffff\1\67",
"\1\70",
"\1\71",
- "",
- "",
- "",
- "",
- "",
- "",
"\1\72",
- "\1\73",
- "\1\74",
- "\1\75",
- "\1\76",
"",
- "\1\77",
- "\1\100",
- "\1\101",
- "\1\102",
- "\1\103",
- "\1\104",
+ "\1\75",
"",
"",
+ "\1\100\1\uffff\1\100\2\uffff\12\101",
+ "\1\102\37\uffff\1\102",
+ "\32\41\4\uffff\1\41\1\uffff\32\41",
"",
- "\1\105",
"",
+ "\0\104",
+ "\0\104",
"",
"",
+ "\1\106",
"",
"",
"",
- "\1\106",
"\1\107",
"\1\110",
"\1\111",
"\1\112",
"\1\113",
"\1\114",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
+ "\1\115",
+ "\1\116",
+ "",
+ "",
+ "",
"\1\117",
"\1\120",
- "\1\121",
- "\1\122",
+ "\1\122\5\uffff\1\121",
"\1\123",
"\1\124",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
+ "",
+ "\1\125",
"\1\126",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
+ "\1\127",
"\1\130",
"\1\131",
+ "",
+ "",
+ "",
"\1\132",
"",
"",
+ "",
+ "\12\101\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "",
+ "",
+ "",
+ "",
"\1\133",
"\1\134",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
+ "\1\135",
"\1\136",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
- "\1\140\5\uffff\1\141",
- "",
+ "\1\137",
+ "\1\140",
+ "\1\141",
"\1\142",
- "",
"\1\143",
"\1\144",
"\1\145",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
+ "\1\146",
"\1\147",
- "",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
- "",
+ "\1\150",
"\1\151",
- "\1\152",
- "\1\153",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\154",
"\1\155",
"\1\156",
- "",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
- "",
+ "\1\157",
"\1\160",
"\1\161",
"\1\162",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\164",
"\1\165",
- "",
"\1\166",
"\1\167",
- "\1\170",
- "",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\171",
- "\1\172",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\173",
- "\1\174",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\175",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
+ "\1\176",
+ "",
+ "",
"\1\177",
"\1\u0080",
"\1\u0081",
- "\1\u0082",
- "",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\u0083",
"\1\u0084",
- "\1\u0085",
- "\1\u0086",
- "\1\u0087",
+ "",
+ "",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u0087\5\uffff\1\u0086",
"\1\u0088",
- "\1\u0089",
- "\1\u008a",
+ "\1\u0089\5\uffff\1\u008a",
+ "",
"\1\u008b",
+ "",
"\1\u008c",
+ "",
"\1\u008d",
"\1\u008e",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
- "\1\u0090",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\u0091",
- "\1\u0092",
"",
+ "\1\u0092",
"\1\u0093",
+ "",
+ "",
+ "",
"\1\u0094",
"\1\u0095",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
+ "\1\u0096",
"\1\u0097",
"\1\u0098",
- "",
"\1\u0099",
"\1\u009a",
- "\1\u009b",
+ "",
+ "",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"\1\u009c",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
- "\12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",
+ "\1\u009d",
+ "\1\u009e",
+ "\1\u009f",
+ "\1\u00a0",
+ "\1\u00a1",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00a3",
+ "\1\u00a4",
+ "",
+ "\1\u00a5",
+ "",
+ "",
+ "\1\u00a6",
+ "\1\u00a7",
+ "\1\u00a8",
+ "",
+ "\1\u00a9",
+ "\1\u00aa",
+ "\1\u00ab",
+ "\1\u00ac",
+ "\1\u00ad",
+ "\1\u00ae",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00b0",
+ "\1\u00b1",
+ "\1\u00b2",
+ "\1\u00b3",
+ "\1\u00b4",
+ "",
+ "\1\u00b5",
+ "\1\u00b6",
+ "\1\u00b7",
+ "\1\u00b8",
+ "\1\u00b9",
+ "\1\u00ba",
+ "\1\u00bb",
+ "\1\u00bc",
+ "\1\u00bd",
+ "\1\u00be",
+ "\1\u00bf",
+ "\1\u00c0",
+ "\1\u00c1",
+ "\1\u00c2",
+ "\1\u00c3",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00c5",
+ "\1\u00c6",
+ "\1\u00c7",
+ "\1\u00c8",
+ "",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00ca",
+ "\1\u00cb",
+ "\1\u00cc",
+ "",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\1\u00ce",
+ "\1\u00cf",
+ "",
+ "\1\u00d0",
+ "\1\u00d1",
+ "\1\u00d2",
+ "\1\u00d3",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
+ "\12\41\7\uffff\32\41\4\uffff\1\41\1\uffff\32\41",
"",
""
};
- static final short[] DFA14_eot = DFA.unpackEncodedString(DFA14_eotS);
- static final short[] DFA14_eof = DFA.unpackEncodedString(DFA14_eofS);
- static final char[] DFA14_min = DFA.unpackEncodedStringToUnsignedChars(DFA14_minS);
- static final char[] DFA14_max = DFA.unpackEncodedStringToUnsignedChars(DFA14_maxS);
- static final short[] DFA14_accept = DFA.unpackEncodedString(DFA14_acceptS);
- static final short[] DFA14_special = DFA.unpackEncodedString(DFA14_specialS);
- static final short[][] DFA14_transition;
+ 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 = DFA14_transitionS.length;
- DFA14_transition = new short[numStates][];
+ int numStates = DFA16_transitionS.length;
+ DFA16_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
- DFA14_transition[i] = DFA.unpackEncodedString(DFA14_transitionS[i]);
+ DFA16_transition[i] = DFA.unpackEncodedString(DFA16_transitionS[i]);
}
}
- class DFA14 extends DFA {
+ class DFA16 extends DFA {
- public DFA14(BaseRecognizer recognizer) {
+ public DFA16(BaseRecognizer recognizer) {
this.recognizer = recognizer;
- this.decisionNumber = 14;
- this.eot = DFA14_eot;
- this.eof = DFA14_eof;
- this.min = DFA14_min;
- this.max = DFA14_max;
- this.accept = DFA14_accept;
- this.special = DFA14_special;
- this.transition = DFA14_transition;
+ 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__12 | 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 | T__35 | RULE_HEX | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
+ 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 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | 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 LA14_22 = input.LA(1);
+ int LA16_29 = input.LA(1);
s = -1;
- if ( ((LA14_22>='\u0000' && LA14_22<='\uFFFF')) ) {s = 54;}
+ if ( ((LA16_29>='\u0000' && LA16_29<='\uFFFF')) ) {s = 68;}
- else s = 25;
+ else s = 31;
if ( s>=0 ) return s;
break;
case 1 :
- int LA14_0 = input.LA(1);
+ int LA16_0 = input.LA(1);
s = -1;
- if ( (LA14_0=='A') ) {s = 1;}
+ if ( (LA16_0=='S') ) {s = 1;}
+
+ else if ( (LA16_0=='{') ) {s = 2;}
+
+ else if ( (LA16_0=='}') ) {s = 3;}
+
+ else if ( (LA16_0=='d') ) {s = 4;}
+
+ else if ( (LA16_0=='f') ) {s = 5;}
+
+ else if ( (LA16_0=='u') ) {s = 6;}
+
+ else if ( (LA16_0=='p') ) {s = 7;}
- else if ( (LA14_0=='{') ) {s = 2;}
+ else if ( (LA16_0=='A') ) {s = 8;}
- else if ( (LA14_0=='}') ) {s = 3;}
+ else if ( (LA16_0=='/') ) {s = 9;}
- else if ( (LA14_0=='/') ) {s = 4;}
+ else if ( (LA16_0=='P') ) {s = 10;}
- else if ( (LA14_0=='P') ) {s = 5;}
+ else if ( (LA16_0=='r') ) {s = 11;}
- else if ( (LA14_0=='r') ) {s = 6;}
+ else if ( (LA16_0=='c') ) {s = 12;}
- else if ( (LA14_0=='c') ) {s = 7;}
+ else if ( (LA16_0=='I') ) {s = 13;}
- else if ( (LA14_0=='I') ) {s = 8;}
+ else if ( (LA16_0=='=') ) {s = 14;}
- else if ( (LA14_0=='=') ) {s = 9;}
+ else if ( (LA16_0=='m') ) {s = 15;}
- else if ( (LA14_0=='m') ) {s = 10;}
+ else if ( (LA16_0=='w') ) {s = 16;}
- else if ( (LA14_0=='i') ) {s = 11;}
+ else if ( (LA16_0=='i') ) {s = 17;}
- else if ( (LA14_0=='f') ) {s = 12;}
+ else if ( (LA16_0=='.') ) {s = 18;}
- else if ( (LA14_0=='.') ) {s = 13;}
+ else if ( (LA16_0==',') ) {s = 19;}
- else if ( (LA14_0==',') ) {s = 14;}
+ else if ( (LA16_0=='t') ) {s = 20;}
- else if ( (LA14_0=='t') ) {s = 15;}
+ else if ( (LA16_0=='+') ) {s = 21;}
- else if ( (LA14_0=='+') ) {s = 16;}
+ else if ( (LA16_0=='-') ) {s = 22;}
- else if ( (LA14_0=='-') ) {s = 17;}
+ else if ( (LA16_0=='E'||LA16_0=='e') ) {s = 23;}
- else if ( (LA14_0=='0') ) {s = 18;}
+ else if ( (LA16_0=='0') ) {s = 24;}
- else if ( (LA14_0=='^') ) {s = 19;}
+ else if ( (LA16_0=='^') ) {s = 25;}
- else if ( ((LA14_0>='B' && LA14_0<='H')||(LA14_0>='J' && LA14_0<='O')||(LA14_0>='Q' && LA14_0<='Z')||LA14_0=='_'||(LA14_0>='a' && LA14_0<='b')||(LA14_0>='d' && LA14_0<='e')||(LA14_0>='g' && LA14_0<='h')||(LA14_0>='j' && LA14_0<='l')||(LA14_0>='n' && LA14_0<='q')||LA14_0=='s'||(LA14_0>='u' && LA14_0<='z')) ) {s = 20;}
+ else if ( ((LA16_0>='B' && LA16_0<='D')||(LA16_0>='F' && LA16_0<='H')||(LA16_0>='J' && LA16_0<='O')||(LA16_0>='Q' && LA16_0<='R')||(LA16_0>='T' && LA16_0<='Z')||LA16_0=='_'||(LA16_0>='a' && LA16_0<='b')||(LA16_0>='g' && LA16_0<='h')||(LA16_0>='j' && LA16_0<='l')||(LA16_0>='n' && LA16_0<='o')||LA16_0=='q'||LA16_0=='s'||LA16_0=='v'||(LA16_0>='x' && LA16_0<='z')) ) {s = 26;}
- else if ( ((LA14_0>='1' && LA14_0<='9')) ) {s = 21;}
+ else if ( ((LA16_0>='1' && LA16_0<='9')) ) {s = 27;}
- else if ( (LA14_0=='\"') ) {s = 22;}
+ else if ( (LA16_0=='\"') ) {s = 28;}
- else if ( (LA14_0=='\'') ) {s = 23;}
+ else if ( (LA16_0=='\'') ) {s = 29;}
- else if ( ((LA14_0>='\t' && LA14_0<='\n')||LA14_0=='\r'||LA14_0==' ') ) {s = 24;}
+ else if ( ((LA16_0>='\t' && LA16_0<='\n')||LA16_0=='\r'||LA16_0==' ') ) {s = 30;}
- else if ( ((LA14_0>='\u0000' && LA14_0<='\b')||(LA14_0>='\u000B' && LA14_0<='\f')||(LA14_0>='\u000E' && LA14_0<='\u001F')||LA14_0=='!'||(LA14_0>='#' && LA14_0<='&')||(LA14_0>='(' && LA14_0<='*')||(LA14_0>=':' && LA14_0<='<')||(LA14_0>='>' && LA14_0<='@')||(LA14_0>='[' && LA14_0<=']')||LA14_0=='`'||LA14_0=='|'||(LA14_0>='~' && LA14_0<='\uFFFF')) ) {s = 25;}
+ 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=='|'||(LA16_0>='~' && LA16_0<='\uFFFF')) ) {s = 31;}
if ( s>=0 ) return s;
break;
case 2 :
- int LA14_23 = input.LA(1);
+ int LA16_28 = input.LA(1);
s = -1;
- if ( ((LA14_23>='\u0000' && LA14_23<='\uFFFF')) ) {s = 54;}
+ if ( ((LA16_28>='\u0000' && LA16_28<='\uFFFF')) ) {s = 68;}
- else s = 25;
+ else s = 31;
if ( s>=0 ) return s;
break;
}
NoViableAltException nvae =
- new NoViableAltException(getDescription(), 14, _s, input);
+ new NoViableAltException(getDescription(), 16, _s, input);
error(nvae);
throw nvae;
}
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigParser.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigParser.java
index 8e8861d56..7a0f82a96 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigParser.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfigParser.java
@@ -21,9 +21,10 @@ import java.util.ArrayList;
@SuppressWarnings("all")
public class InternalConfigParser extends AbstractInternalAntlrParser {
public static final String[] tokenNames = new String[] {
- "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_STRING", "RULE_INT", "RULE_HEX", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'ActorClassConfig'", "'{'", "'}'", "'ActorInstanceConfig'", "'/'", "'ProtocolClassConfig'", "'regular'", "'conjugate'", "'Port'", "'InterfaceItem'", "'Attr'", "'='", "'min'", "'max'", "'import'", "'from'", "'model'", "'.*'", "'.'", "','", "'false'", "'true'", "'+'", "'-'"
+ "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_STRING", "RULE_INT", "RULE_HEX", "RULE_EXP", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'SubSystemConfig'", "'{'", "'}'", "'dynamic configuration'", "'file path'", "'user import'", "'user constructor'", "'polling timer [ms]'", "'ActorClassConfig'", "'ActorInstanceConfig'", "'/'", "'ProtocolClassConfig'", "'regular'", "'conjugate'", "'Port'", "'InterfaceItem'", "'Attr'", "'='", "'min'", "'max'", "'read'", "'write'", "'import'", "'from'", "'model'", "'.*'", "'.'", "','", "'false'", "'true'", "'+'", "'-'"
};
public static final int RULE_ID=4;
+ public static final int RULE_EXP=8;
public static final int T__29=29;
public static final int T__28=28;
public static final int T__27=27;
@@ -32,30 +33,38 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
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=11;
+ 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=9;
public static final int EOF=-1;
- public static final int RULE_ML_COMMENT=8;
- 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_HEX=7;
- public static final int RULE_STRING=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__35=35;
public static final int T__18=18;
public static final int T__17=17;
- public static final int T__12=12;
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=10;
+ public static final int T__42=42;
+ public static final int T__43=43;
+ public static final int T__40=40;
+ public static final int T__41=41;
+ public static final int T__44=44;
+ public static final int RULE_SL_COMMENT=10;
+ public static final int RULE_ML_COMMENT=9;
+ 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_STRING=5;
+ public static final int T__33=33;
+ public static final int T__34=34;
+ public static final int T__35=35;
+ public static final int T__36=36;
+ public static final int T__37=37;
+ public static final int T__38=38;
+ public static final int T__39=39;
+ public static final int RULE_WS=11;
// delegates
// delegators
@@ -156,7 +165,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
int alt1=2;
int LA1_0 = input.LA(1);
- if ( (LA1_0==26) ) {
+ if ( (LA1_0==35) ) {
alt1=1;
}
@@ -205,7 +214,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
int alt2=2;
int LA2_0 = input.LA(1);
- if ( (LA2_0==12||LA2_0==15||LA2_0==17) ) {
+ if ( (LA2_0==13||(LA2_0>=21 && LA2_0<=22)||LA2_0==24) ) {
alt2=1;
}
@@ -305,41 +314,48 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleConfigElement"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:133:1: ruleConfigElement returns [EObject current=null] : (this_ActorClassConfig_0= ruleActorClassConfig | this_ActorInstanceConfig_1= ruleActorInstanceConfig | this_ProtocolClassConfig_2= ruleProtocolClassConfig ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:133:1: ruleConfigElement returns [EObject current=null] : (this_SubSystemConfig_0= ruleSubSystemConfig | this_ActorClassConfig_1= ruleActorClassConfig | this_ActorInstanceConfig_2= ruleActorInstanceConfig | this_ProtocolClassConfig_3= ruleProtocolClassConfig ) ;
public final EObject ruleConfigElement() throws RecognitionException {
EObject current = null;
- EObject this_ActorClassConfig_0 = null;
+ EObject this_SubSystemConfig_0 = null;
+
+ EObject this_ActorClassConfig_1 = null;
- EObject this_ActorInstanceConfig_1 = null;
+ EObject this_ActorInstanceConfig_2 = null;
- EObject this_ProtocolClassConfig_2 = null;
+ EObject this_ProtocolClassConfig_3 = null;
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:136:28: ( (this_ActorClassConfig_0= ruleActorClassConfig | this_ActorInstanceConfig_1= ruleActorInstanceConfig | this_ProtocolClassConfig_2= ruleProtocolClassConfig ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:137:1: (this_ActorClassConfig_0= ruleActorClassConfig | this_ActorInstanceConfig_1= ruleActorInstanceConfig | this_ProtocolClassConfig_2= ruleProtocolClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:136:28: ( (this_SubSystemConfig_0= ruleSubSystemConfig | this_ActorClassConfig_1= ruleActorClassConfig | this_ActorInstanceConfig_2= ruleActorInstanceConfig | this_ProtocolClassConfig_3= ruleProtocolClassConfig ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:137:1: (this_SubSystemConfig_0= ruleSubSystemConfig | this_ActorClassConfig_1= ruleActorClassConfig | this_ActorInstanceConfig_2= ruleActorInstanceConfig | this_ProtocolClassConfig_3= ruleProtocolClassConfig )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:137:1: (this_ActorClassConfig_0= ruleActorClassConfig | this_ActorInstanceConfig_1= ruleActorInstanceConfig | this_ProtocolClassConfig_2= ruleProtocolClassConfig )
- int alt3=3;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:137:1: (this_SubSystemConfig_0= ruleSubSystemConfig | this_ActorClassConfig_1= ruleActorClassConfig | this_ActorInstanceConfig_2= ruleActorInstanceConfig | this_ProtocolClassConfig_3= ruleProtocolClassConfig )
+ int alt3=4;
switch ( input.LA(1) ) {
- case 12:
+ case 13:
{
alt3=1;
}
break;
- case 15:
+ case 21:
{
alt3=2;
}
break;
- case 17:
+ case 22:
{
alt3=3;
}
break;
+ case 24:
+ {
+ alt3=4;
+ }
+ break;
default:
NoViableAltException nvae =
new NoViableAltException("", 3, 0, input);
@@ -349,54 +365,72 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
switch (alt3) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:138:5: this_ActorClassConfig_0= ruleActorClassConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:138:5: this_SubSystemConfig_0= ruleSubSystemConfig
{
- newCompositeNode(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_0());
+ newCompositeNode(grammarAccess.getConfigElementAccess().getSubSystemConfigParserRuleCall_0());
- pushFollow(FOLLOW_ruleActorClassConfig_in_ruleConfigElement247);
- this_ActorClassConfig_0=ruleActorClassConfig();
+ pushFollow(FOLLOW_ruleSubSystemConfig_in_ruleConfigElement247);
+ this_SubSystemConfig_0=ruleSubSystemConfig();
state._fsp--;
- current = this_ActorClassConfig_0;
+ current = this_SubSystemConfig_0;
afterParserOrEnumRuleCall();
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:148:5: this_ActorInstanceConfig_1= ruleActorInstanceConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:148:5: this_ActorClassConfig_1= ruleActorClassConfig
{
- newCompositeNode(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_1());
+ newCompositeNode(grammarAccess.getConfigElementAccess().getActorClassConfigParserRuleCall_1());
- pushFollow(FOLLOW_ruleActorInstanceConfig_in_ruleConfigElement274);
- this_ActorInstanceConfig_1=ruleActorInstanceConfig();
+ pushFollow(FOLLOW_ruleActorClassConfig_in_ruleConfigElement274);
+ this_ActorClassConfig_1=ruleActorClassConfig();
state._fsp--;
- current = this_ActorInstanceConfig_1;
+ current = this_ActorClassConfig_1;
afterParserOrEnumRuleCall();
}
break;
case 3 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:158:5: this_ProtocolClassConfig_2= ruleProtocolClassConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:158:5: this_ActorInstanceConfig_2= ruleActorInstanceConfig
+ {
+
+ newCompositeNode(grammarAccess.getConfigElementAccess().getActorInstanceConfigParserRuleCall_2());
+
+ pushFollow(FOLLOW_ruleActorInstanceConfig_in_ruleConfigElement301);
+ this_ActorInstanceConfig_2=ruleActorInstanceConfig();
+
+ state._fsp--;
+
+
+ current = this_ActorInstanceConfig_2;
+ afterParserOrEnumRuleCall();
+
+
+ }
+ break;
+ case 4 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:168:5: this_ProtocolClassConfig_3= ruleProtocolClassConfig
{
- newCompositeNode(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_2());
+ newCompositeNode(grammarAccess.getConfigElementAccess().getProtocolClassConfigParserRuleCall_3());
- pushFollow(FOLLOW_ruleProtocolClassConfig_in_ruleConfigElement301);
- this_ProtocolClassConfig_2=ruleProtocolClassConfig();
+ pushFollow(FOLLOW_ruleProtocolClassConfig_in_ruleConfigElement328);
+ this_ProtocolClassConfig_3=ruleProtocolClassConfig();
state._fsp--;
- current = this_ProtocolClassConfig_2;
+ current = this_ProtocolClassConfig_3;
afterParserOrEnumRuleCall();
@@ -422,8 +456,550 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR end "ruleConfigElement"
+ // $ANTLR start "entryRuleSubSystemConfig"
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:184:1: entryRuleSubSystemConfig returns [EObject current=null] : iv_ruleSubSystemConfig= ruleSubSystemConfig EOF ;
+ public final EObject entryRuleSubSystemConfig() throws RecognitionException {
+ EObject current = null;
+
+ EObject iv_ruleSubSystemConfig = null;
+
+
+ try {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:185:2: (iv_ruleSubSystemConfig= ruleSubSystemConfig EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:186:2: iv_ruleSubSystemConfig= ruleSubSystemConfig EOF
+ {
+ newCompositeNode(grammarAccess.getSubSystemConfigRule());
+ pushFollow(FOLLOW_ruleSubSystemConfig_in_entryRuleSubSystemConfig363);
+ iv_ruleSubSystemConfig=ruleSubSystemConfig();
+
+ state._fsp--;
+
+ current =iv_ruleSubSystemConfig;
+ match(input,EOF,FOLLOW_EOF_in_entryRuleSubSystemConfig373);
+
+ }
+
+ }
+
+ catch (RecognitionException re) {
+ recover(input,re);
+ appendSkippedTokens();
+ }
+ finally {
+ }
+ return current;
+ }
+ // $ANTLR end "entryRuleSubSystemConfig"
+
+
+ // $ANTLR start "ruleSubSystemConfig"
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:193:1: ruleSubSystemConfig returns [EObject current=null] : (otherlv_0= 'SubSystemConfig' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_dynConfig_3_0= ruleDynamicConfig ) ) otherlv_4= '}' ) ;
+ public final EObject ruleSubSystemConfig() throws RecognitionException {
+ EObject current = null;
+
+ Token otherlv_0=null;
+ Token otherlv_1=null;
+ Token otherlv_2=null;
+ Token otherlv_4=null;
+ EObject lv_dynConfig_3_0 = null;
+
+
+ enterRule();
+
+ try {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:196:28: ( (otherlv_0= 'SubSystemConfig' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_dynConfig_3_0= ruleDynamicConfig ) ) otherlv_4= '}' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:197:1: (otherlv_0= 'SubSystemConfig' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_dynConfig_3_0= ruleDynamicConfig ) ) otherlv_4= '}' )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:197:1: (otherlv_0= 'SubSystemConfig' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_dynConfig_3_0= ruleDynamicConfig ) ) otherlv_4= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:197:3: otherlv_0= 'SubSystemConfig' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_dynConfig_3_0= ruleDynamicConfig ) ) otherlv_4= '}'
+ {
+ otherlv_0=(Token)match(input,13,FOLLOW_13_in_ruleSubSystemConfig410);
+
+ newLeafNode(otherlv_0, grammarAccess.getSubSystemConfigAccess().getSubSystemConfigKeyword_0());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:201:1: ( (otherlv_1= RULE_ID ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:202:1: (otherlv_1= RULE_ID )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:202:1: (otherlv_1= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:203:3: otherlv_1= RULE_ID
+ {
+
+ if (current==null) {
+ current = createModelElement(grammarAccess.getSubSystemConfigRule());
+ }
+
+ otherlv_1=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleSubSystemConfig430);
+
+ newLeafNode(otherlv_1, grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassCrossReference_1_0());
+
+
+ }
+
+
+ }
+
+ otherlv_2=(Token)match(input,14,FOLLOW_14_in_ruleSubSystemConfig442);
+
+ newLeafNode(otherlv_2, grammarAccess.getSubSystemConfigAccess().getLeftCurlyBracketKeyword_2());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:218:1: ( (lv_dynConfig_3_0= ruleDynamicConfig ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:219:1: (lv_dynConfig_3_0= ruleDynamicConfig )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:219:1: (lv_dynConfig_3_0= ruleDynamicConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:220:3: lv_dynConfig_3_0= ruleDynamicConfig
+ {
+
+ newCompositeNode(grammarAccess.getSubSystemConfigAccess().getDynConfigDynamicConfigParserRuleCall_3_0());
+
+ pushFollow(FOLLOW_ruleDynamicConfig_in_ruleSubSystemConfig463);
+ lv_dynConfig_3_0=ruleDynamicConfig();
+
+ state._fsp--;
+
+
+ if (current==null) {
+ current = createModelElementForParent(grammarAccess.getSubSystemConfigRule());
+ }
+ set(
+ current,
+ "dynConfig",
+ lv_dynConfig_3_0,
+ "DynamicConfig");
+ afterParserOrEnumRuleCall();
+
+
+ }
+
+
+ }
+
+ otherlv_4=(Token)match(input,15,FOLLOW_15_in_ruleSubSystemConfig475);
+
+ newLeafNode(otherlv_4, grammarAccess.getSubSystemConfigAccess().getRightCurlyBracketKeyword_4());
+
+
+ }
+
+
+ }
+
+ leaveRule();
+ }
+
+ catch (RecognitionException re) {
+ recover(input,re);
+ appendSkippedTokens();
+ }
+ finally {
+ }
+ return current;
+ }
+ // $ANTLR end "ruleSubSystemConfig"
+
+
+ // $ANTLR start "entryRuleDynamicConfig"
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:248:1: entryRuleDynamicConfig returns [EObject current=null] : iv_ruleDynamicConfig= ruleDynamicConfig EOF ;
+ public final EObject entryRuleDynamicConfig() throws RecognitionException {
+ EObject current = null;
+
+ EObject iv_ruleDynamicConfig = null;
+
+
+ try {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:249:2: (iv_ruleDynamicConfig= ruleDynamicConfig EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:250:2: iv_ruleDynamicConfig= ruleDynamicConfig EOF
+ {
+ newCompositeNode(grammarAccess.getDynamicConfigRule());
+ pushFollow(FOLLOW_ruleDynamicConfig_in_entryRuleDynamicConfig511);
+ iv_ruleDynamicConfig=ruleDynamicConfig();
+
+ state._fsp--;
+
+ current =iv_ruleDynamicConfig;
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDynamicConfig521);
+
+ }
+
+ }
+
+ catch (RecognitionException re) {
+ recover(input,re);
+ appendSkippedTokens();
+ }
+ finally {
+ }
+ return current;
+ }
+ // $ANTLR end "entryRuleDynamicConfig"
+
+
+ // $ANTLR start "ruleDynamicConfig"
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:257:1: ruleDynamicConfig returns [EObject current=null] : (otherlv_0= 'dynamic configuration' otherlv_1= '{' ( ( ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?) ) ) otherlv_11= '}' ) ;
+ public final EObject ruleDynamicConfig() throws RecognitionException {
+ EObject current = null;
+
+ Token otherlv_0=null;
+ Token otherlv_1=null;
+ Token otherlv_3=null;
+ Token lv_filePath_4_0=null;
+ Token otherlv_5=null;
+ Token lv_userCode1_6_0=null;
+ Token otherlv_7=null;
+ Token lv_userCode2_8_0=null;
+ Token otherlv_9=null;
+ Token lv_polling_10_0=null;
+ Token otherlv_11=null;
+
+ enterRule();
+
+ try {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:260:28: ( (otherlv_0= 'dynamic configuration' otherlv_1= '{' ( ( ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?) ) ) otherlv_11= '}' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:261:1: (otherlv_0= 'dynamic configuration' otherlv_1= '{' ( ( ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?) ) ) otherlv_11= '}' )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:261:1: (otherlv_0= 'dynamic configuration' otherlv_1= '{' ( ( ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?) ) ) otherlv_11= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:261:3: otherlv_0= 'dynamic configuration' otherlv_1= '{' ( ( ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?) ) ) otherlv_11= '}'
+ {
+ otherlv_0=(Token)match(input,16,FOLLOW_16_in_ruleDynamicConfig558);
+
+ newLeafNode(otherlv_0, grammarAccess.getDynamicConfigAccess().getDynamicConfigurationKeyword_0());
+
+ otherlv_1=(Token)match(input,14,FOLLOW_14_in_ruleDynamicConfig570);
+
+ newLeafNode(otherlv_1, grammarAccess.getDynamicConfigAccess().getLeftCurlyBracketKeyword_1());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:269:1: ( ( ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:271:1: ( ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?) )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:271:1: ( ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:272:2: ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?)
+ {
+
+ getUnorderedGroupHelper().enter(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:275:2: ( ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?)
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:276:3: ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+ {...}?
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:276:3: ( ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) ) )+
+ int cnt5=0;
+ loop5:
+ do {
+ int alt5=3;
+ int LA5_0 = input.LA(1);
+
+ if ( LA5_0 >=17 && LA5_0<=18 && getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0) ) {
+ alt5=1;
+ }
+ else if ( LA5_0 ==20 && getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1) ) {
+ alt5=2;
+ }
+
+
+ switch (alt5) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:278:4: ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:278:4: ({...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:279:5: {...}? => ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) )
+ {
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0) ) {
+ throw new FailedPredicateException(input, "ruleDynamicConfig", "getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0)");
+ }
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:279:110: ( ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:280:6: ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) )
+ {
+
+ getUnorderedGroupHelper().select(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 0);
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:283:6: ({...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:283:7: {...}? => ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) )
+ {
+ if ( !((true)) ) {
+ throw new FailedPredicateException(input, "ruleDynamicConfig", "true");
+ }
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:283:16: ( (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) ) | ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) ) )
+ int alt4=2;
+ int LA4_0 = input.LA(1);
+
+ if ( (LA4_0==17) ) {
+ alt4=1;
+ }
+ else if ( (LA4_0==18) ) {
+ alt4=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 4, 0, input);
+
+ throw nvae;
+ }
+ switch (alt4) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:283:17: (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:283:17: (otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:283:19: otherlv_3= 'file path' ( (lv_filePath_4_0= RULE_STRING ) )
+ {
+ otherlv_3=(Token)match(input,17,FOLLOW_17_in_ruleDynamicConfig629);
+
+ newLeafNode(otherlv_3, grammarAccess.getDynamicConfigAccess().getFilePathKeyword_2_0_0_0());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:287:1: ( (lv_filePath_4_0= RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:288:1: (lv_filePath_4_0= RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:288:1: (lv_filePath_4_0= RULE_STRING )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:289:3: lv_filePath_4_0= RULE_STRING
+ {
+ lv_filePath_4_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleDynamicConfig646);
+
+ newLeafNode(lv_filePath_4_0, grammarAccess.getDynamicConfigAccess().getFilePathSTRINGTerminalRuleCall_2_0_0_1_0());
+
+
+ if (current==null) {
+ current = createModelElement(grammarAccess.getDynamicConfigRule());
+ }
+ setWithLastConsumed(
+ current,
+ "filePath",
+ lv_filePath_4_0,
+ "STRING");
+
+
+ }
+
+
+ }
+
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:306:6: ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:306:6: ( (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:306:7: (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) ) (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:306:7: (otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:306:9: otherlv_5= 'user import' ( (lv_userCode1_6_0= RULE_STRING ) )
+ {
+ otherlv_5=(Token)match(input,18,FOLLOW_18_in_ruleDynamicConfig672);
+
+ newLeafNode(otherlv_5, grammarAccess.getDynamicConfigAccess().getUserImportKeyword_2_0_1_0_0());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:310:1: ( (lv_userCode1_6_0= RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:311:1: (lv_userCode1_6_0= RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:311:1: (lv_userCode1_6_0= RULE_STRING )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:312:3: lv_userCode1_6_0= RULE_STRING
+ {
+ lv_userCode1_6_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleDynamicConfig689);
+
+ newLeafNode(lv_userCode1_6_0, grammarAccess.getDynamicConfigAccess().getUserCode1STRINGTerminalRuleCall_2_0_1_0_1_0());
+
+
+ if (current==null) {
+ current = createModelElement(grammarAccess.getDynamicConfigRule());
+ }
+ setWithLastConsumed(
+ current,
+ "userCode1",
+ lv_userCode1_6_0,
+ "STRING");
+
+
+ }
+
+
+ }
+
+
+ }
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:328:3: (otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:328:5: otherlv_7= 'user constructor' ( (lv_userCode2_8_0= RULE_STRING ) )
+ {
+ otherlv_7=(Token)match(input,19,FOLLOW_19_in_ruleDynamicConfig708);
+
+ newLeafNode(otherlv_7, grammarAccess.getDynamicConfigAccess().getUserConstructorKeyword_2_0_1_1_0());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:332:1: ( (lv_userCode2_8_0= RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:333:1: (lv_userCode2_8_0= RULE_STRING )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:333:1: (lv_userCode2_8_0= RULE_STRING )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:334:3: lv_userCode2_8_0= RULE_STRING
+ {
+ lv_userCode2_8_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleDynamicConfig725);
+
+ newLeafNode(lv_userCode2_8_0, grammarAccess.getDynamicConfigAccess().getUserCode2STRINGTerminalRuleCall_2_0_1_1_1_0());
+
+
+ if (current==null) {
+ current = createModelElement(grammarAccess.getDynamicConfigRule());
+ }
+ setWithLastConsumed(
+ current,
+ "userCode2",
+ lv_userCode2_8_0,
+ "STRING");
+
+
+ }
+
+
+ }
+
+
+ }
+
+
+ }
+
+
+ }
+ break;
+
+ }
+
+
+ }
+
+
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+
+
+ }
+
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:357:4: ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:357:4: ({...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:358:5: {...}? => ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) )
+ {
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1) ) {
+ throw new FailedPredicateException(input, "ruleDynamicConfig", "getUnorderedGroupHelper().canSelect(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1)");
+ }
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:358:110: ( ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:359:6: ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) )
+ {
+
+ getUnorderedGroupHelper().select(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2(), 1);
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:362:6: ({...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:362:7: {...}? => (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) )
+ {
+ if ( !((true)) ) {
+ throw new FailedPredicateException(input, "ruleDynamicConfig", "true");
+ }
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:362:16: (otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:362:18: otherlv_9= 'polling timer [ms]' ( (lv_polling_10_0= RULE_INT ) )
+ {
+ otherlv_9=(Token)match(input,20,FOLLOW_20_in_ruleDynamicConfig800);
+
+ newLeafNode(otherlv_9, grammarAccess.getDynamicConfigAccess().getPollingTimerMsKeyword_2_1_0());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:366:1: ( (lv_polling_10_0= RULE_INT ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:367:1: (lv_polling_10_0= RULE_INT )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:367:1: (lv_polling_10_0= RULE_INT )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:368:3: lv_polling_10_0= RULE_INT
+ {
+ lv_polling_10_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDynamicConfig817);
+
+ newLeafNode(lv_polling_10_0, grammarAccess.getDynamicConfigAccess().getPollingINTTerminalRuleCall_2_1_1_0());
+
+
+ if (current==null) {
+ current = createModelElement(grammarAccess.getDynamicConfigRule());
+ }
+ setWithLastConsumed(
+ current,
+ "polling",
+ lv_polling_10_0,
+ "INT");
+
+
+ }
+
+
+ }
+
+
+ }
+
+
+ }
+
+
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+
+
+ }
+
+
+ }
+
+
+ }
+ break;
+
+ default :
+ if ( cnt5 >= 1 ) break loop5;
+ EarlyExitException eee =
+ new EarlyExitException(5, input);
+ throw eee;
+ }
+ cnt5++;
+ } while (true);
+
+ if ( ! getUnorderedGroupHelper().canLeave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2()) ) {
+ throw new FailedPredicateException(input, "ruleDynamicConfig", "getUnorderedGroupHelper().canLeave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2())");
+ }
+
+ }
+
+
+ }
+
+
+ getUnorderedGroupHelper().leave(grammarAccess.getDynamicConfigAccess().getUnorderedGroup_2());
+
+
+ }
+
+ otherlv_11=(Token)match(input,15,FOLLOW_15_in_ruleDynamicConfig881);
+
+ newLeafNode(otherlv_11, grammarAccess.getDynamicConfigAccess().getRightCurlyBracketKeyword_3());
+
+
+ }
+
+
+ }
+
+ leaveRule();
+ }
+
+ catch (RecognitionException re) {
+ recover(input,re);
+ appendSkippedTokens();
+ }
+ finally {
+ }
+ return current;
+ }
+ // $ANTLR end "ruleDynamicConfig"
+
+
// $ANTLR start "entryRuleActorClassConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:174:1: entryRuleActorClassConfig returns [EObject current=null] : iv_ruleActorClassConfig= ruleActorClassConfig EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:411:1: entryRuleActorClassConfig returns [EObject current=null] : iv_ruleActorClassConfig= ruleActorClassConfig EOF ;
public final EObject entryRuleActorClassConfig() throws RecognitionException {
EObject current = null;
@@ -431,17 +1007,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:175:2: (iv_ruleActorClassConfig= ruleActorClassConfig EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:176:2: iv_ruleActorClassConfig= ruleActorClassConfig EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:412:2: (iv_ruleActorClassConfig= ruleActorClassConfig EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:413:2: iv_ruleActorClassConfig= ruleActorClassConfig EOF
{
newCompositeNode(grammarAccess.getActorClassConfigRule());
- pushFollow(FOLLOW_ruleActorClassConfig_in_entryRuleActorClassConfig336);
+ pushFollow(FOLLOW_ruleActorClassConfig_in_entryRuleActorClassConfig917);
iv_ruleActorClassConfig=ruleActorClassConfig();
state._fsp--;
current =iv_ruleActorClassConfig;
- match(input,EOF,FOLLOW_EOF_in_entryRuleActorClassConfig346);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleActorClassConfig927);
}
@@ -459,7 +1035,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleActorClassConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:183:1: ruleActorClassConfig returns [EObject current=null] : (otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:420:1: ruleActorClassConfig returns [EObject current=null] : (otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' ) ;
public final EObject ruleActorClassConfig() throws RecognitionException {
EObject current = null;
@@ -472,21 +1048,21 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:186:28: ( (otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:187:1: (otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:423:28: ( (otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:424:1: (otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:187:1: (otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:187:3: otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:424:1: (otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:424:3: otherlv_0= 'ActorClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}'
{
- otherlv_0=(Token)match(input,12,FOLLOW_12_in_ruleActorClassConfig383);
+ otherlv_0=(Token)match(input,21,FOLLOW_21_in_ruleActorClassConfig964);
newLeafNode(otherlv_0, grammarAccess.getActorClassConfigAccess().getActorClassConfigKeyword_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:191:1: ( ( ruleFQN ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:192:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:428:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:429:1: ( ruleFQN )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:192:1: ( ruleFQN )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:193:3: ruleFQN
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:429:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:430:3: ruleFQN
{
if (current==null) {
@@ -496,7 +1072,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
newCompositeNode(grammarAccess.getActorClassConfigAccess().getActorActorClassCrossReference_1_0());
- pushFollow(FOLLOW_ruleFQN_in_ruleActorClassConfig406);
+ pushFollow(FOLLOW_ruleFQN_in_ruleActorClassConfig987);
ruleFQN();
state._fsp--;
@@ -510,32 +1086,32 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- otherlv_2=(Token)match(input,13,FOLLOW_13_in_ruleActorClassConfig418);
+ otherlv_2=(Token)match(input,14,FOLLOW_14_in_ruleActorClassConfig999);
newLeafNode(otherlv_2, grammarAccess.getActorClassConfigAccess().getLeftCurlyBracketKeyword_2());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:210:1: ( (lv_attributes_3_0= ruleAttrClassConfig ) )*
- loop4:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:447:1: ( (lv_attributes_3_0= ruleAttrClassConfig ) )*
+ loop6:
do {
- int alt4=2;
- int LA4_0 = input.LA(1);
+ int alt6=2;
+ int LA6_0 = input.LA(1);
- if ( (LA4_0==22) ) {
- alt4=1;
+ if ( (LA6_0==29) ) {
+ alt6=1;
}
- switch (alt4) {
+ switch (alt6) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:211:1: (lv_attributes_3_0= ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:448:1: (lv_attributes_3_0= ruleAttrClassConfig )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:211:1: (lv_attributes_3_0= ruleAttrClassConfig )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:212:3: lv_attributes_3_0= ruleAttrClassConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:448:1: (lv_attributes_3_0= ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:449:3: lv_attributes_3_0= ruleAttrClassConfig
{
newCompositeNode(grammarAccess.getActorClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
- pushFollow(FOLLOW_ruleAttrClassConfig_in_ruleActorClassConfig439);
+ pushFollow(FOLLOW_ruleAttrClassConfig_in_ruleActorClassConfig1020);
lv_attributes_3_0=ruleAttrClassConfig();
state._fsp--;
@@ -559,11 +1135,11 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
default :
- break loop4;
+ break loop6;
}
} while (true);
- otherlv_4=(Token)match(input,14,FOLLOW_14_in_ruleActorClassConfig452);
+ otherlv_4=(Token)match(input,15,FOLLOW_15_in_ruleActorClassConfig1033);
newLeafNode(otherlv_4, grammarAccess.getActorClassConfigAccess().getRightCurlyBracketKeyword_4());
@@ -588,7 +1164,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleActorInstanceConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:240:1: entryRuleActorInstanceConfig returns [EObject current=null] : iv_ruleActorInstanceConfig= ruleActorInstanceConfig EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:477:1: entryRuleActorInstanceConfig returns [EObject current=null] : iv_ruleActorInstanceConfig= ruleActorInstanceConfig EOF ;
public final EObject entryRuleActorInstanceConfig() throws RecognitionException {
EObject current = null;
@@ -596,17 +1172,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:241:2: (iv_ruleActorInstanceConfig= ruleActorInstanceConfig EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:242:2: iv_ruleActorInstanceConfig= ruleActorInstanceConfig EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:478:2: (iv_ruleActorInstanceConfig= ruleActorInstanceConfig EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:479:2: iv_ruleActorInstanceConfig= ruleActorInstanceConfig EOF
{
newCompositeNode(grammarAccess.getActorInstanceConfigRule());
- pushFollow(FOLLOW_ruleActorInstanceConfig_in_entryRuleActorInstanceConfig488);
+ pushFollow(FOLLOW_ruleActorInstanceConfig_in_entryRuleActorInstanceConfig1069);
iv_ruleActorInstanceConfig=ruleActorInstanceConfig();
state._fsp--;
current =iv_ruleActorInstanceConfig;
- match(input,EOF,FOLLOW_EOF_in_entryRuleActorInstanceConfig498);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleActorInstanceConfig1079);
}
@@ -624,39 +1200,39 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleActorInstanceConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:249:1: ruleActorInstanceConfig returns [EObject current=null] : (otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( (lv_attributes_5_0= ruleAttrInstanceConfig ) )* ( (lv_ports_6_0= rulePortInstanceConfig ) )* otherlv_7= '}' ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:486:1: ruleActorInstanceConfig returns [EObject current=null] : (otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* ) ) ) otherlv_8= '}' ) ;
public final EObject ruleActorInstanceConfig() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
Token otherlv_4=null;
- Token otherlv_7=null;
+ Token otherlv_8=null;
EObject lv_path_3_0 = null;
- EObject lv_attributes_5_0 = null;
+ EObject lv_attributes_6_0 = null;
- EObject lv_ports_6_0 = null;
+ EObject lv_ports_7_0 = null;
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:252:28: ( (otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( (lv_attributes_5_0= ruleAttrInstanceConfig ) )* ( (lv_ports_6_0= rulePortInstanceConfig ) )* otherlv_7= '}' ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:253:1: (otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( (lv_attributes_5_0= ruleAttrInstanceConfig ) )* ( (lv_ports_6_0= rulePortInstanceConfig ) )* otherlv_7= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:489:28: ( (otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* ) ) ) otherlv_8= '}' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:490:1: (otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* ) ) ) otherlv_8= '}' )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:253:1: (otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( (lv_attributes_5_0= ruleAttrInstanceConfig ) )* ( (lv_ports_6_0= rulePortInstanceConfig ) )* otherlv_7= '}' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:253:3: otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( (lv_attributes_5_0= ruleAttrInstanceConfig ) )* ( (lv_ports_6_0= rulePortInstanceConfig ) )* otherlv_7= '}'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:490:1: (otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* ) ) ) otherlv_8= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:490:3: otherlv_0= 'ActorInstanceConfig' ( ( ruleFQN ) ) otherlv_2= '/' ( (lv_path_3_0= ruleRefPath ) ) otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* ) ) ) otherlv_8= '}'
{
- otherlv_0=(Token)match(input,15,FOLLOW_15_in_ruleActorInstanceConfig535);
+ otherlv_0=(Token)match(input,22,FOLLOW_22_in_ruleActorInstanceConfig1116);
newLeafNode(otherlv_0, grammarAccess.getActorInstanceConfigAccess().getActorInstanceConfigKeyword_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:257:1: ( ( ruleFQN ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:258:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:494:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:495:1: ( ruleFQN )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:258:1: ( ruleFQN )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:259:3: ruleFQN
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:495:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:496:3: ruleFQN
{
if (current==null) {
@@ -666,7 +1242,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getRootSubSystemClassCrossReference_1_0());
- pushFollow(FOLLOW_ruleFQN_in_ruleActorInstanceConfig558);
+ pushFollow(FOLLOW_ruleFQN_in_ruleActorInstanceConfig1139);
ruleFQN();
state._fsp--;
@@ -680,20 +1256,20 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- otherlv_2=(Token)match(input,16,FOLLOW_16_in_ruleActorInstanceConfig570);
+ otherlv_2=(Token)match(input,23,FOLLOW_23_in_ruleActorInstanceConfig1151);
newLeafNode(otherlv_2, grammarAccess.getActorInstanceConfigAccess().getSolidusKeyword_2());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:276:1: ( (lv_path_3_0= ruleRefPath ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:277:1: (lv_path_3_0= ruleRefPath )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:513:1: ( (lv_path_3_0= ruleRefPath ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:514:1: (lv_path_3_0= ruleRefPath )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:277:1: (lv_path_3_0= ruleRefPath )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:278:3: lv_path_3_0= ruleRefPath
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:514:1: (lv_path_3_0= ruleRefPath )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:515:3: lv_path_3_0= ruleRefPath
{
newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getPathRefPathParserRuleCall_3_0());
- pushFollow(FOLLOW_ruleRefPath_in_ruleActorInstanceConfig591);
+ pushFollow(FOLLOW_ruleRefPath_in_ruleActorInstanceConfig1172);
lv_path_3_0=ruleRefPath();
state._fsp--;
@@ -715,96 +1291,223 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- otherlv_4=(Token)match(input,13,FOLLOW_13_in_ruleActorInstanceConfig603);
+ otherlv_4=(Token)match(input,14,FOLLOW_14_in_ruleActorInstanceConfig1184);
newLeafNode(otherlv_4, grammarAccess.getActorInstanceConfigAccess().getLeftCurlyBracketKeyword_4());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:298:1: ( (lv_attributes_5_0= ruleAttrInstanceConfig ) )*
- loop5:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:535:1: ( ( ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:537:1: ( ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* ) )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:537:1: ( ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:538:2: ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* )
+ {
+
+ getUnorderedGroupHelper().enter(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:541:2: ( ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:542:3: ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )*
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:542:3: ( ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) ) | ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) ) )*
+ loop9:
do {
- int alt5=2;
- int LA5_0 = input.LA(1);
+ int alt9=3;
+ int LA9_0 = input.LA(1);
- if ( (LA5_0==22) ) {
- alt5=1;
+ if ( LA9_0 ==29 && getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0) ) {
+ alt9=1;
+ }
+ else if ( LA9_0 ==28 && getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1) ) {
+ alt9=2;
}
- switch (alt5) {
+ switch (alt9) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:299:1: (lv_attributes_5_0= ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:544:4: ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:299:1: (lv_attributes_5_0= ruleAttrInstanceConfig )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:300:3: lv_attributes_5_0= ruleAttrInstanceConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:544:4: ({...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:545:5: {...}? => ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ )
+ {
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0) ) {
+ throw new FailedPredicateException(input, "ruleActorInstanceConfig", "getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0)");
+ }
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:545:116: ( ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+ )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:546:6: ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+
{
- newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0());
-
- pushFollow(FOLLOW_ruleAttrInstanceConfig_in_ruleActorInstanceConfig624);
- lv_attributes_5_0=ruleAttrInstanceConfig();
+ getUnorderedGroupHelper().select(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 0);
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:549:6: ({...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) ) )+
+ int cnt7=0;
+ loop7:
+ do {
+ int alt7=2;
+ int LA7_0 = input.LA(1);
- state._fsp--;
+ if ( (LA7_0==29) ) {
+ int LA7_2 = input.LA(2);
+ if ( ((true)) ) {
+ alt7=1;
+ }
- if (current==null) {
- current = createModelElementForParent(grammarAccess.getActorInstanceConfigRule());
- }
- add(
- current,
- "attributes",
- lv_attributes_5_0,
- "AttrInstanceConfig");
- afterParserOrEnumRuleCall();
-
- }
+ }
- }
- break;
+ switch (alt7) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:549:7: {...}? => ( (lv_attributes_6_0= ruleAttrInstanceConfig ) )
+ {
+ if ( !((true)) ) {
+ throw new FailedPredicateException(input, "ruleActorInstanceConfig", "true");
+ }
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:549:16: ( (lv_attributes_6_0= ruleAttrInstanceConfig ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:550:1: (lv_attributes_6_0= ruleAttrInstanceConfig )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:550:1: (lv_attributes_6_0= ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:551:3: lv_attributes_6_0= ruleAttrInstanceConfig
+ {
+
+ newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_5_0_0());
+
+ pushFollow(FOLLOW_ruleAttrInstanceConfig_in_ruleActorInstanceConfig1250);
+ lv_attributes_6_0=ruleAttrInstanceConfig();
+
+ state._fsp--;
+
+
+ if (current==null) {
+ current = createModelElementForParent(grammarAccess.getActorInstanceConfigRule());
+ }
+ add(
+ current,
+ "attributes",
+ lv_attributes_6_0,
+ "AttrInstanceConfig");
+ afterParserOrEnumRuleCall();
+
+
+ }
+
+
+ }
+
+
+ }
+ break;
+
+ default :
+ if ( cnt7 >= 1 ) break loop7;
+ EarlyExitException eee =
+ new EarlyExitException(7, input);
+ throw eee;
+ }
+ cnt7++;
+ } while (true);
- default :
- break loop5;
- }
- } while (true);
+
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:316:3: ( (lv_ports_6_0= rulePortInstanceConfig ) )*
- loop6:
- do {
- int alt6=2;
- int LA6_0 = input.LA(1);
+ }
- if ( (LA6_0==21) ) {
- alt6=1;
- }
+ }
- switch (alt6) {
- case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:317:1: (lv_ports_6_0= rulePortInstanceConfig )
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:574:4: ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:317:1: (lv_ports_6_0= rulePortInstanceConfig )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:318:3: lv_ports_6_0= rulePortInstanceConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:574:4: ({...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:575:5: {...}? => ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ )
+ {
+ if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1) ) {
+ throw new FailedPredicateException(input, "ruleActorInstanceConfig", "getUnorderedGroupHelper().canSelect(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1)");
+ }
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:575:116: ( ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+ )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:576:6: ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+
{
- newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_6_0());
-
- pushFollow(FOLLOW_rulePortInstanceConfig_in_ruleActorInstanceConfig646);
- lv_ports_6_0=rulePortInstanceConfig();
+ getUnorderedGroupHelper().select(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5(), 1);
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:579:6: ({...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) ) )+
+ int cnt8=0;
+ loop8:
+ do {
+ int alt8=2;
+ int LA8_0 = input.LA(1);
- state._fsp--;
+ if ( (LA8_0==28) ) {
+ int LA8_2 = input.LA(2);
+ if ( ((true)) ) {
+ alt8=1;
+ }
+
+
+ }
+
+
+ switch (alt8) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:579:7: {...}? => ( (lv_ports_7_0= rulePortInstanceConfig ) )
+ {
+ if ( !((true)) ) {
+ throw new FailedPredicateException(input, "ruleActorInstanceConfig", "true");
+ }
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:579:16: ( (lv_ports_7_0= rulePortInstanceConfig ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:580:1: (lv_ports_7_0= rulePortInstanceConfig )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:580:1: (lv_ports_7_0= rulePortInstanceConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:581:3: lv_ports_7_0= rulePortInstanceConfig
+ {
+
+ newCompositeNode(grammarAccess.getActorInstanceConfigAccess().getPortsPortInstanceConfigParserRuleCall_5_1_0());
+
+ pushFollow(FOLLOW_rulePortInstanceConfig_in_ruleActorInstanceConfig1326);
+ lv_ports_7_0=rulePortInstanceConfig();
+
+ state._fsp--;
+
+
+ if (current==null) {
+ current = createModelElementForParent(grammarAccess.getActorInstanceConfigRule());
+ }
+ add(
+ current,
+ "ports",
+ lv_ports_7_0,
+ "PortInstanceConfig");
+ afterParserOrEnumRuleCall();
+
+
+ }
+
+
+ }
+
+
+ }
+ break;
+
+ default :
+ if ( cnt8 >= 1 ) break loop8;
+ EarlyExitException eee =
+ new EarlyExitException(8, input);
+ throw eee;
+ }
+ cnt8++;
+ } while (true);
+
+
+ getUnorderedGroupHelper().returnFromSelection(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+
+
+ }
- if (current==null) {
- current = createModelElementForParent(grammarAccess.getActorInstanceConfigRule());
- }
- add(
- current,
- "ports",
- lv_ports_6_0,
- "PortInstanceConfig");
- afterParserOrEnumRuleCall();
-
}
@@ -813,13 +1516,25 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
default :
- break loop6;
+ break loop9;
}
} while (true);
- otherlv_7=(Token)match(input,14,FOLLOW_14_in_ruleActorInstanceConfig659);
- newLeafNode(otherlv_7, grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_7());
+ }
+
+
+ }
+
+
+ getUnorderedGroupHelper().leave(grammarAccess.getActorInstanceConfigAccess().getUnorderedGroup_5());
+
+
+ }
+
+ otherlv_8=(Token)match(input,15,FOLLOW_15_in_ruleActorInstanceConfig1379);
+
+ newLeafNode(otherlv_8, grammarAccess.getActorInstanceConfigAccess().getRightCurlyBracketKeyword_6());
}
@@ -842,7 +1557,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleProtocolClassConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:346:1: entryRuleProtocolClassConfig returns [EObject current=null] : iv_ruleProtocolClassConfig= ruleProtocolClassConfig EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:623:1: entryRuleProtocolClassConfig returns [EObject current=null] : iv_ruleProtocolClassConfig= ruleProtocolClassConfig EOF ;
public final EObject entryRuleProtocolClassConfig() throws RecognitionException {
EObject current = null;
@@ -850,17 +1565,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:347:2: (iv_ruleProtocolClassConfig= ruleProtocolClassConfig EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:348:2: iv_ruleProtocolClassConfig= ruleProtocolClassConfig EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:624:2: (iv_ruleProtocolClassConfig= ruleProtocolClassConfig EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:625:2: iv_ruleProtocolClassConfig= ruleProtocolClassConfig EOF
{
newCompositeNode(grammarAccess.getProtocolClassConfigRule());
- pushFollow(FOLLOW_ruleProtocolClassConfig_in_entryRuleProtocolClassConfig695);
+ pushFollow(FOLLOW_ruleProtocolClassConfig_in_entryRuleProtocolClassConfig1415);
iv_ruleProtocolClassConfig=ruleProtocolClassConfig();
state._fsp--;
current =iv_ruleProtocolClassConfig;
- match(input,EOF,FOLLOW_EOF_in_entryRuleProtocolClassConfig705);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleProtocolClassConfig1425);
}
@@ -878,7 +1593,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleProtocolClassConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:355:1: ruleProtocolClassConfig returns [EObject current=null] : (otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}' ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:632:1: ruleProtocolClassConfig returns [EObject current=null] : (otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}' ) ;
public final EObject ruleProtocolClassConfig() throws RecognitionException {
EObject current = null;
@@ -895,21 +1610,21 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:358:28: ( (otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}' ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:359:1: (otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:635:28: ( (otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:636:1: (otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}' )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:359:1: (otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:359:3: otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:636:1: (otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:636:3: otherlv_0= 'ProtocolClassConfig' ( ( ruleFQN ) ) otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) ) otherlv_8= '}'
{
- otherlv_0=(Token)match(input,17,FOLLOW_17_in_ruleProtocolClassConfig742);
+ otherlv_0=(Token)match(input,24,FOLLOW_24_in_ruleProtocolClassConfig1462);
newLeafNode(otherlv_0, grammarAccess.getProtocolClassConfigAccess().getProtocolClassConfigKeyword_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:363:1: ( ( ruleFQN ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:364:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:640:1: ( ( ruleFQN ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:641:1: ( ruleFQN )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:364:1: ( ruleFQN )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:365:3: ruleFQN
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:641:1: ( ruleFQN )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:642:3: ruleFQN
{
if (current==null) {
@@ -919,7 +1634,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
newCompositeNode(grammarAccess.getProtocolClassConfigAccess().getProtocolProtocolClassCrossReference_1_0());
- pushFollow(FOLLOW_ruleFQN_in_ruleProtocolClassConfig765);
+ pushFollow(FOLLOW_ruleFQN_in_ruleProtocolClassConfig1485);
ruleFQN();
state._fsp--;
@@ -933,75 +1648,75 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- otherlv_2=(Token)match(input,13,FOLLOW_13_in_ruleProtocolClassConfig777);
+ otherlv_2=(Token)match(input,14,FOLLOW_14_in_ruleProtocolClassConfig1497);
newLeafNode(otherlv_2, grammarAccess.getProtocolClassConfigAccess().getLeftCurlyBracketKeyword_2());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:382:1: ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:384:1: ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:659:1: ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:661:1: ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:384:1: ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:385:2: ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:661:1: ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:662:2: ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* )
{
getUnorderedGroupHelper().enter(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:388:2: ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:389:3: ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )*
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:665:2: ( ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:666:3: ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )*
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:389:3: ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )*
- loop7:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:666:3: ( ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) ) )*
+ loop10:
do {
- int alt7=3;
- int LA7_0 = input.LA(1);
+ int alt10=3;
+ int LA10_0 = input.LA(1);
- if ( LA7_0 ==18 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
- alt7=1;
+ if ( LA10_0 ==25 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
+ alt10=1;
}
- else if ( LA7_0 ==19 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
- alt7=2;
+ else if ( LA10_0 ==26 && getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
+ alt10=2;
}
- switch (alt7) {
+ switch (alt10) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:391:4: ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:668:4: ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:391:4: ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:392:5: {...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:668:4: ({...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:669:5: {...}? => ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0) ) {
throw new FailedPredicateException(input, "ruleProtocolClassConfig", "getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0)");
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:392:116: ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:393:6: ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:669:116: ( ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:670:6: ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) )
{
getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 0);
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:396:6: ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:396:7: {...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:673:6: ({...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:673:7: {...}? => (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleProtocolClassConfig", "true");
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:396:16: (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:396:18: otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:673:16: (otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:673:18: otherlv_4= 'regular' ( (lv_regular_5_0= rulePortClassConfig ) )
{
- otherlv_4=(Token)match(input,18,FOLLOW_18_in_ruleProtocolClassConfig835);
+ otherlv_4=(Token)match(input,25,FOLLOW_25_in_ruleProtocolClassConfig1555);
newLeafNode(otherlv_4, grammarAccess.getProtocolClassConfigAccess().getRegularKeyword_3_0_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:400:1: ( (lv_regular_5_0= rulePortClassConfig ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:401:1: (lv_regular_5_0= rulePortClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:677:1: ( (lv_regular_5_0= rulePortClassConfig ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:678:1: (lv_regular_5_0= rulePortClassConfig )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:401:1: (lv_regular_5_0= rulePortClassConfig )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:402:3: lv_regular_5_0= rulePortClassConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:678:1: (lv_regular_5_0= rulePortClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:679:3: lv_regular_5_0= rulePortClassConfig
{
newCompositeNode(grammarAccess.getProtocolClassConfigAccess().getRegularPortClassConfigParserRuleCall_3_0_1_0());
- pushFollow(FOLLOW_rulePortClassConfig_in_ruleProtocolClassConfig856);
+ pushFollow(FOLLOW_rulePortClassConfig_in_ruleProtocolClassConfig1576);
lv_regular_5_0=rulePortClassConfig();
state._fsp--;
@@ -1042,43 +1757,43 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:425:4: ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:702:4: ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:425:4: ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:426:5: {...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:702:4: ({...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:703:5: {...}? => ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1) ) {
throw new FailedPredicateException(input, "ruleProtocolClassConfig", "getUnorderedGroupHelper().canSelect(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1)");
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:426:116: ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:427:6: ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:703:116: ( ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:704:6: ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) )
{
getUnorderedGroupHelper().select(grammarAccess.getProtocolClassConfigAccess().getUnorderedGroup_3(), 1);
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:430:6: ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:430:7: {...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:707:6: ({...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:707:7: {...}? => (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleProtocolClassConfig", "true");
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:430:16: (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:430:18: otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:707:16: (otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:707:18: otherlv_6= 'conjugate' ( (lv_conjugated_7_0= rulePortClassConfig ) )
{
- otherlv_6=(Token)match(input,19,FOLLOW_19_in_ruleProtocolClassConfig924);
+ otherlv_6=(Token)match(input,26,FOLLOW_26_in_ruleProtocolClassConfig1644);
newLeafNode(otherlv_6, grammarAccess.getProtocolClassConfigAccess().getConjugateKeyword_3_1_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:434:1: ( (lv_conjugated_7_0= rulePortClassConfig ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:435:1: (lv_conjugated_7_0= rulePortClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:711:1: ( (lv_conjugated_7_0= rulePortClassConfig ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:712:1: (lv_conjugated_7_0= rulePortClassConfig )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:435:1: (lv_conjugated_7_0= rulePortClassConfig )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:436:3: lv_conjugated_7_0= rulePortClassConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:712:1: (lv_conjugated_7_0= rulePortClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:713:3: lv_conjugated_7_0= rulePortClassConfig
{
newCompositeNode(grammarAccess.getProtocolClassConfigAccess().getConjugatedPortClassConfigParserRuleCall_3_1_1_0());
- pushFollow(FOLLOW_rulePortClassConfig_in_ruleProtocolClassConfig945);
+ pushFollow(FOLLOW_rulePortClassConfig_in_ruleProtocolClassConfig1665);
lv_conjugated_7_0=rulePortClassConfig();
state._fsp--;
@@ -1120,7 +1835,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
default :
- break loop7;
+ break loop10;
}
} while (true);
@@ -1136,7 +1851,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- otherlv_8=(Token)match(input,14,FOLLOW_14_in_ruleProtocolClassConfig998);
+ otherlv_8=(Token)match(input,15,FOLLOW_15_in_ruleProtocolClassConfig1718);
newLeafNode(otherlv_8, grammarAccess.getProtocolClassConfigAccess().getRightCurlyBracketKeyword_4());
@@ -1161,7 +1876,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRulePortClassConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:478:1: entryRulePortClassConfig returns [EObject current=null] : iv_rulePortClassConfig= rulePortClassConfig EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:755:1: entryRulePortClassConfig returns [EObject current=null] : iv_rulePortClassConfig= rulePortClassConfig EOF ;
public final EObject entryRulePortClassConfig() throws RecognitionException {
EObject current = null;
@@ -1169,17 +1884,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:479:2: (iv_rulePortClassConfig= rulePortClassConfig EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:480:2: iv_rulePortClassConfig= rulePortClassConfig EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:756:2: (iv_rulePortClassConfig= rulePortClassConfig EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:757:2: iv_rulePortClassConfig= rulePortClassConfig EOF
{
newCompositeNode(grammarAccess.getPortClassConfigRule());
- pushFollow(FOLLOW_rulePortClassConfig_in_entryRulePortClassConfig1034);
+ pushFollow(FOLLOW_rulePortClassConfig_in_entryRulePortClassConfig1754);
iv_rulePortClassConfig=rulePortClassConfig();
state._fsp--;
current =iv_rulePortClassConfig;
- match(input,EOF,FOLLOW_EOF_in_entryRulePortClassConfig1044);
+ match(input,EOF,FOLLOW_EOF_in_entryRulePortClassConfig1764);
}
@@ -1197,7 +1912,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "rulePortClassConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:487:1: rulePortClassConfig returns [EObject current=null] : ( () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:764:1: rulePortClassConfig returns [EObject current=null] : ( () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' ) ;
public final EObject rulePortClassConfig() throws RecognitionException {
EObject current = null;
@@ -1210,14 +1925,14 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:490:28: ( ( () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:491:1: ( () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:767:28: ( ( () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:768:1: ( () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:491:1: ( () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:491:2: () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:768:1: ( () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:768:2: () otherlv_1= 'Port' otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrClassConfig ) )* otherlv_4= '}'
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:491:2: ()
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:492:5:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:768:2: ()
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:769:5:
{
current = forceCreateModelElement(
@@ -1227,36 +1942,36 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- otherlv_1=(Token)match(input,20,FOLLOW_20_in_rulePortClassConfig1090);
+ otherlv_1=(Token)match(input,27,FOLLOW_27_in_rulePortClassConfig1810);
newLeafNode(otherlv_1, grammarAccess.getPortClassConfigAccess().getPortKeyword_1());
- otherlv_2=(Token)match(input,13,FOLLOW_13_in_rulePortClassConfig1102);
+ otherlv_2=(Token)match(input,14,FOLLOW_14_in_rulePortClassConfig1822);
newLeafNode(otherlv_2, grammarAccess.getPortClassConfigAccess().getLeftCurlyBracketKeyword_2());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:505:1: ( (lv_attributes_3_0= ruleAttrClassConfig ) )*
- loop8:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:782:1: ( (lv_attributes_3_0= ruleAttrClassConfig ) )*
+ loop11:
do {
- int alt8=2;
- int LA8_0 = input.LA(1);
+ int alt11=2;
+ int LA11_0 = input.LA(1);
- if ( (LA8_0==22) ) {
- alt8=1;
+ if ( (LA11_0==29) ) {
+ alt11=1;
}
- switch (alt8) {
+ switch (alt11) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:506:1: (lv_attributes_3_0= ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:783:1: (lv_attributes_3_0= ruleAttrClassConfig )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:506:1: (lv_attributes_3_0= ruleAttrClassConfig )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:507:3: lv_attributes_3_0= ruleAttrClassConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:783:1: (lv_attributes_3_0= ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:784:3: lv_attributes_3_0= ruleAttrClassConfig
{
newCompositeNode(grammarAccess.getPortClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_0());
- pushFollow(FOLLOW_ruleAttrClassConfig_in_rulePortClassConfig1123);
+ pushFollow(FOLLOW_ruleAttrClassConfig_in_rulePortClassConfig1843);
lv_attributes_3_0=ruleAttrClassConfig();
state._fsp--;
@@ -1280,11 +1995,11 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
default :
- break loop8;
+ break loop11;
}
} while (true);
- otherlv_4=(Token)match(input,14,FOLLOW_14_in_rulePortClassConfig1136);
+ otherlv_4=(Token)match(input,15,FOLLOW_15_in_rulePortClassConfig1856);
newLeafNode(otherlv_4, grammarAccess.getPortClassConfigAccess().getRightCurlyBracketKeyword_4());
@@ -1309,7 +2024,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRulePortInstanceConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:535:1: entryRulePortInstanceConfig returns [EObject current=null] : iv_rulePortInstanceConfig= rulePortInstanceConfig EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:812:1: entryRulePortInstanceConfig returns [EObject current=null] : iv_rulePortInstanceConfig= rulePortInstanceConfig EOF ;
public final EObject entryRulePortInstanceConfig() throws RecognitionException {
EObject current = null;
@@ -1317,17 +2032,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:536:2: (iv_rulePortInstanceConfig= rulePortInstanceConfig EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:537:2: iv_rulePortInstanceConfig= rulePortInstanceConfig EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:813:2: (iv_rulePortInstanceConfig= rulePortInstanceConfig EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:814:2: iv_rulePortInstanceConfig= rulePortInstanceConfig EOF
{
newCompositeNode(grammarAccess.getPortInstanceConfigRule());
- pushFollow(FOLLOW_rulePortInstanceConfig_in_entryRulePortInstanceConfig1172);
+ pushFollow(FOLLOW_rulePortInstanceConfig_in_entryRulePortInstanceConfig1892);
iv_rulePortInstanceConfig=rulePortInstanceConfig();
state._fsp--;
current =iv_rulePortInstanceConfig;
- match(input,EOF,FOLLOW_EOF_in_entryRulePortInstanceConfig1182);
+ match(input,EOF,FOLLOW_EOF_in_entryRulePortInstanceConfig1902);
}
@@ -1345,7 +2060,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "rulePortInstanceConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:544:1: rulePortInstanceConfig returns [EObject current=null] : (otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}' ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:821:1: rulePortInstanceConfig returns [EObject current=null] : (otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}' ) ;
public final EObject rulePortInstanceConfig() throws RecognitionException {
EObject current = null;
@@ -1359,28 +2074,28 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:547:28: ( (otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}' ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:548:1: (otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:824:28: ( (otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:825:1: (otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}' )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:548:1: (otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:548:3: otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:825:1: (otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:825:3: otherlv_0= 'InterfaceItem' ( (otherlv_1= RULE_ID ) ) otherlv_2= '{' ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )* otherlv_4= '}'
{
- otherlv_0=(Token)match(input,21,FOLLOW_21_in_rulePortInstanceConfig1219);
+ otherlv_0=(Token)match(input,28,FOLLOW_28_in_rulePortInstanceConfig1939);
newLeafNode(otherlv_0, grammarAccess.getPortInstanceConfigAccess().getInterfaceItemKeyword_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:552:1: ( (otherlv_1= RULE_ID ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:553:1: (otherlv_1= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:829:1: ( (otherlv_1= RULE_ID ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:830:1: (otherlv_1= RULE_ID )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:553:1: (otherlv_1= RULE_ID )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:554:3: otherlv_1= RULE_ID
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:830:1: (otherlv_1= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:831:3: otherlv_1= RULE_ID
{
if (current==null) {
current = createModelElement(grammarAccess.getPortInstanceConfigRule());
}
- otherlv_1=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_rulePortInstanceConfig1239);
+ otherlv_1=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_rulePortInstanceConfig1959);
newLeafNode(otherlv_1, grammarAccess.getPortInstanceConfigAccess().getItemInterfaceItemCrossReference_1_0());
@@ -1390,32 +2105,32 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- otherlv_2=(Token)match(input,13,FOLLOW_13_in_rulePortInstanceConfig1251);
+ otherlv_2=(Token)match(input,14,FOLLOW_14_in_rulePortInstanceConfig1971);
newLeafNode(otherlv_2, grammarAccess.getPortInstanceConfigAccess().getLeftCurlyBracketKeyword_2());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:569:1: ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )*
- loop9:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:846:1: ( (lv_attributes_3_0= ruleAttrInstanceConfig ) )*
+ loop12:
do {
- int alt9=2;
- int LA9_0 = input.LA(1);
+ int alt12=2;
+ int LA12_0 = input.LA(1);
- if ( (LA9_0==22) ) {
- alt9=1;
+ if ( (LA12_0==29) ) {
+ alt12=1;
}
- switch (alt9) {
+ switch (alt12) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:570:1: (lv_attributes_3_0= ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:847:1: (lv_attributes_3_0= ruleAttrInstanceConfig )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:570:1: (lv_attributes_3_0= ruleAttrInstanceConfig )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:571:3: lv_attributes_3_0= ruleAttrInstanceConfig
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:847:1: (lv_attributes_3_0= ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:848:3: lv_attributes_3_0= ruleAttrInstanceConfig
{
newCompositeNode(grammarAccess.getPortInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_0());
- pushFollow(FOLLOW_ruleAttrInstanceConfig_in_rulePortInstanceConfig1272);
+ pushFollow(FOLLOW_ruleAttrInstanceConfig_in_rulePortInstanceConfig1992);
lv_attributes_3_0=ruleAttrInstanceConfig();
state._fsp--;
@@ -1439,11 +2154,11 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
default :
- break loop9;
+ break loop12;
}
} while (true);
- otherlv_4=(Token)match(input,14,FOLLOW_14_in_rulePortInstanceConfig1285);
+ otherlv_4=(Token)match(input,15,FOLLOW_15_in_rulePortInstanceConfig2005);
newLeafNode(otherlv_4, grammarAccess.getPortInstanceConfigAccess().getRightCurlyBracketKeyword_4());
@@ -1468,7 +2183,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleAttrClassConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:601:1: entryRuleAttrClassConfig returns [EObject current=null] : iv_ruleAttrClassConfig= ruleAttrClassConfig EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:878:1: entryRuleAttrClassConfig returns [EObject current=null] : iv_ruleAttrClassConfig= ruleAttrClassConfig EOF ;
public final EObject entryRuleAttrClassConfig() throws RecognitionException {
EObject current = null;
@@ -1476,17 +2191,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:602:2: (iv_ruleAttrClassConfig= ruleAttrClassConfig EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:603:2: iv_ruleAttrClassConfig= ruleAttrClassConfig EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:879:2: (iv_ruleAttrClassConfig= ruleAttrClassConfig EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:880:2: iv_ruleAttrClassConfig= ruleAttrClassConfig EOF
{
newCompositeNode(grammarAccess.getAttrClassConfigRule());
- pushFollow(FOLLOW_ruleAttrClassConfig_in_entryRuleAttrClassConfig1323);
+ pushFollow(FOLLOW_ruleAttrClassConfig_in_entryRuleAttrClassConfig2043);
iv_ruleAttrClassConfig=ruleAttrClassConfig();
state._fsp--;
current =iv_ruleAttrClassConfig;
- match(input,EOF,FOLLOW_EOF_in_entryRuleAttrClassConfig1333);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAttrClassConfig2053);
}
@@ -1504,7 +2219,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleAttrClassConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:610:1: ruleAttrClassConfig returns [EObject current=null] : (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) ) ) otherlv_12= '}' )? ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:887:1: ruleAttrClassConfig returns [EObject current=null] : (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )? (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )? ( (lv_attributes_11_0= ruleAttrClassConfig ) )* ) otherlv_12= '}' )? ) ;
public final EObject ruleAttrClassConfig() throws RecognitionException {
EObject current = null;
@@ -1512,43 +2227,45 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
Token otherlv_1=null;
Token otherlv_2=null;
Token otherlv_4=null;
+ Token otherlv_5=null;
Token otherlv_6=null;
- Token otherlv_7=null;
+ Token otherlv_8=null;
Token otherlv_9=null;
- Token otherlv_10=null;
Token otherlv_12=null;
EObject lv_value_3_0 = null;
- EObject lv_min_8_0 = null;
+ EObject lv_min_7_0 = null;
+
+ EObject lv_max_10_0 = null;
- EObject lv_max_11_0 = null;
+ EObject lv_attributes_11_0 = null;
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:613:28: ( (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) ) ) otherlv_12= '}' )? ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:614:1: (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) ) ) otherlv_12= '}' )? )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:890:28: ( (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )? (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )? ( (lv_attributes_11_0= ruleAttrClassConfig ) )* ) otherlv_12= '}' )? ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:891:1: (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )? (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )? ( (lv_attributes_11_0= ruleAttrClassConfig ) )* ) otherlv_12= '}' )? )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:614:1: (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) ) ) otherlv_12= '}' )? )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:614:3: otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) ) ) otherlv_12= '}' )?
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:891:1: (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )? (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )? ( (lv_attributes_11_0= ruleAttrClassConfig ) )* ) otherlv_12= '}' )? )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:891:3: otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )? (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )? ( (lv_attributes_11_0= ruleAttrClassConfig ) )* ) otherlv_12= '}' )?
{
- otherlv_0=(Token)match(input,22,FOLLOW_22_in_ruleAttrClassConfig1370);
+ otherlv_0=(Token)match(input,29,FOLLOW_29_in_ruleAttrClassConfig2090);
newLeafNode(otherlv_0, grammarAccess.getAttrClassConfigAccess().getAttrKeyword_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:618:1: ( (otherlv_1= RULE_ID ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:619:1: (otherlv_1= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:895:1: ( (otherlv_1= RULE_ID ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:896:1: (otherlv_1= RULE_ID )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:619:1: (otherlv_1= RULE_ID )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:620:3: otherlv_1= RULE_ID
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:896:1: (otherlv_1= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:897:3: otherlv_1= RULE_ID
{
if (current==null) {
current = createModelElement(grammarAccess.getAttrClassConfigRule());
}
- otherlv_1=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleAttrClassConfig1390);
+ otherlv_1=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleAttrClassConfig2110);
newLeafNode(otherlv_1, grammarAccess.getAttrClassConfigAccess().getAttributeAttributeCrossReference_1_0());
@@ -1558,31 +2275,31 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:631:2: (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )?
- int alt10=2;
- int LA10_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:908:2: (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )?
+ int alt13=2;
+ int LA13_0 = input.LA(1);
- if ( (LA10_0==23) ) {
- alt10=1;
+ if ( (LA13_0==30) ) {
+ alt13=1;
}
- switch (alt10) {
+ switch (alt13) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:631:4: otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:908:4: otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) )
{
- otherlv_2=(Token)match(input,23,FOLLOW_23_in_ruleAttrClassConfig1403);
+ otherlv_2=(Token)match(input,30,FOLLOW_30_in_ruleAttrClassConfig2123);
newLeafNode(otherlv_2, grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_2_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:635:1: ( (lv_value_3_0= ruleLiteralArray ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:636:1: (lv_value_3_0= ruleLiteralArray )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:912:1: ( (lv_value_3_0= ruleLiteralArray ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:913:1: (lv_value_3_0= ruleLiteralArray )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:636:1: (lv_value_3_0= ruleLiteralArray )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:637:3: lv_value_3_0= ruleLiteralArray
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:913:1: (lv_value_3_0= ruleLiteralArray )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:914:3: lv_value_3_0= ruleLiteralArray
{
newCompositeNode(grammarAccess.getAttrClassConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
- pushFollow(FOLLOW_ruleLiteralArray_in_ruleAttrClassConfig1424);
+ pushFollow(FOLLOW_ruleLiteralArray_in_ruleAttrClassConfig2144);
lv_value_3_0=ruleLiteralArray();
state._fsp--;
@@ -1610,172 +2327,159 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:653:4: (otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) ) ) otherlv_12= '}' )?
- int alt12=2;
- int LA12_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:930:4: (otherlv_4= '{' ( (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )? (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )? ( (lv_attributes_11_0= ruleAttrClassConfig ) )* ) otherlv_12= '}' )?
+ int alt17=2;
+ int LA17_0 = input.LA(1);
- if ( (LA12_0==13) ) {
- alt12=1;
+ if ( (LA17_0==14) ) {
+ alt17=1;
}
- switch (alt12) {
+ switch (alt17) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:653:6: otherlv_4= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) ) ) otherlv_12= '}'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:930:6: otherlv_4= '{' ( (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )? (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )? ( (lv_attributes_11_0= ruleAttrClassConfig ) )* ) otherlv_12= '}'
{
- otherlv_4=(Token)match(input,13,FOLLOW_13_in_ruleAttrClassConfig1439);
+ otherlv_4=(Token)match(input,14,FOLLOW_14_in_ruleAttrClassConfig2159);
newLeafNode(otherlv_4, grammarAccess.getAttrClassConfigAccess().getLeftCurlyBracketKeyword_3_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:657:1: ( ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:659:1: ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) )
- {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:659:1: ( ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:660:2: ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* )
- {
-
- getUnorderedGroupHelper().enter(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
-
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:663:2: ( ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )* )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:664:3: ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )*
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:934:1: ( (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )? (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )? ( (lv_attributes_11_0= ruleAttrClassConfig ) )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:934:2: (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )? (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )? ( (lv_attributes_11_0= ruleAttrClassConfig ) )*
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:664:3: ( ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) ) )*
- loop11:
- do {
- int alt11=3;
- int LA11_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:934:2: (otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) ) )?
+ int alt14=2;
+ int LA14_0 = input.LA(1);
- if ( LA11_0 ==24 && getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0) ) {
- alt11=1;
- }
- else if ( LA11_0 ==25 && getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1) ) {
- alt11=2;
- }
+ if ( (LA14_0==31) ) {
+ alt14=1;
+ }
+ switch (alt14) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:934:4: otherlv_5= 'min' otherlv_6= '=' ( (lv_min_7_0= ruleNumberLiteral ) )
+ {
+ otherlv_5=(Token)match(input,31,FOLLOW_31_in_ruleAttrClassConfig2173);
+ newLeafNode(otherlv_5, grammarAccess.getAttrClassConfigAccess().getMinKeyword_3_1_0_0());
+
+ otherlv_6=(Token)match(input,30,FOLLOW_30_in_ruleAttrClassConfig2185);
- switch (alt11) {
- case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:666:4: ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) )
- {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:666:4: ({...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:667:5: {...}? => ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) )
- {
- if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0) ) {
- throw new FailedPredicateException(input, "ruleAttrClassConfig", "getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0)");
- }
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:667:114: ( ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:668:6: ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) )
- {
-
- getUnorderedGroupHelper().select(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 0);
-
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:671:6: ({...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:671:7: {...}? => (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) )
- {
- if ( !((true)) ) {
- throw new FailedPredicateException(input, "ruleAttrClassConfig", "true");
- }
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:671:16: (otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:671:18: otherlv_6= 'min' otherlv_7= '=' ( (lv_min_8_0= ruleNumberLiteral ) )
- {
- otherlv_6=(Token)match(input,24,FOLLOW_24_in_ruleAttrClassConfig1497);
+ newLeafNode(otherlv_6, grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_0_1());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:942:1: ( (lv_min_7_0= ruleNumberLiteral ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:943:1: (lv_min_7_0= ruleNumberLiteral )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:943:1: (lv_min_7_0= ruleNumberLiteral )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:944:3: lv_min_7_0= ruleNumberLiteral
+ {
+
+ newCompositeNode(grammarAccess.getAttrClassConfigAccess().getMinNumberLiteralParserRuleCall_3_1_0_2_0());
+
+ pushFollow(FOLLOW_ruleNumberLiteral_in_ruleAttrClassConfig2206);
+ lv_min_7_0=ruleNumberLiteral();
- newLeafNode(otherlv_6, grammarAccess.getAttrClassConfigAccess().getMinKeyword_3_1_0_0());
-
- otherlv_7=(Token)match(input,23,FOLLOW_23_in_ruleAttrClassConfig1509);
+ state._fsp--;
- newLeafNode(otherlv_7, grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_0_1());
-
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:679:1: ( (lv_min_8_0= ruleNumberLiteral ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:680:1: (lv_min_8_0= ruleNumberLiteral )
- {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:680:1: (lv_min_8_0= ruleNumberLiteral )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:681:3: lv_min_8_0= ruleNumberLiteral
- {
-
- newCompositeNode(grammarAccess.getAttrClassConfigAccess().getMinNumberLiteralParserRuleCall_3_1_0_2_0());
-
- pushFollow(FOLLOW_ruleNumberLiteral_in_ruleAttrClassConfig1530);
- lv_min_8_0=ruleNumberLiteral();
- state._fsp--;
+ if (current==null) {
+ current = createModelElementForParent(grammarAccess.getAttrClassConfigRule());
+ }
+ set(
+ current,
+ "min",
+ lv_min_7_0,
+ "NumberLiteral");
+ afterParserOrEnumRuleCall();
+
+ }
- if (current==null) {
- current = createModelElementForParent(grammarAccess.getAttrClassConfigRule());
- }
- set(
- current,
- "min",
- lv_min_8_0,
- "NumberLiteral");
- afterParserOrEnumRuleCall();
-
- }
+ }
- }
+ }
+ break;
+ }
- }
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:960:4: (otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) ) )?
+ int alt15=2;
+ int LA15_0 = input.LA(1);
+ if ( (LA15_0==32) ) {
+ alt15=1;
+ }
+ switch (alt15) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:960:6: otherlv_8= 'max' otherlv_9= '=' ( (lv_max_10_0= ruleNumberLiteral ) )
+ {
+ otherlv_8=(Token)match(input,32,FOLLOW_32_in_ruleAttrClassConfig2221);
- }
+ newLeafNode(otherlv_8, grammarAccess.getAttrClassConfigAccess().getMaxKeyword_3_1_1_0());
+
+ otherlv_9=(Token)match(input,30,FOLLOW_30_in_ruleAttrClassConfig2233);
-
- getUnorderedGroupHelper().returnFromSelection(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
-
+ newLeafNode(otherlv_9, grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_1_1());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:968:1: ( (lv_max_10_0= ruleNumberLiteral ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:969:1: (lv_max_10_0= ruleNumberLiteral )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:969:1: (lv_max_10_0= ruleNumberLiteral )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:970:3: lv_max_10_0= ruleNumberLiteral
+ {
+
+ newCompositeNode(grammarAccess.getAttrClassConfigAccess().getMaxNumberLiteralParserRuleCall_3_1_1_2_0());
+
+ pushFollow(FOLLOW_ruleNumberLiteral_in_ruleAttrClassConfig2254);
+ lv_max_10_0=ruleNumberLiteral();
- }
+ state._fsp--;
- }
+ if (current==null) {
+ current = createModelElementForParent(grammarAccess.getAttrClassConfigRule());
+ }
+ set(
+ current,
+ "max",
+ lv_max_10_0,
+ "NumberLiteral");
+ afterParserOrEnumRuleCall();
+
+ }
- }
- break;
- case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:704:4: ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) )
- {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:704:4: ({...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:705:5: {...}? => ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) )
- {
- if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1) ) {
- throw new FailedPredicateException(input, "ruleAttrClassConfig", "getUnorderedGroupHelper().canSelect(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1)");
- }
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:705:114: ( ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:706:6: ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) )
- {
-
- getUnorderedGroupHelper().select(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1(), 1);
-
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:709:6: ({...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:709:7: {...}? => (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) )
- {
- if ( !((true)) ) {
- throw new FailedPredicateException(input, "ruleAttrClassConfig", "true");
- }
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:709:16: (otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:709:18: otherlv_9= 'max' otherlv_10= '=' ( (lv_max_11_0= ruleNumberLiteral ) )
- {
- otherlv_9=(Token)match(input,25,FOLLOW_25_in_ruleAttrClassConfig1598);
- newLeafNode(otherlv_9, grammarAccess.getAttrClassConfigAccess().getMaxKeyword_3_1_1_0());
-
- otherlv_10=(Token)match(input,23,FOLLOW_23_in_ruleAttrClassConfig1610);
+ }
+
+
+ }
+ break;
+
+ }
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:986:4: ( (lv_attributes_11_0= ruleAttrClassConfig ) )*
+ loop16:
+ do {
+ int alt16=2;
+ int LA16_0 = input.LA(1);
+
+ if ( (LA16_0==29) ) {
+ alt16=1;
+ }
+
- newLeafNode(otherlv_10, grammarAccess.getAttrClassConfigAccess().getEqualsSignKeyword_3_1_1_1());
-
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:717:1: ( (lv_max_11_0= ruleNumberLiteral ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:718:1: (lv_max_11_0= ruleNumberLiteral )
+ switch (alt16) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:987:1: (lv_attributes_11_0= ruleAttrClassConfig )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:718:1: (lv_max_11_0= ruleNumberLiteral )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:719:3: lv_max_11_0= ruleNumberLiteral
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:987:1: (lv_attributes_11_0= ruleAttrClassConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:988:3: lv_attributes_11_0= ruleAttrClassConfig
{
- newCompositeNode(grammarAccess.getAttrClassConfigAccess().getMaxNumberLiteralParserRuleCall_3_1_1_2_0());
+ newCompositeNode(grammarAccess.getAttrClassConfigAccess().getAttributesAttrClassConfigParserRuleCall_3_1_2_0());
- pushFollow(FOLLOW_ruleNumberLiteral_in_ruleAttrClassConfig1631);
- lv_max_11_0=ruleNumberLiteral();
+ pushFollow(FOLLOW_ruleAttrClassConfig_in_ruleAttrClassConfig2277);
+ lv_attributes_11_0=ruleAttrClassConfig();
state._fsp--;
@@ -1783,11 +2487,11 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
if (current==null) {
current = createModelElementForParent(grammarAccess.getAttrClassConfigRule());
}
- set(
+ add(
current,
- "max",
- lv_max_11_0,
- "NumberLiteral");
+ "attributes",
+ lv_attributes_11_0,
+ "AttrClassConfig");
afterParserOrEnumRuleCall();
@@ -1795,44 +2499,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
-
-
- }
-
-
- }
-
-
- getUnorderedGroupHelper().returnFromSelection(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
-
-
- }
-
-
- }
-
-
- }
break;
default :
- break loop11;
+ break loop16;
}
} while (true);
}
-
- }
-
-
- getUnorderedGroupHelper().leave(grammarAccess.getAttrClassConfigAccess().getUnorderedGroup_3_1());
-
-
- }
-
- otherlv_12=(Token)match(input,14,FOLLOW_14_in_ruleAttrClassConfig1684);
+ otherlv_12=(Token)match(input,15,FOLLOW_15_in_ruleAttrClassConfig2291);
newLeafNode(otherlv_12, grammarAccess.getAttrClassConfigAccess().getRightCurlyBracketKeyword_3_2());
@@ -1863,7 +2540,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleAttrInstanceConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:761:1: entryRuleAttrInstanceConfig returns [EObject current=null] : iv_ruleAttrInstanceConfig= ruleAttrInstanceConfig EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1016:1: entryRuleAttrInstanceConfig returns [EObject current=null] : iv_ruleAttrInstanceConfig= ruleAttrInstanceConfig EOF ;
public final EObject entryRuleAttrInstanceConfig() throws RecognitionException {
EObject current = null;
@@ -1871,17 +2548,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:762:2: (iv_ruleAttrInstanceConfig= ruleAttrInstanceConfig EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:763:2: iv_ruleAttrInstanceConfig= ruleAttrInstanceConfig EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1017:2: (iv_ruleAttrInstanceConfig= ruleAttrInstanceConfig EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1018:2: iv_ruleAttrInstanceConfig= ruleAttrInstanceConfig EOF
{
newCompositeNode(grammarAccess.getAttrInstanceConfigRule());
- pushFollow(FOLLOW_ruleAttrInstanceConfig_in_entryRuleAttrInstanceConfig1722);
+ pushFollow(FOLLOW_ruleAttrInstanceConfig_in_entryRuleAttrInstanceConfig2329);
iv_ruleAttrInstanceConfig=ruleAttrInstanceConfig();
state._fsp--;
current =iv_ruleAttrInstanceConfig;
- match(input,EOF,FOLLOW_EOF_in_entryRuleAttrInstanceConfig1732);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAttrInstanceConfig2339);
}
@@ -1899,41 +2576,48 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleAttrInstanceConfig"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:770:1: ruleAttrInstanceConfig returns [EObject current=null] : (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1025:1: ruleAttrInstanceConfig returns [EObject current=null] : (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )? ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )* ) otherlv_9= '}' )? ) ;
public final EObject ruleAttrInstanceConfig() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_1=null;
Token otherlv_2=null;
+ Token otherlv_4=null;
+ Token lv_dynConfig_5_0=null;
+ Token lv_readOnly_6_0=null;
+ Token otherlv_7=null;
+ Token otherlv_9=null;
EObject lv_value_3_0 = null;
+ EObject lv_attributes_8_0 = null;
+
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:773:28: ( (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:774:1: (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1028:28: ( (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )? ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )* ) otherlv_9= '}' )? ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1029:1: (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )? ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )* ) otherlv_9= '}' )? )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:774:1: (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:774:3: otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )?
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1029:1: (otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )? ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )* ) otherlv_9= '}' )? )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1029:3: otherlv_0= 'Attr' ( (otherlv_1= RULE_ID ) ) (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )? (otherlv_4= '{' ( ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )? ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )* ) otherlv_9= '}' )?
{
- otherlv_0=(Token)match(input,22,FOLLOW_22_in_ruleAttrInstanceConfig1769);
+ otherlv_0=(Token)match(input,29,FOLLOW_29_in_ruleAttrInstanceConfig2376);
newLeafNode(otherlv_0, grammarAccess.getAttrInstanceConfigAccess().getAttrKeyword_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:778:1: ( (otherlv_1= RULE_ID ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:779:1: (otherlv_1= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1033:1: ( (otherlv_1= RULE_ID ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1034:1: (otherlv_1= RULE_ID )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:779:1: (otherlv_1= RULE_ID )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:780:3: otherlv_1= RULE_ID
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1034:1: (otherlv_1= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1035:3: otherlv_1= RULE_ID
{
if (current==null) {
current = createModelElement(grammarAccess.getAttrInstanceConfigRule());
}
- otherlv_1=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleAttrInstanceConfig1789);
+ otherlv_1=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleAttrInstanceConfig2396);
newLeafNode(otherlv_1, grammarAccess.getAttrInstanceConfigAccess().getAttributeAttributeCrossReference_1_0());
@@ -1943,31 +2627,31 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:791:2: (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )?
- int alt13=2;
- int LA13_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1046:2: (otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) ) )?
+ int alt18=2;
+ int LA18_0 = input.LA(1);
- if ( (LA13_0==23) ) {
- alt13=1;
+ if ( (LA18_0==30) ) {
+ alt18=1;
}
- switch (alt13) {
+ switch (alt18) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:791:4: otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1046:4: otherlv_2= '=' ( (lv_value_3_0= ruleLiteralArray ) )
{
- otherlv_2=(Token)match(input,23,FOLLOW_23_in_ruleAttrInstanceConfig1802);
+ otherlv_2=(Token)match(input,30,FOLLOW_30_in_ruleAttrInstanceConfig2409);
newLeafNode(otherlv_2, grammarAccess.getAttrInstanceConfigAccess().getEqualsSignKeyword_2_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:795:1: ( (lv_value_3_0= ruleLiteralArray ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:796:1: (lv_value_3_0= ruleLiteralArray )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1050:1: ( (lv_value_3_0= ruleLiteralArray ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1051:1: (lv_value_3_0= ruleLiteralArray )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:796:1: (lv_value_3_0= ruleLiteralArray )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:797:3: lv_value_3_0= ruleLiteralArray
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1051:1: (lv_value_3_0= ruleLiteralArray )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1052:3: lv_value_3_0= ruleLiteralArray
{
newCompositeNode(grammarAccess.getAttrInstanceConfigAccess().getValueLiteralArrayParserRuleCall_2_1_0());
- pushFollow(FOLLOW_ruleLiteralArray_in_ruleAttrInstanceConfig1823);
+ pushFollow(FOLLOW_ruleLiteralArray_in_ruleAttrInstanceConfig2430);
lv_value_3_0=ruleLiteralArray();
state._fsp--;
@@ -1995,6 +2679,183 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1068:4: (otherlv_4= '{' ( ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )? ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )* ) otherlv_9= '}' )?
+ int alt22=2;
+ int LA22_0 = input.LA(1);
+
+ if ( (LA22_0==14) ) {
+ alt22=1;
+ }
+ switch (alt22) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1068:6: otherlv_4= '{' ( ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )? ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )* ) otherlv_9= '}'
+ {
+ otherlv_4=(Token)match(input,14,FOLLOW_14_in_ruleAttrInstanceConfig2445);
+
+ newLeafNode(otherlv_4, grammarAccess.getAttrInstanceConfigAccess().getLeftCurlyBracketKeyword_3_0());
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1072:1: ( ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )? ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1072:2: ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )? ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )*
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1072:2: ( ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' ) )?
+ int alt20=2;
+ int LA20_0 = input.LA(1);
+
+ if ( (LA20_0==16) ) {
+ alt20=1;
+ }
+ switch (alt20) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1072:3: ( (lv_dynConfig_5_0= 'dynamic configuration' ) ) ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1072:3: ( (lv_dynConfig_5_0= 'dynamic configuration' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1073:1: (lv_dynConfig_5_0= 'dynamic configuration' )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1073:1: (lv_dynConfig_5_0= 'dynamic configuration' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1074:3: lv_dynConfig_5_0= 'dynamic configuration'
+ {
+ lv_dynConfig_5_0=(Token)match(input,16,FOLLOW_16_in_ruleAttrInstanceConfig2465);
+
+ newLeafNode(lv_dynConfig_5_0, grammarAccess.getAttrInstanceConfigAccess().getDynConfigDynamicConfigurationKeyword_3_1_0_0_0());
+
+
+ if (current==null) {
+ current = createModelElement(grammarAccess.getAttrInstanceConfigRule());
+ }
+ setWithLastConsumed(current, "dynConfig", true, "dynamic configuration");
+
+
+ }
+
+
+ }
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1087:2: ( ( (lv_readOnly_6_0= 'read' ) ) | otherlv_7= 'write' )
+ int alt19=2;
+ int LA19_0 = input.LA(1);
+
+ if ( (LA19_0==33) ) {
+ alt19=1;
+ }
+ else if ( (LA19_0==34) ) {
+ alt19=2;
+ }
+ else {
+ NoViableAltException nvae =
+ new NoViableAltException("", 19, 0, input);
+
+ throw nvae;
+ }
+ switch (alt19) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1087:3: ( (lv_readOnly_6_0= 'read' ) )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1087:3: ( (lv_readOnly_6_0= 'read' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1088:1: (lv_readOnly_6_0= 'read' )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1088:1: (lv_readOnly_6_0= 'read' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1089:3: lv_readOnly_6_0= 'read'
+ {
+ lv_readOnly_6_0=(Token)match(input,33,FOLLOW_33_in_ruleAttrInstanceConfig2497);
+
+ newLeafNode(lv_readOnly_6_0, grammarAccess.getAttrInstanceConfigAccess().getReadOnlyReadKeyword_3_1_0_1_0_0());
+
+
+ if (current==null) {
+ current = createModelElement(grammarAccess.getAttrInstanceConfigRule());
+ }
+ setWithLastConsumed(current, "readOnly", true, "read");
+
+
+ }
+
+
+ }
+
+
+ }
+ break;
+ case 2 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1103:7: otherlv_7= 'write'
+ {
+ otherlv_7=(Token)match(input,34,FOLLOW_34_in_ruleAttrInstanceConfig2528);
+
+ newLeafNode(otherlv_7, grammarAccess.getAttrInstanceConfigAccess().getWriteKeyword_3_1_0_1_1());
+
+
+ }
+ break;
+
+ }
+
+
+ }
+ break;
+
+ }
+
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1107:4: ( (lv_attributes_8_0= ruleAttrInstanceConfig ) )*
+ loop21:
+ do {
+ int alt21=2;
+ int LA21_0 = input.LA(1);
+
+ if ( (LA21_0==29) ) {
+ alt21=1;
+ }
+
+
+ switch (alt21) {
+ case 1 :
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1108:1: (lv_attributes_8_0= ruleAttrInstanceConfig )
+ {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1108:1: (lv_attributes_8_0= ruleAttrInstanceConfig )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1109:3: lv_attributes_8_0= ruleAttrInstanceConfig
+ {
+
+ newCompositeNode(grammarAccess.getAttrInstanceConfigAccess().getAttributesAttrInstanceConfigParserRuleCall_3_1_1_0());
+
+ pushFollow(FOLLOW_ruleAttrInstanceConfig_in_ruleAttrInstanceConfig2552);
+ lv_attributes_8_0=ruleAttrInstanceConfig();
+
+ state._fsp--;
+
+
+ if (current==null) {
+ current = createModelElementForParent(grammarAccess.getAttrInstanceConfigRule());
+ }
+ add(
+ current,
+ "attributes",
+ lv_attributes_8_0,
+ "AttrInstanceConfig");
+ afterParserOrEnumRuleCall();
+
+
+ }
+
+
+ }
+ break;
+
+ default :
+ break loop21;
+ }
+ } while (true);
+
+
+ }
+
+ otherlv_9=(Token)match(input,15,FOLLOW_15_in_ruleAttrInstanceConfig2566);
+
+ newLeafNode(otherlv_9, grammarAccess.getAttrInstanceConfigAccess().getRightCurlyBracketKeyword_3_2());
+
+
+ }
+ break;
+
+ }
+
}
@@ -2016,7 +2877,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleRefPath"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:821:1: entryRuleRefPath returns [EObject current=null] : iv_ruleRefPath= ruleRefPath EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1137:1: entryRuleRefPath returns [EObject current=null] : iv_ruleRefPath= ruleRefPath EOF ;
public final EObject entryRuleRefPath() throws RecognitionException {
EObject current = null;
@@ -2024,17 +2885,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:822:2: (iv_ruleRefPath= ruleRefPath EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:823:2: iv_ruleRefPath= ruleRefPath EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1138:2: (iv_ruleRefPath= ruleRefPath EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1139:2: iv_ruleRefPath= ruleRefPath EOF
{
newCompositeNode(grammarAccess.getRefPathRule());
- pushFollow(FOLLOW_ruleRefPath_in_entryRuleRefPath1861);
+ pushFollow(FOLLOW_ruleRefPath_in_entryRuleRefPath2604);
iv_ruleRefPath=ruleRefPath();
state._fsp--;
current =iv_ruleRefPath;
- match(input,EOF,FOLLOW_EOF_in_entryRuleRefPath1871);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleRefPath2614);
}
@@ -2052,7 +2913,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleRefPath"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:830:1: ruleRefPath returns [EObject current=null] : ( ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )* ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1146:1: ruleRefPath returns [EObject current=null] : ( ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )* ) ;
public final EObject ruleRefPath() throws RecognitionException {
EObject current = null;
@@ -2063,19 +2924,19 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:833:28: ( ( ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )* ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:834:1: ( ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1149:28: ( ( ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )* ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1150:1: ( ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )* )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:834:1: ( ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )* )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:834:2: ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )*
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1150:1: ( ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1150:2: ( (lv_refs_0_0= RULE_ID ) ) (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )*
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:834:2: ( (lv_refs_0_0= RULE_ID ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:835:1: (lv_refs_0_0= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1150:2: ( (lv_refs_0_0= RULE_ID ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1151:1: (lv_refs_0_0= RULE_ID )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:835:1: (lv_refs_0_0= RULE_ID )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:836:3: lv_refs_0_0= RULE_ID
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1151:1: (lv_refs_0_0= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1152:3: lv_refs_0_0= RULE_ID
{
- lv_refs_0_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRefPath1913);
+ lv_refs_0_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRefPath2656);
newLeafNode(lv_refs_0_0, grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_0_0());
@@ -2095,32 +2956,32 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:852:2: (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )*
- loop14:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1168:2: (otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) ) )*
+ loop23:
do {
- int alt14=2;
- int LA14_0 = input.LA(1);
+ int alt23=2;
+ int LA23_0 = input.LA(1);
- if ( (LA14_0==16) ) {
- alt14=1;
+ if ( (LA23_0==23) ) {
+ alt23=1;
}
- switch (alt14) {
+ switch (alt23) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:852:4: otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1168:4: otherlv_1= '/' ( (lv_refs_2_0= RULE_ID ) )
{
- otherlv_1=(Token)match(input,16,FOLLOW_16_in_ruleRefPath1931);
+ otherlv_1=(Token)match(input,23,FOLLOW_23_in_ruleRefPath2674);
newLeafNode(otherlv_1, grammarAccess.getRefPathAccess().getSolidusKeyword_1_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:856:1: ( (lv_refs_2_0= RULE_ID ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:857:1: (lv_refs_2_0= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1172:1: ( (lv_refs_2_0= RULE_ID ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1173:1: (lv_refs_2_0= RULE_ID )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:857:1: (lv_refs_2_0= RULE_ID )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:858:3: lv_refs_2_0= RULE_ID
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1173:1: (lv_refs_2_0= RULE_ID )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1174:3: lv_refs_2_0= RULE_ID
{
- lv_refs_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRefPath1948);
+ lv_refs_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRefPath2691);
newLeafNode(lv_refs_2_0, grammarAccess.getRefPathAccess().getRefsIDTerminalRuleCall_1_1_0());
@@ -2145,7 +3006,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
default :
- break loop14;
+ break loop23;
}
} while (true);
@@ -2170,7 +3031,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleImport"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:882:1: entryRuleImport returns [EObject current=null] : iv_ruleImport= ruleImport EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1198:1: entryRuleImport returns [EObject current=null] : iv_ruleImport= ruleImport EOF ;
public final EObject entryRuleImport() throws RecognitionException {
EObject current = null;
@@ -2178,17 +3039,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:883:2: (iv_ruleImport= ruleImport EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:884:2: iv_ruleImport= ruleImport EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1199:2: (iv_ruleImport= ruleImport EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1200:2: iv_ruleImport= ruleImport EOF
{
newCompositeNode(grammarAccess.getImportRule());
- pushFollow(FOLLOW_ruleImport_in_entryRuleImport1991);
+ pushFollow(FOLLOW_ruleImport_in_entryRuleImport2734);
iv_ruleImport=ruleImport();
state._fsp--;
current =iv_ruleImport;
- match(input,EOF,FOLLOW_EOF_in_entryRuleImport2001);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleImport2744);
}
@@ -2206,7 +3067,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleImport"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:891:1: ruleImport returns [EObject current=null] : (otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) ) ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1207:1: ruleImport returns [EObject current=null] : (otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) ) ) ;
public final EObject ruleImport() throws RecognitionException {
EObject current = null;
@@ -2220,49 +3081,49 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:894:28: ( (otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:895:1: (otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1210:28: ( (otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1211:1: (otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:895:1: (otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:895:3: otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1211:1: (otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1211:3: otherlv_0= 'import' ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' ) ( (lv_importURI_4_0= RULE_STRING ) )
{
- otherlv_0=(Token)match(input,26,FOLLOW_26_in_ruleImport2038);
+ otherlv_0=(Token)match(input,35,FOLLOW_35_in_ruleImport2781);
newLeafNode(otherlv_0, grammarAccess.getImportAccess().getImportKeyword_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:899:1: ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' )
- int alt15=2;
- int LA15_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1215:1: ( ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' ) | otherlv_3= 'model' )
+ int alt24=2;
+ int LA24_0 = input.LA(1);
- if ( (LA15_0==RULE_ID) ) {
- alt15=1;
+ if ( (LA24_0==RULE_ID) ) {
+ alt24=1;
}
- else if ( (LA15_0==28) ) {
- alt15=2;
+ else if ( (LA24_0==37) ) {
+ alt24=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 15, 0, input);
+ new NoViableAltException("", 24, 0, input);
throw nvae;
}
- switch (alt15) {
+ switch (alt24) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:899:2: ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1215:2: ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:899:2: ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:899:3: ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1215:2: ( ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1215:3: ( (lv_importedNamespace_1_0= ruleImportedFQN ) ) otherlv_2= 'from'
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:899:3: ( (lv_importedNamespace_1_0= ruleImportedFQN ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:900:1: (lv_importedNamespace_1_0= ruleImportedFQN )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1215:3: ( (lv_importedNamespace_1_0= ruleImportedFQN ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1216:1: (lv_importedNamespace_1_0= ruleImportedFQN )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:900:1: (lv_importedNamespace_1_0= ruleImportedFQN )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:901:3: lv_importedNamespace_1_0= ruleImportedFQN
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1216:1: (lv_importedNamespace_1_0= ruleImportedFQN )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1217:3: lv_importedNamespace_1_0= ruleImportedFQN
{
newCompositeNode(grammarAccess.getImportAccess().getImportedNamespaceImportedFQNParserRuleCall_1_0_0_0());
- pushFollow(FOLLOW_ruleImportedFQN_in_ruleImport2061);
+ pushFollow(FOLLOW_ruleImportedFQN_in_ruleImport2804);
lv_importedNamespace_1_0=ruleImportedFQN();
state._fsp--;
@@ -2284,7 +3145,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- otherlv_2=(Token)match(input,27,FOLLOW_27_in_ruleImport2073);
+ otherlv_2=(Token)match(input,36,FOLLOW_36_in_ruleImport2816);
newLeafNode(otherlv_2, grammarAccess.getImportAccess().getFromKeyword_1_0_1());
@@ -2295,9 +3156,9 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:922:7: otherlv_3= 'model'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1238:7: otherlv_3= 'model'
{
- otherlv_3=(Token)match(input,28,FOLLOW_28_in_ruleImport2092);
+ otherlv_3=(Token)match(input,37,FOLLOW_37_in_ruleImport2835);
newLeafNode(otherlv_3, grammarAccess.getImportAccess().getModelKeyword_1_1());
@@ -2307,13 +3168,13 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:926:2: ( (lv_importURI_4_0= RULE_STRING ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:927:1: (lv_importURI_4_0= RULE_STRING )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1242:2: ( (lv_importURI_4_0= RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1243:1: (lv_importURI_4_0= RULE_STRING )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:927:1: (lv_importURI_4_0= RULE_STRING )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:928:3: lv_importURI_4_0= RULE_STRING
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1243:1: (lv_importURI_4_0= RULE_STRING )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1244:3: lv_importURI_4_0= RULE_STRING
{
- lv_importURI_4_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleImport2110);
+ lv_importURI_4_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleImport2853);
newLeafNode(lv_importURI_4_0, grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_2_0());
@@ -2354,7 +3215,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleImportedFQN"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:952:1: entryRuleImportedFQN returns [String current=null] : iv_ruleImportedFQN= ruleImportedFQN EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1268:1: entryRuleImportedFQN returns [String current=null] : iv_ruleImportedFQN= ruleImportedFQN EOF ;
public final String entryRuleImportedFQN() throws RecognitionException {
String current = null;
@@ -2362,17 +3223,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:953:2: (iv_ruleImportedFQN= ruleImportedFQN EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:954:2: iv_ruleImportedFQN= ruleImportedFQN EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1269:2: (iv_ruleImportedFQN= ruleImportedFQN EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1270:2: iv_ruleImportedFQN= ruleImportedFQN EOF
{
newCompositeNode(grammarAccess.getImportedFQNRule());
- pushFollow(FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN2152);
+ pushFollow(FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN2895);
iv_ruleImportedFQN=ruleImportedFQN();
state._fsp--;
current =iv_ruleImportedFQN.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleImportedFQN2163);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleImportedFQN2906);
}
@@ -2390,7 +3251,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleImportedFQN"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:961:1: ruleImportedFQN returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_FQN_0= ruleFQN (kw= '.*' )? ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1277:1: ruleImportedFQN returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_FQN_0= ruleFQN (kw= '.*' )? ) ;
public final AntlrDatatypeRuleToken ruleImportedFQN() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
@@ -2401,16 +3262,16 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:964:28: ( (this_FQN_0= ruleFQN (kw= '.*' )? ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:965:1: (this_FQN_0= ruleFQN (kw= '.*' )? )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1280:28: ( (this_FQN_0= ruleFQN (kw= '.*' )? ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1281:1: (this_FQN_0= ruleFQN (kw= '.*' )? )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:965:1: (this_FQN_0= ruleFQN (kw= '.*' )? )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:966:5: this_FQN_0= ruleFQN (kw= '.*' )?
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1281:1: (this_FQN_0= ruleFQN (kw= '.*' )? )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1282:5: this_FQN_0= ruleFQN (kw= '.*' )?
{
newCompositeNode(grammarAccess.getImportedFQNAccess().getFQNParserRuleCall_0());
- pushFollow(FOLLOW_ruleFQN_in_ruleImportedFQN2210);
+ pushFollow(FOLLOW_ruleFQN_in_ruleImportedFQN2953);
this_FQN_0=ruleFQN();
state._fsp--;
@@ -2421,18 +3282,18 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
afterParserOrEnumRuleCall();
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:976:1: (kw= '.*' )?
- int alt16=2;
- int LA16_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1292:1: (kw= '.*' )?
+ int alt25=2;
+ int LA25_0 = input.LA(1);
- if ( (LA16_0==29) ) {
- alt16=1;
+ if ( (LA25_0==38) ) {
+ alt25=1;
}
- switch (alt16) {
+ switch (alt25) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:977:2: kw= '.*'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1293:2: kw= '.*'
{
- kw=(Token)match(input,29,FOLLOW_29_in_ruleImportedFQN2229);
+ kw=(Token)match(input,38,FOLLOW_38_in_ruleImportedFQN2972);
current.merge(kw);
newLeafNode(kw, grammarAccess.getImportedFQNAccess().getFullStopAsteriskKeyword_1());
@@ -2464,7 +3325,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleFQN"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:990:1: entryRuleFQN returns [String current=null] : iv_ruleFQN= ruleFQN EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1306:1: entryRuleFQN returns [String current=null] : iv_ruleFQN= ruleFQN EOF ;
public final String entryRuleFQN() throws RecognitionException {
String current = null;
@@ -2472,17 +3333,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:991:2: (iv_ruleFQN= ruleFQN EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:992:2: iv_ruleFQN= ruleFQN EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1307:2: (iv_ruleFQN= ruleFQN EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1308:2: iv_ruleFQN= ruleFQN EOF
{
newCompositeNode(grammarAccess.getFQNRule());
- pushFollow(FOLLOW_ruleFQN_in_entryRuleFQN2272);
+ pushFollow(FOLLOW_ruleFQN_in_entryRuleFQN3015);
iv_ruleFQN=ruleFQN();
state._fsp--;
current =iv_ruleFQN.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleFQN2283);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleFQN3026);
}
@@ -2500,7 +3361,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleFQN"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:999:1: ruleFQN returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1315:1: ruleFQN returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) ;
public final AntlrDatatypeRuleToken ruleFQN() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
@@ -2511,40 +3372,40 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1002:28: ( (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1003:1: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1318:28: ( (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1319:1: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1003:1: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1003:6: this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )*
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1319:1: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1319:6: this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )*
{
- this_ID_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFQN2323);
+ this_ID_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFQN3066);
current.merge(this_ID_0);
newLeafNode(this_ID_0, grammarAccess.getFQNAccess().getIDTerminalRuleCall_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1010:1: (kw= '.' this_ID_2= RULE_ID )*
- loop17:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1326:1: (kw= '.' this_ID_2= RULE_ID )*
+ loop26:
do {
- int alt17=2;
- int LA17_0 = input.LA(1);
+ int alt26=2;
+ int LA26_0 = input.LA(1);
- if ( (LA17_0==30) ) {
- alt17=1;
+ if ( (LA26_0==39) ) {
+ alt26=1;
}
- switch (alt17) {
+ switch (alt26) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1011:2: kw= '.' this_ID_2= RULE_ID
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1327:2: kw= '.' this_ID_2= RULE_ID
{
- kw=(Token)match(input,30,FOLLOW_30_in_ruleFQN2342);
+ kw=(Token)match(input,39,FOLLOW_39_in_ruleFQN3085);
current.merge(kw);
newLeafNode(kw, grammarAccess.getFQNAccess().getFullStopKeyword_1_0());
- this_ID_2=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFQN2357);
+ this_ID_2=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFQN3100);
current.merge(this_ID_2);
@@ -2556,7 +3417,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
default :
- break loop17;
+ break loop26;
}
} while (true);
@@ -2581,7 +3442,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleLiteralArray"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1031:1: entryRuleLiteralArray returns [EObject current=null] : iv_ruleLiteralArray= ruleLiteralArray EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1347:1: entryRuleLiteralArray returns [EObject current=null] : iv_ruleLiteralArray= ruleLiteralArray EOF ;
public final EObject entryRuleLiteralArray() throws RecognitionException {
EObject current = null;
@@ -2589,17 +3450,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1032:2: (iv_ruleLiteralArray= ruleLiteralArray EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1033:2: iv_ruleLiteralArray= ruleLiteralArray EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1348:2: (iv_ruleLiteralArray= ruleLiteralArray EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1349:2: iv_ruleLiteralArray= ruleLiteralArray EOF
{
newCompositeNode(grammarAccess.getLiteralArrayRule());
- pushFollow(FOLLOW_ruleLiteralArray_in_entryRuleLiteralArray2404);
+ pushFollow(FOLLOW_ruleLiteralArray_in_entryRuleLiteralArray3147);
iv_ruleLiteralArray=ruleLiteralArray();
state._fsp--;
current =iv_ruleLiteralArray;
- match(input,EOF,FOLLOW_EOF_in_entryRuleLiteralArray2414);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleLiteralArray3157);
}
@@ -2617,7 +3478,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleLiteralArray"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1040:1: ruleLiteralArray returns [EObject current=null] : ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1356:1: ruleLiteralArray returns [EObject current=null] : ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* ) ;
public final EObject ruleLiteralArray() throws RecognitionException {
EObject current = null;
@@ -2630,22 +3491,22 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1043:28: ( ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1044:1: ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1359:28: ( ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1360:1: ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1044:1: ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1044:2: ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )*
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1360:1: ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1360:2: ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )*
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1044:2: ( (lv_literals_0_0= ruleLiteral ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1045:1: (lv_literals_0_0= ruleLiteral )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1360:2: ( (lv_literals_0_0= ruleLiteral ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1361:1: (lv_literals_0_0= ruleLiteral )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1045:1: (lv_literals_0_0= ruleLiteral )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1046:3: lv_literals_0_0= ruleLiteral
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1361:1: (lv_literals_0_0= ruleLiteral )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1362:3: lv_literals_0_0= ruleLiteral
{
newCompositeNode(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_0_0());
- pushFollow(FOLLOW_ruleLiteral_in_ruleLiteralArray2460);
+ pushFollow(FOLLOW_ruleLiteral_in_ruleLiteralArray3203);
lv_literals_0_0=ruleLiteral();
state._fsp--;
@@ -2667,35 +3528,35 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1062:2: (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )*
- loop18:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1378:2: (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )*
+ loop27:
do {
- int alt18=2;
- int LA18_0 = input.LA(1);
+ int alt27=2;
+ int LA27_0 = input.LA(1);
- if ( (LA18_0==31) ) {
- alt18=1;
+ if ( (LA27_0==40) ) {
+ alt27=1;
}
- switch (alt18) {
+ switch (alt27) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1062:4: otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1378:4: otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) )
{
- otherlv_1=(Token)match(input,31,FOLLOW_31_in_ruleLiteralArray2473);
+ otherlv_1=(Token)match(input,40,FOLLOW_40_in_ruleLiteralArray3216);
newLeafNode(otherlv_1, grammarAccess.getLiteralArrayAccess().getCommaKeyword_1_0());
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1066:1: ( (lv_literals_2_0= ruleLiteral ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1067:1: (lv_literals_2_0= ruleLiteral )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1382:1: ( (lv_literals_2_0= ruleLiteral ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1383:1: (lv_literals_2_0= ruleLiteral )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1067:1: (lv_literals_2_0= ruleLiteral )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1068:3: lv_literals_2_0= ruleLiteral
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1383:1: (lv_literals_2_0= ruleLiteral )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1384:3: lv_literals_2_0= ruleLiteral
{
newCompositeNode(grammarAccess.getLiteralArrayAccess().getLiteralsLiteralParserRuleCall_1_1_0());
- pushFollow(FOLLOW_ruleLiteral_in_ruleLiteralArray2494);
+ pushFollow(FOLLOW_ruleLiteral_in_ruleLiteralArray3237);
lv_literals_2_0=ruleLiteral();
state._fsp--;
@@ -2722,7 +3583,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
default :
- break loop18;
+ break loop27;
}
} while (true);
@@ -2747,7 +3608,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1092:1: entryRuleLiteral returns [EObject current=null] : iv_ruleLiteral= ruleLiteral EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1408:1: entryRuleLiteral returns [EObject current=null] : iv_ruleLiteral= ruleLiteral EOF ;
public final EObject entryRuleLiteral() throws RecognitionException {
EObject current = null;
@@ -2755,17 +3616,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1093:2: (iv_ruleLiteral= ruleLiteral EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1094:2: iv_ruleLiteral= ruleLiteral EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1409:2: (iv_ruleLiteral= ruleLiteral EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1410:2: iv_ruleLiteral= ruleLiteral EOF
{
newCompositeNode(grammarAccess.getLiteralRule());
- pushFollow(FOLLOW_ruleLiteral_in_entryRuleLiteral2532);
+ pushFollow(FOLLOW_ruleLiteral_in_entryRuleLiteral3275);
iv_ruleLiteral=ruleLiteral();
state._fsp--;
current =iv_ruleLiteral;
- match(input,EOF,FOLLOW_EOF_in_entryRuleLiteral2542);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleLiteral3285);
}
@@ -2783,7 +3644,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1101:1: ruleLiteral returns [EObject current=null] : (this_BooleanLiteral_0= ruleBooleanLiteral | this_NumberLiteral_1= ruleNumberLiteral | this_StringLiteral_2= ruleStringLiteral ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1417:1: ruleLiteral returns [EObject current=null] : (this_BooleanLiteral_0= ruleBooleanLiteral | this_NumberLiteral_1= ruleNumberLiteral | this_StringLiteral_2= ruleStringLiteral ) ;
public final EObject ruleLiteral() throws RecognitionException {
EObject current = null;
@@ -2797,47 +3658,47 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1104:28: ( (this_BooleanLiteral_0= ruleBooleanLiteral | this_NumberLiteral_1= ruleNumberLiteral | this_StringLiteral_2= ruleStringLiteral ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1105:1: (this_BooleanLiteral_0= ruleBooleanLiteral | this_NumberLiteral_1= ruleNumberLiteral | this_StringLiteral_2= ruleStringLiteral )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1420:28: ( (this_BooleanLiteral_0= ruleBooleanLiteral | this_NumberLiteral_1= ruleNumberLiteral | this_StringLiteral_2= ruleStringLiteral ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1421:1: (this_BooleanLiteral_0= ruleBooleanLiteral | this_NumberLiteral_1= ruleNumberLiteral | this_StringLiteral_2= ruleStringLiteral )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1105:1: (this_BooleanLiteral_0= ruleBooleanLiteral | this_NumberLiteral_1= ruleNumberLiteral | this_StringLiteral_2= ruleStringLiteral )
- int alt19=3;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1421:1: (this_BooleanLiteral_0= ruleBooleanLiteral | this_NumberLiteral_1= ruleNumberLiteral | this_StringLiteral_2= ruleStringLiteral )
+ int alt28=3;
switch ( input.LA(1) ) {
- case 32:
- case 33:
+ case 41:
+ case 42:
{
- alt19=1;
+ alt28=1;
}
break;
case RULE_INT:
case RULE_HEX:
- case 30:
- case 34:
- case 35:
+ case 39:
+ case 43:
+ case 44:
{
- alt19=2;
+ alt28=2;
}
break;
case RULE_STRING:
{
- alt19=3;
+ alt28=3;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 19, 0, input);
+ new NoViableAltException("", 28, 0, input);
throw nvae;
}
- switch (alt19) {
+ switch (alt28) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1106:5: this_BooleanLiteral_0= ruleBooleanLiteral
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1422:5: this_BooleanLiteral_0= ruleBooleanLiteral
{
newCompositeNode(grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0());
- pushFollow(FOLLOW_ruleBooleanLiteral_in_ruleLiteral2589);
+ pushFollow(FOLLOW_ruleBooleanLiteral_in_ruleLiteral3332);
this_BooleanLiteral_0=ruleBooleanLiteral();
state._fsp--;
@@ -2850,12 +3711,12 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1116:5: this_NumberLiteral_1= ruleNumberLiteral
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1432:5: this_NumberLiteral_1= ruleNumberLiteral
{
newCompositeNode(grammarAccess.getLiteralAccess().getNumberLiteralParserRuleCall_1());
- pushFollow(FOLLOW_ruleNumberLiteral_in_ruleLiteral2616);
+ pushFollow(FOLLOW_ruleNumberLiteral_in_ruleLiteral3359);
this_NumberLiteral_1=ruleNumberLiteral();
state._fsp--;
@@ -2868,12 +3729,12 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 3 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1126:5: this_StringLiteral_2= ruleStringLiteral
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1442:5: this_StringLiteral_2= ruleStringLiteral
{
newCompositeNode(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_2());
- pushFollow(FOLLOW_ruleStringLiteral_in_ruleLiteral2643);
+ pushFollow(FOLLOW_ruleStringLiteral_in_ruleLiteral3386);
this_StringLiteral_2=ruleStringLiteral();
state._fsp--;
@@ -2906,7 +3767,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleBooleanLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1142:1: entryRuleBooleanLiteral returns [EObject current=null] : iv_ruleBooleanLiteral= ruleBooleanLiteral EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1458:1: entryRuleBooleanLiteral returns [EObject current=null] : iv_ruleBooleanLiteral= ruleBooleanLiteral EOF ;
public final EObject entryRuleBooleanLiteral() throws RecognitionException {
EObject current = null;
@@ -2914,17 +3775,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1143:2: (iv_ruleBooleanLiteral= ruleBooleanLiteral EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1144:2: iv_ruleBooleanLiteral= ruleBooleanLiteral EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1459:2: (iv_ruleBooleanLiteral= ruleBooleanLiteral EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1460:2: iv_ruleBooleanLiteral= ruleBooleanLiteral EOF
{
newCompositeNode(grammarAccess.getBooleanLiteralRule());
- pushFollow(FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral2678);
+ pushFollow(FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral3421);
iv_ruleBooleanLiteral=ruleBooleanLiteral();
state._fsp--;
current =iv_ruleBooleanLiteral;
- match(input,EOF,FOLLOW_EOF_in_entryRuleBooleanLiteral2688);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleBooleanLiteral3431);
}
@@ -2942,7 +3803,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleBooleanLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1151:1: ruleBooleanLiteral returns [EObject current=null] : ( () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) ) ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1467:1: ruleBooleanLiteral returns [EObject current=null] : ( () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) ) ) ;
public final EObject ruleBooleanLiteral() throws RecognitionException {
EObject current = null;
@@ -2952,14 +3813,14 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1154:28: ( ( () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1155:1: ( () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1470:28: ( ( () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1471:1: ( () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1155:1: ( () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1155:2: () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1471:1: ( () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1471:2: () (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1155:2: ()
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1156:5:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1471:2: ()
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1472:5:
{
current = forceCreateModelElement(
@@ -2969,27 +3830,27 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1161:2: (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) )
- int alt20=2;
- int LA20_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1477:2: (otherlv_1= 'false' | ( (lv_isTrue_2_0= 'true' ) ) )
+ int alt29=2;
+ int LA29_0 = input.LA(1);
- if ( (LA20_0==32) ) {
- alt20=1;
+ if ( (LA29_0==41) ) {
+ alt29=1;
}
- else if ( (LA20_0==33) ) {
- alt20=2;
+ else if ( (LA29_0==42) ) {
+ alt29=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 20, 0, input);
+ new NoViableAltException("", 29, 0, input);
throw nvae;
}
- switch (alt20) {
+ switch (alt29) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1161:4: otherlv_1= 'false'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1477:4: otherlv_1= 'false'
{
- otherlv_1=(Token)match(input,32,FOLLOW_32_in_ruleBooleanLiteral2735);
+ otherlv_1=(Token)match(input,41,FOLLOW_41_in_ruleBooleanLiteral3478);
newLeafNode(otherlv_1, grammarAccess.getBooleanLiteralAccess().getFalseKeyword_1_0());
@@ -2997,15 +3858,15 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1166:6: ( (lv_isTrue_2_0= 'true' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1482:6: ( (lv_isTrue_2_0= 'true' ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1166:6: ( (lv_isTrue_2_0= 'true' ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1167:1: (lv_isTrue_2_0= 'true' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1482:6: ( (lv_isTrue_2_0= 'true' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1483:1: (lv_isTrue_2_0= 'true' )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1167:1: (lv_isTrue_2_0= 'true' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1168:3: lv_isTrue_2_0= 'true'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1483:1: (lv_isTrue_2_0= 'true' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1484:3: lv_isTrue_2_0= 'true'
{
- lv_isTrue_2_0=(Token)match(input,33,FOLLOW_33_in_ruleBooleanLiteral2759);
+ lv_isTrue_2_0=(Token)match(input,42,FOLLOW_42_in_ruleBooleanLiteral3502);
newLeafNode(lv_isTrue_2_0, grammarAccess.getBooleanLiteralAccess().getIsTrueTrueKeyword_1_1_0());
@@ -3048,7 +3909,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleNumberLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1189:1: entryRuleNumberLiteral returns [EObject current=null] : iv_ruleNumberLiteral= ruleNumberLiteral EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1505:1: entryRuleNumberLiteral returns [EObject current=null] : iv_ruleNumberLiteral= ruleNumberLiteral EOF ;
public final EObject entryRuleNumberLiteral() throws RecognitionException {
EObject current = null;
@@ -3056,17 +3917,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1190:2: (iv_ruleNumberLiteral= ruleNumberLiteral EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1191:2: iv_ruleNumberLiteral= ruleNumberLiteral EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1506:2: (iv_ruleNumberLiteral= ruleNumberLiteral EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1507:2: iv_ruleNumberLiteral= ruleNumberLiteral EOF
{
newCompositeNode(grammarAccess.getNumberLiteralRule());
- pushFollow(FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral2809);
+ pushFollow(FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral3552);
iv_ruleNumberLiteral=ruleNumberLiteral();
state._fsp--;
current =iv_ruleNumberLiteral;
- match(input,EOF,FOLLOW_EOF_in_entryRuleNumberLiteral2819);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleNumberLiteral3562);
}
@@ -3084,7 +3945,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleNumberLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1198:1: ruleNumberLiteral returns [EObject current=null] : (this_IntLiteral_0= ruleIntLiteral | this_RealLiteral_1= ruleRealLiteral ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1514:1: ruleNumberLiteral returns [EObject current=null] : (this_IntLiteral_0= ruleIntLiteral | this_RealLiteral_1= ruleRealLiteral ) ;
public final EObject ruleNumberLiteral() throws RecognitionException {
EObject current = null;
@@ -3096,69 +3957,69 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1201:28: ( (this_IntLiteral_0= ruleIntLiteral | this_RealLiteral_1= ruleRealLiteral ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1202:1: (this_IntLiteral_0= ruleIntLiteral | this_RealLiteral_1= ruleRealLiteral )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1517:28: ( (this_IntLiteral_0= ruleIntLiteral | this_RealLiteral_1= ruleRealLiteral ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1518:1: (this_IntLiteral_0= ruleIntLiteral | this_RealLiteral_1= ruleRealLiteral )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1202:1: (this_IntLiteral_0= ruleIntLiteral | this_RealLiteral_1= ruleRealLiteral )
- int alt21=2;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1518:1: (this_IntLiteral_0= ruleIntLiteral | this_RealLiteral_1= ruleRealLiteral )
+ int alt30=2;
switch ( input.LA(1) ) {
- case 34:
+ case 43:
{
- int LA21_1 = input.LA(2);
+ int LA30_1 = input.LA(2);
- if ( (LA21_1==RULE_INT) ) {
- int LA21_3 = input.LA(3);
+ if ( (LA30_1==RULE_INT) ) {
+ int LA30_3 = input.LA(3);
- if ( (LA21_3==30) ) {
- alt21=2;
+ if ( (LA30_3==39) ) {
+ alt30=2;
}
- else if ( (LA21_3==EOF||(LA21_3>=13 && LA21_3<=14)||(LA21_3>=21 && LA21_3<=22)||(LA21_3>=24 && LA21_3<=25)||LA21_3==31) ) {
- alt21=1;
+ else if ( (LA30_3==EOF||(LA30_3>=14 && LA30_3<=15)||(LA30_3>=28 && LA30_3<=29)||LA30_3==32||LA30_3==40) ) {
+ alt30=1;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 21, 3, input);
+ new NoViableAltException("", 30, 3, input);
throw nvae;
}
}
- else if ( (LA21_1==30) ) {
- alt21=2;
+ else if ( (LA30_1==39) ) {
+ alt30=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 21, 1, input);
+ new NoViableAltException("", 30, 1, input);
throw nvae;
}
}
break;
- case 35:
+ case 44:
{
- int LA21_2 = input.LA(2);
+ int LA30_2 = input.LA(2);
- if ( (LA21_2==RULE_INT) ) {
- int LA21_3 = input.LA(3);
+ if ( (LA30_2==39) ) {
+ alt30=2;
+ }
+ else if ( (LA30_2==RULE_INT) ) {
+ int LA30_3 = input.LA(3);
- if ( (LA21_3==30) ) {
- alt21=2;
+ if ( (LA30_3==39) ) {
+ alt30=2;
}
- else if ( (LA21_3==EOF||(LA21_3>=13 && LA21_3<=14)||(LA21_3>=21 && LA21_3<=22)||(LA21_3>=24 && LA21_3<=25)||LA21_3==31) ) {
- alt21=1;
+ else if ( (LA30_3==EOF||(LA30_3>=14 && LA30_3<=15)||(LA30_3>=28 && LA30_3<=29)||LA30_3==32||LA30_3==40) ) {
+ alt30=1;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 21, 3, input);
+ new NoViableAltException("", 30, 3, input);
throw nvae;
}
}
- else if ( (LA21_2==30) ) {
- alt21=2;
- }
else {
NoViableAltException nvae =
- new NoViableAltException("", 21, 2, input);
+ new NoViableAltException("", 30, 2, input);
throw nvae;
}
@@ -3166,17 +4027,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
case RULE_INT:
{
- int LA21_3 = input.LA(2);
+ int LA30_3 = input.LA(2);
- if ( (LA21_3==30) ) {
- alt21=2;
+ if ( (LA30_3==39) ) {
+ alt30=2;
}
- else if ( (LA21_3==EOF||(LA21_3>=13 && LA21_3<=14)||(LA21_3>=21 && LA21_3<=22)||(LA21_3>=24 && LA21_3<=25)||LA21_3==31) ) {
- alt21=1;
+ else if ( (LA30_3==EOF||(LA30_3>=14 && LA30_3<=15)||(LA30_3>=28 && LA30_3<=29)||LA30_3==32||LA30_3==40) ) {
+ alt30=1;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 21, 3, input);
+ new NoViableAltException("", 30, 3, input);
throw nvae;
}
@@ -3184,29 +4045,29 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
break;
case RULE_HEX:
{
- alt21=1;
+ alt30=1;
}
break;
- case 30:
+ case 39:
{
- alt21=2;
+ alt30=2;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 21, 0, input);
+ new NoViableAltException("", 30, 0, input);
throw nvae;
}
- switch (alt21) {
+ switch (alt30) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1203:5: this_IntLiteral_0= ruleIntLiteral
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1519:5: this_IntLiteral_0= ruleIntLiteral
{
newCompositeNode(grammarAccess.getNumberLiteralAccess().getIntLiteralParserRuleCall_0());
- pushFollow(FOLLOW_ruleIntLiteral_in_ruleNumberLiteral2866);
+ pushFollow(FOLLOW_ruleIntLiteral_in_ruleNumberLiteral3609);
this_IntLiteral_0=ruleIntLiteral();
state._fsp--;
@@ -3219,12 +4080,12 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1213:5: this_RealLiteral_1= ruleRealLiteral
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1529:5: this_RealLiteral_1= ruleRealLiteral
{
newCompositeNode(grammarAccess.getNumberLiteralAccess().getRealLiteralParserRuleCall_1());
- pushFollow(FOLLOW_ruleRealLiteral_in_ruleNumberLiteral2893);
+ pushFollow(FOLLOW_ruleRealLiteral_in_ruleNumberLiteral3636);
this_RealLiteral_1=ruleRealLiteral();
state._fsp--;
@@ -3257,7 +4118,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleRealLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1229:1: entryRuleRealLiteral returns [EObject current=null] : iv_ruleRealLiteral= ruleRealLiteral EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1545:1: entryRuleRealLiteral returns [EObject current=null] : iv_ruleRealLiteral= ruleRealLiteral EOF ;
public final EObject entryRuleRealLiteral() throws RecognitionException {
EObject current = null;
@@ -3265,17 +4126,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1230:2: (iv_ruleRealLiteral= ruleRealLiteral EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1231:2: iv_ruleRealLiteral= ruleRealLiteral EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1546:2: (iv_ruleRealLiteral= ruleRealLiteral EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1547:2: iv_ruleRealLiteral= ruleRealLiteral EOF
{
newCompositeNode(grammarAccess.getRealLiteralRule());
- pushFollow(FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral2928);
+ pushFollow(FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral3671);
iv_ruleRealLiteral=ruleRealLiteral();
state._fsp--;
current =iv_ruleRealLiteral;
- match(input,EOF,FOLLOW_EOF_in_entryRuleRealLiteral2938);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleRealLiteral3681);
}
@@ -3293,7 +4154,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleRealLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1238:1: ruleRealLiteral returns [EObject current=null] : ( () ( (lv_value_1_0= ruleReal ) ) ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1554:1: ruleRealLiteral returns [EObject current=null] : ( () ( (lv_value_1_0= ruleReal ) ) ) ;
public final EObject ruleRealLiteral() throws RecognitionException {
EObject current = null;
@@ -3303,14 +4164,14 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1241:28: ( ( () ( (lv_value_1_0= ruleReal ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1242:1: ( () ( (lv_value_1_0= ruleReal ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1557:28: ( ( () ( (lv_value_1_0= ruleReal ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1558:1: ( () ( (lv_value_1_0= ruleReal ) ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1242:1: ( () ( (lv_value_1_0= ruleReal ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1242:2: () ( (lv_value_1_0= ruleReal ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1558:1: ( () ( (lv_value_1_0= ruleReal ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1558:2: () ( (lv_value_1_0= ruleReal ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1242:2: ()
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1243:5:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1558:2: ()
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1559:5:
{
current = forceCreateModelElement(
@@ -3320,16 +4181,16 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1248:2: ( (lv_value_1_0= ruleReal ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1249:1: (lv_value_1_0= ruleReal )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1564:2: ( (lv_value_1_0= ruleReal ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1565:1: (lv_value_1_0= ruleReal )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1249:1: (lv_value_1_0= ruleReal )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1250:3: lv_value_1_0= ruleReal
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1565:1: (lv_value_1_0= ruleReal )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1566:3: lv_value_1_0= ruleReal
{
newCompositeNode(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_1_0());
- pushFollow(FOLLOW_ruleReal_in_ruleRealLiteral2993);
+ pushFollow(FOLLOW_ruleReal_in_ruleRealLiteral3736);
lv_value_1_0=ruleReal();
state._fsp--;
@@ -3372,7 +4233,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleIntLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1274:1: entryRuleIntLiteral returns [EObject current=null] : iv_ruleIntLiteral= ruleIntLiteral EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1590:1: entryRuleIntLiteral returns [EObject current=null] : iv_ruleIntLiteral= ruleIntLiteral EOF ;
public final EObject entryRuleIntLiteral() throws RecognitionException {
EObject current = null;
@@ -3380,17 +4241,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1275:2: (iv_ruleIntLiteral= ruleIntLiteral EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1276:2: iv_ruleIntLiteral= ruleIntLiteral EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1591:2: (iv_ruleIntLiteral= ruleIntLiteral EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1592:2: iv_ruleIntLiteral= ruleIntLiteral EOF
{
newCompositeNode(grammarAccess.getIntLiteralRule());
- pushFollow(FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral3029);
+ pushFollow(FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral3772);
iv_ruleIntLiteral=ruleIntLiteral();
state._fsp--;
current =iv_ruleIntLiteral;
- match(input,EOF,FOLLOW_EOF_in_entryRuleIntLiteral3039);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleIntLiteral3782);
}
@@ -3408,7 +4269,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleIntLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1283:1: ruleIntLiteral returns [EObject current=null] : ( () ( (lv_value_1_0= ruleInteger ) ) ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1599:1: ruleIntLiteral returns [EObject current=null] : ( () ( (lv_value_1_0= ruleInteger ) ) ) ;
public final EObject ruleIntLiteral() throws RecognitionException {
EObject current = null;
@@ -3418,14 +4279,14 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1286:28: ( ( () ( (lv_value_1_0= ruleInteger ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1287:1: ( () ( (lv_value_1_0= ruleInteger ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1602:28: ( ( () ( (lv_value_1_0= ruleInteger ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1603:1: ( () ( (lv_value_1_0= ruleInteger ) ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1287:1: ( () ( (lv_value_1_0= ruleInteger ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1287:2: () ( (lv_value_1_0= ruleInteger ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1603:1: ( () ( (lv_value_1_0= ruleInteger ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1603:2: () ( (lv_value_1_0= ruleInteger ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1287:2: ()
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1288:5:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1603:2: ()
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1604:5:
{
current = forceCreateModelElement(
@@ -3435,16 +4296,16 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1293:2: ( (lv_value_1_0= ruleInteger ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1294:1: (lv_value_1_0= ruleInteger )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1609:2: ( (lv_value_1_0= ruleInteger ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1610:1: (lv_value_1_0= ruleInteger )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1294:1: (lv_value_1_0= ruleInteger )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1295:3: lv_value_1_0= ruleInteger
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1610:1: (lv_value_1_0= ruleInteger )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1611:3: lv_value_1_0= ruleInteger
{
newCompositeNode(grammarAccess.getIntLiteralAccess().getValueIntegerParserRuleCall_1_0());
- pushFollow(FOLLOW_ruleInteger_in_ruleIntLiteral3094);
+ pushFollow(FOLLOW_ruleInteger_in_ruleIntLiteral3837);
lv_value_1_0=ruleInteger();
state._fsp--;
@@ -3487,7 +4348,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleStringLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1319:1: entryRuleStringLiteral returns [EObject current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1635:1: entryRuleStringLiteral returns [EObject current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
public final EObject entryRuleStringLiteral() throws RecognitionException {
EObject current = null;
@@ -3495,17 +4356,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1320:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1321:2: iv_ruleStringLiteral= ruleStringLiteral EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1636:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1637:2: iv_ruleStringLiteral= ruleStringLiteral EOF
{
newCompositeNode(grammarAccess.getStringLiteralRule());
- pushFollow(FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral3130);
+ pushFollow(FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral3873);
iv_ruleStringLiteral=ruleStringLiteral();
state._fsp--;
current =iv_ruleStringLiteral;
- match(input,EOF,FOLLOW_EOF_in_entryRuleStringLiteral3140);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleStringLiteral3883);
}
@@ -3523,7 +4384,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleStringLiteral"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1328:1: ruleStringLiteral returns [EObject current=null] : ( () ( (lv_value_1_0= RULE_STRING ) ) ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1644:1: ruleStringLiteral returns [EObject current=null] : ( () ( (lv_value_1_0= RULE_STRING ) ) ) ;
public final EObject ruleStringLiteral() throws RecognitionException {
EObject current = null;
@@ -3532,14 +4393,14 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1331:28: ( ( () ( (lv_value_1_0= RULE_STRING ) ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1332:1: ( () ( (lv_value_1_0= RULE_STRING ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1647:28: ( ( () ( (lv_value_1_0= RULE_STRING ) ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1648:1: ( () ( (lv_value_1_0= RULE_STRING ) ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1332:1: ( () ( (lv_value_1_0= RULE_STRING ) ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1332:2: () ( (lv_value_1_0= RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1648:1: ( () ( (lv_value_1_0= RULE_STRING ) ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1648:2: () ( (lv_value_1_0= RULE_STRING ) )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1332:2: ()
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1333:5:
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1648:2: ()
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1649:5:
{
current = forceCreateModelElement(
@@ -3549,13 +4410,13 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1338:2: ( (lv_value_1_0= RULE_STRING ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1339:1: (lv_value_1_0= RULE_STRING )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1654:2: ( (lv_value_1_0= RULE_STRING ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1655:1: (lv_value_1_0= RULE_STRING )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1339:1: (lv_value_1_0= RULE_STRING )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1340:3: lv_value_1_0= RULE_STRING
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1655:1: (lv_value_1_0= RULE_STRING )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1656:3: lv_value_1_0= RULE_STRING
{
- lv_value_1_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleStringLiteral3191);
+ lv_value_1_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleStringLiteral3934);
newLeafNode(lv_value_1_0, grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0());
@@ -3596,7 +4457,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleInteger"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1364:1: entryRuleInteger returns [String current=null] : iv_ruleInteger= ruleInteger EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1680:1: entryRuleInteger returns [String current=null] : iv_ruleInteger= ruleInteger EOF ;
public final String entryRuleInteger() throws RecognitionException {
String current = null;
@@ -3604,17 +4465,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1365:2: (iv_ruleInteger= ruleInteger EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1366:2: iv_ruleInteger= ruleInteger EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1681:2: (iv_ruleInteger= ruleInteger EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1682:2: iv_ruleInteger= ruleInteger EOF
{
newCompositeNode(grammarAccess.getIntegerRule());
- pushFollow(FOLLOW_ruleInteger_in_entryRuleInteger3233);
+ pushFollow(FOLLOW_ruleInteger_in_entryRuleInteger3976);
iv_ruleInteger=ruleInteger();
state._fsp--;
current =iv_ruleInteger.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleInteger3244);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleInteger3987);
}
@@ -3632,7 +4493,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleInteger"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1373:1: ruleInteger returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SignedInteger_0= ruleSignedInteger | this_Hexadecimal_1= ruleHexadecimal ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1689:1: ruleInteger returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SignedInteger_0= ruleSignedInteger | this_Hexadecimal_1= ruleHexadecimal ) ;
public final AntlrDatatypeRuleToken ruleInteger() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
@@ -3644,33 +4505,33 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1376:28: ( (this_SignedInteger_0= ruleSignedInteger | this_Hexadecimal_1= ruleHexadecimal ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1377:1: (this_SignedInteger_0= ruleSignedInteger | this_Hexadecimal_1= ruleHexadecimal )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1692:28: ( (this_SignedInteger_0= ruleSignedInteger | this_Hexadecimal_1= ruleHexadecimal ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1693:1: (this_SignedInteger_0= ruleSignedInteger | this_Hexadecimal_1= ruleHexadecimal )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1377:1: (this_SignedInteger_0= ruleSignedInteger | this_Hexadecimal_1= ruleHexadecimal )
- int alt22=2;
- int LA22_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1693:1: (this_SignedInteger_0= ruleSignedInteger | this_Hexadecimal_1= ruleHexadecimal )
+ int alt31=2;
+ int LA31_0 = input.LA(1);
- if ( (LA22_0==RULE_INT||(LA22_0>=34 && LA22_0<=35)) ) {
- alt22=1;
+ if ( (LA31_0==RULE_INT||(LA31_0>=43 && LA31_0<=44)) ) {
+ alt31=1;
}
- else if ( (LA22_0==RULE_HEX) ) {
- alt22=2;
+ else if ( (LA31_0==RULE_HEX) ) {
+ alt31=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 22, 0, input);
+ new NoViableAltException("", 31, 0, input);
throw nvae;
}
- switch (alt22) {
+ switch (alt31) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1378:5: this_SignedInteger_0= ruleSignedInteger
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1694:5: this_SignedInteger_0= ruleSignedInteger
{
newCompositeNode(grammarAccess.getIntegerAccess().getSignedIntegerParserRuleCall_0());
- pushFollow(FOLLOW_ruleSignedInteger_in_ruleInteger3291);
+ pushFollow(FOLLOW_ruleSignedInteger_in_ruleInteger4034);
this_SignedInteger_0=ruleSignedInteger();
state._fsp--;
@@ -3685,12 +4546,12 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1390:5: this_Hexadecimal_1= ruleHexadecimal
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1706:5: this_Hexadecimal_1= ruleHexadecimal
{
newCompositeNode(grammarAccess.getIntegerAccess().getHexadecimalParserRuleCall_1());
- pushFollow(FOLLOW_ruleHexadecimal_in_ruleInteger3324);
+ pushFollow(FOLLOW_ruleHexadecimal_in_ruleInteger4067);
this_Hexadecimal_1=ruleHexadecimal();
state._fsp--;
@@ -3725,7 +4586,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleSignedInteger"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1408:1: entryRuleSignedInteger returns [String current=null] : iv_ruleSignedInteger= ruleSignedInteger EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1724:1: entryRuleSignedInteger returns [String current=null] : iv_ruleSignedInteger= ruleSignedInteger EOF ;
public final String entryRuleSignedInteger() throws RecognitionException {
String current = null;
@@ -3736,17 +4597,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1412:2: (iv_ruleSignedInteger= ruleSignedInteger EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1413:2: iv_ruleSignedInteger= ruleSignedInteger EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1728:2: (iv_ruleSignedInteger= ruleSignedInteger EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1729:2: iv_ruleSignedInteger= ruleSignedInteger EOF
{
newCompositeNode(grammarAccess.getSignedIntegerRule());
- pushFollow(FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger3376);
+ pushFollow(FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger4119);
iv_ruleSignedInteger=ruleSignedInteger();
state._fsp--;
current =iv_ruleSignedInteger.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleSignedInteger3387);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleSignedInteger4130);
}
@@ -3767,7 +4628,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleSignedInteger"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1423:1: ruleSignedInteger returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1739:1: ruleSignedInteger returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT ) ;
public final AntlrDatatypeRuleToken ruleSignedInteger() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
@@ -3778,27 +4639,27 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1427:28: ( ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1428:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1743:28: ( ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1744:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1428:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1428:2: (kw= '+' | kw= '-' )? this_INT_2= RULE_INT
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1744:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1744:2: (kw= '+' | kw= '-' )? this_INT_2= RULE_INT
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1428:2: (kw= '+' | kw= '-' )?
- int alt23=3;
- int LA23_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1744:2: (kw= '+' | kw= '-' )?
+ int alt32=3;
+ int LA32_0 = input.LA(1);
- if ( (LA23_0==34) ) {
- alt23=1;
+ if ( (LA32_0==43) ) {
+ alt32=1;
}
- else if ( (LA23_0==35) ) {
- alt23=2;
+ else if ( (LA32_0==44) ) {
+ alt32=2;
}
- switch (alt23) {
+ switch (alt32) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1429:2: kw= '+'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1745:2: kw= '+'
{
- kw=(Token)match(input,34,FOLLOW_34_in_ruleSignedInteger3430);
+ kw=(Token)match(input,43,FOLLOW_43_in_ruleSignedInteger4173);
current.merge(kw);
newLeafNode(kw, grammarAccess.getSignedIntegerAccess().getPlusSignKeyword_0_0());
@@ -3807,9 +4668,9 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1436:2: kw= '-'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1752:2: kw= '-'
{
- kw=(Token)match(input,35,FOLLOW_35_in_ruleSignedInteger3449);
+ kw=(Token)match(input,44,FOLLOW_44_in_ruleSignedInteger4192);
current.merge(kw);
newLeafNode(kw, grammarAccess.getSignedIntegerAccess().getHyphenMinusKeyword_0_1());
@@ -3820,7 +4681,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- this_INT_2=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleSignedInteger3466);
+ this_INT_2=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleSignedInteger4209);
current.merge(this_INT_2);
@@ -3851,7 +4712,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleHexadecimal"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1459:1: entryRuleHexadecimal returns [String current=null] : iv_ruleHexadecimal= ruleHexadecimal EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1775:1: entryRuleHexadecimal returns [String current=null] : iv_ruleHexadecimal= ruleHexadecimal EOF ;
public final String entryRuleHexadecimal() throws RecognitionException {
String current = null;
@@ -3862,17 +4723,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1463:2: (iv_ruleHexadecimal= ruleHexadecimal EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1464:2: iv_ruleHexadecimal= ruleHexadecimal EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1779:2: (iv_ruleHexadecimal= ruleHexadecimal EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1780:2: iv_ruleHexadecimal= ruleHexadecimal EOF
{
newCompositeNode(grammarAccess.getHexadecimalRule());
- pushFollow(FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal3522);
+ pushFollow(FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal4265);
iv_ruleHexadecimal=ruleHexadecimal();
state._fsp--;
current =iv_ruleHexadecimal.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleHexadecimal3533);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleHexadecimal4276);
}
@@ -3893,7 +4754,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleHexadecimal"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1474:1: ruleHexadecimal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_HEX_0= RULE_HEX ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1790:1: ruleHexadecimal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_HEX_0= RULE_HEX ;
public final AntlrDatatypeRuleToken ruleHexadecimal() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
@@ -3903,10 +4764,10 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1478:28: (this_HEX_0= RULE_HEX )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1479:5: this_HEX_0= RULE_HEX
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1794:28: (this_HEX_0= RULE_HEX )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1795:5: this_HEX_0= RULE_HEX
{
- this_HEX_0=(Token)match(input,RULE_HEX,FOLLOW_RULE_HEX_in_ruleHexadecimal3576);
+ this_HEX_0=(Token)match(input,RULE_HEX,FOLLOW_RULE_HEX_in_ruleHexadecimal4319);
current.merge(this_HEX_0);
@@ -3934,7 +4795,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleReal"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1497:1: entryRuleReal returns [String current=null] : iv_ruleReal= ruleReal EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1813:1: entryRuleReal returns [String current=null] : iv_ruleReal= ruleReal EOF ;
public final String entryRuleReal() throws RecognitionException {
String current = null;
@@ -3942,17 +4803,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1498:2: (iv_ruleReal= ruleReal EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1499:2: iv_ruleReal= ruleReal EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1814:2: (iv_ruleReal= ruleReal EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1815:2: iv_ruleReal= ruleReal EOF
{
newCompositeNode(grammarAccess.getRealRule());
- pushFollow(FOLLOW_ruleReal_in_entryRuleReal3625);
+ pushFollow(FOLLOW_ruleReal_in_entryRuleReal4368);
iv_ruleReal=ruleReal();
state._fsp--;
current =iv_ruleReal.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleReal3636);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleReal4379);
}
@@ -3970,7 +4831,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleReal"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1506:1: ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1822:1: ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp ) ;
public final AntlrDatatypeRuleToken ruleReal() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
@@ -3986,20 +4847,20 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
enterRule();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1509:28: ( (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1510:1: (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1825:28: ( (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1826:1: (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1510:1: (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp )
- int alt24=4;
- alt24 = dfa24.predict(input);
- switch (alt24) {
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1826:1: (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp )
+ int alt33=4;
+ alt33 = dfa33.predict(input);
+ switch (alt33) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1511:5: this_Decimal_0= ruleDecimal
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1827:5: this_Decimal_0= ruleDecimal
{
newCompositeNode(grammarAccess.getRealAccess().getDecimalParserRuleCall_0());
- pushFollow(FOLLOW_ruleDecimal_in_ruleReal3683);
+ pushFollow(FOLLOW_ruleDecimal_in_ruleReal4426);
this_Decimal_0=ruleDecimal();
state._fsp--;
@@ -4014,12 +4875,12 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1523:5: this_DotDecimal_1= ruleDotDecimal
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1839:5: this_DotDecimal_1= ruleDotDecimal
{
newCompositeNode(grammarAccess.getRealAccess().getDotDecimalParserRuleCall_1());
- pushFollow(FOLLOW_ruleDotDecimal_in_ruleReal3716);
+ pushFollow(FOLLOW_ruleDotDecimal_in_ruleReal4459);
this_DotDecimal_1=ruleDotDecimal();
state._fsp--;
@@ -4034,12 +4895,12 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 3 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1535:5: this_DecimalDot_2= ruleDecimalDot
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1851:5: this_DecimalDot_2= ruleDecimalDot
{
newCompositeNode(grammarAccess.getRealAccess().getDecimalDotParserRuleCall_2());
- pushFollow(FOLLOW_ruleDecimalDot_in_ruleReal3749);
+ pushFollow(FOLLOW_ruleDecimalDot_in_ruleReal4492);
this_DecimalDot_2=ruleDecimalDot();
state._fsp--;
@@ -4054,12 +4915,12 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 4 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1547:5: this_DecimalExp_3= ruleDecimalExp
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1863:5: this_DecimalExp_3= ruleDecimalExp
{
newCompositeNode(grammarAccess.getRealAccess().getDecimalExpParserRuleCall_3());
- pushFollow(FOLLOW_ruleDecimalExp_in_ruleReal3782);
+ pushFollow(FOLLOW_ruleDecimalExp_in_ruleReal4525);
this_DecimalExp_3=ruleDecimalExp();
state._fsp--;
@@ -4094,7 +4955,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleDecimal"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1565:1: entryRuleDecimal returns [String current=null] : iv_ruleDecimal= ruleDecimal EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1881:1: entryRuleDecimal returns [String current=null] : iv_ruleDecimal= ruleDecimal EOF ;
public final String entryRuleDecimal() throws RecognitionException {
String current = null;
@@ -4105,17 +4966,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1569:2: (iv_ruleDecimal= ruleDecimal EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1570:2: iv_ruleDecimal= ruleDecimal EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1885:2: (iv_ruleDecimal= ruleDecimal EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1886:2: iv_ruleDecimal= ruleDecimal EOF
{
newCompositeNode(grammarAccess.getDecimalRule());
- pushFollow(FOLLOW_ruleDecimal_in_entryRuleDecimal3834);
+ pushFollow(FOLLOW_ruleDecimal_in_entryRuleDecimal4577);
iv_ruleDecimal=ruleDecimal();
state._fsp--;
current =iv_ruleDecimal.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleDecimal3845);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDecimal4588);
}
@@ -4136,7 +4997,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleDecimal"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1580:1: ruleDecimal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1896:1: ruleDecimal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT ) ;
public final AntlrDatatypeRuleToken ruleDecimal() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
@@ -4148,27 +5009,27 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1584:28: ( ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1585:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1900:28: ( ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1901:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1585:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1585:2: (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1901:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1901:2: (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1585:2: (kw= '+' | kw= '-' )?
- int alt25=3;
- int LA25_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1901:2: (kw= '+' | kw= '-' )?
+ int alt34=3;
+ int LA34_0 = input.LA(1);
- if ( (LA25_0==34) ) {
- alt25=1;
+ if ( (LA34_0==43) ) {
+ alt34=1;
}
- else if ( (LA25_0==35) ) {
- alt25=2;
+ else if ( (LA34_0==44) ) {
+ alt34=2;
}
- switch (alt25) {
+ switch (alt34) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1586:2: kw= '+'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1902:2: kw= '+'
{
- kw=(Token)match(input,34,FOLLOW_34_in_ruleDecimal3888);
+ kw=(Token)match(input,43,FOLLOW_43_in_ruleDecimal4631);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDecimalAccess().getPlusSignKeyword_0_0());
@@ -4177,9 +5038,9 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1593:2: kw= '-'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1909:2: kw= '-'
{
- kw=(Token)match(input,35,FOLLOW_35_in_ruleDecimal3907);
+ kw=(Token)match(input,44,FOLLOW_44_in_ruleDecimal4650);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDecimalAccess().getHyphenMinusKeyword_0_1());
@@ -4190,19 +5051,19 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- this_INT_2=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimal3924);
+ this_INT_2=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimal4667);
current.merge(this_INT_2);
newLeafNode(this_INT_2, grammarAccess.getDecimalAccess().getINTTerminalRuleCall_1());
- kw=(Token)match(input,30,FOLLOW_30_in_ruleDecimal3942);
+ kw=(Token)match(input,39,FOLLOW_39_in_ruleDecimal4685);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDecimalAccess().getFullStopKeyword_2());
- this_INT_4=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimal3957);
+ this_INT_4=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimal4700);
current.merge(this_INT_4);
@@ -4233,7 +5094,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleDotDecimal"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1629:1: entryRuleDotDecimal returns [String current=null] : iv_ruleDotDecimal= ruleDotDecimal EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1945:1: entryRuleDotDecimal returns [String current=null] : iv_ruleDotDecimal= ruleDotDecimal EOF ;
public final String entryRuleDotDecimal() throws RecognitionException {
String current = null;
@@ -4244,17 +5105,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1633:2: (iv_ruleDotDecimal= ruleDotDecimal EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1634:2: iv_ruleDotDecimal= ruleDotDecimal EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1949:2: (iv_ruleDotDecimal= ruleDotDecimal EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1950:2: iv_ruleDotDecimal= ruleDotDecimal EOF
{
newCompositeNode(grammarAccess.getDotDecimalRule());
- pushFollow(FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal4013);
+ pushFollow(FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal4756);
iv_ruleDotDecimal=ruleDotDecimal();
state._fsp--;
current =iv_ruleDotDecimal.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleDotDecimal4024);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDotDecimal4767);
}
@@ -4275,7 +5136,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleDotDecimal"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1644:1: ruleDotDecimal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1960:1: ruleDotDecimal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT ) ;
public final AntlrDatatypeRuleToken ruleDotDecimal() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
@@ -4286,27 +5147,27 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1648:28: ( ( (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1649:1: ( (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1964:28: ( ( (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1965:1: ( (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1649:1: ( (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1649:2: (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1965:1: ( (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1965:2: (kw= '+' | kw= '-' )? kw= '.' this_INT_3= RULE_INT
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1649:2: (kw= '+' | kw= '-' )?
- int alt26=3;
- int LA26_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1965:2: (kw= '+' | kw= '-' )?
+ int alt35=3;
+ int LA35_0 = input.LA(1);
- if ( (LA26_0==34) ) {
- alt26=1;
+ if ( (LA35_0==43) ) {
+ alt35=1;
}
- else if ( (LA26_0==35) ) {
- alt26=2;
+ else if ( (LA35_0==44) ) {
+ alt35=2;
}
- switch (alt26) {
+ switch (alt35) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1650:2: kw= '+'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1966:2: kw= '+'
{
- kw=(Token)match(input,34,FOLLOW_34_in_ruleDotDecimal4067);
+ kw=(Token)match(input,43,FOLLOW_43_in_ruleDotDecimal4810);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDotDecimalAccess().getPlusSignKeyword_0_0());
@@ -4315,9 +5176,9 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1657:2: kw= '-'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1973:2: kw= '-'
{
- kw=(Token)match(input,35,FOLLOW_35_in_ruleDotDecimal4086);
+ kw=(Token)match(input,44,FOLLOW_44_in_ruleDotDecimal4829);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDotDecimalAccess().getHyphenMinusKeyword_0_1());
@@ -4328,12 +5189,12 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- kw=(Token)match(input,30,FOLLOW_30_in_ruleDotDecimal4101);
+ kw=(Token)match(input,39,FOLLOW_39_in_ruleDotDecimal4844);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDotDecimalAccess().getFullStopKeyword_1());
- this_INT_3=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDotDecimal4116);
+ this_INT_3=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDotDecimal4859);
current.merge(this_INT_3);
@@ -4364,7 +5225,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleDecimalDot"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1686:1: entryRuleDecimalDot returns [String current=null] : iv_ruleDecimalDot= ruleDecimalDot EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2002:1: entryRuleDecimalDot returns [String current=null] : iv_ruleDecimalDot= ruleDecimalDot EOF ;
public final String entryRuleDecimalDot() throws RecognitionException {
String current = null;
@@ -4375,17 +5236,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1690:2: (iv_ruleDecimalDot= ruleDecimalDot EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1691:2: iv_ruleDecimalDot= ruleDecimalDot EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2006:2: (iv_ruleDecimalDot= ruleDecimalDot EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2007:2: iv_ruleDecimalDot= ruleDecimalDot EOF
{
newCompositeNode(grammarAccess.getDecimalDotRule());
- pushFollow(FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot4172);
+ pushFollow(FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot4915);
iv_ruleDecimalDot=ruleDecimalDot();
state._fsp--;
current =iv_ruleDecimalDot.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalDot4183);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalDot4926);
}
@@ -4406,7 +5267,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleDecimalDot"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1701:1: ruleDecimalDot returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2017:1: ruleDecimalDot returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' ) ;
public final AntlrDatatypeRuleToken ruleDecimalDot() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
@@ -4417,27 +5278,27 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1705:28: ( ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1706:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2021:28: ( ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2022:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1706:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1706:2: (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2022:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2022:2: (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.'
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1706:2: (kw= '+' | kw= '-' )?
- int alt27=3;
- int LA27_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2022:2: (kw= '+' | kw= '-' )?
+ int alt36=3;
+ int LA36_0 = input.LA(1);
- if ( (LA27_0==34) ) {
- alt27=1;
+ if ( (LA36_0==43) ) {
+ alt36=1;
}
- else if ( (LA27_0==35) ) {
- alt27=2;
+ else if ( (LA36_0==44) ) {
+ alt36=2;
}
- switch (alt27) {
+ switch (alt36) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1707:2: kw= '+'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2023:2: kw= '+'
{
- kw=(Token)match(input,34,FOLLOW_34_in_ruleDecimalDot4226);
+ kw=(Token)match(input,43,FOLLOW_43_in_ruleDecimalDot4969);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDecimalDotAccess().getPlusSignKeyword_0_0());
@@ -4446,9 +5307,9 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1714:2: kw= '-'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2030:2: kw= '-'
{
- kw=(Token)match(input,35,FOLLOW_35_in_ruleDecimalDot4245);
+ kw=(Token)match(input,44,FOLLOW_44_in_ruleDecimalDot4988);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDecimalDotAccess().getHyphenMinusKeyword_0_1());
@@ -4459,14 +5320,14 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- this_INT_2=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimalDot4262);
+ this_INT_2=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimalDot5005);
current.merge(this_INT_2);
newLeafNode(this_INT_2, grammarAccess.getDecimalDotAccess().getINTTerminalRuleCall_1());
- kw=(Token)match(input,30,FOLLOW_30_in_ruleDecimalDot4280);
+ kw=(Token)match(input,39,FOLLOW_39_in_ruleDecimalDot5023);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDecimalDotAccess().getFullStopKeyword_2());
@@ -4495,7 +5356,7 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "entryRuleDecimalExp"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1743:1: entryRuleDecimalExp returns [String current=null] : iv_ruleDecimalExp= ruleDecimalExp EOF ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2059:1: entryRuleDecimalExp returns [String current=null] : iv_ruleDecimalExp= ruleDecimalExp EOF ;
public final String entryRuleDecimalExp() throws RecognitionException {
String current = null;
@@ -4506,17 +5367,17 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1747:2: (iv_ruleDecimalExp= ruleDecimalExp EOF )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1748:2: iv_ruleDecimalExp= ruleDecimalExp EOF
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2063:2: (iv_ruleDecimalExp= ruleDecimalExp EOF )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2064:2: iv_ruleDecimalExp= ruleDecimalExp EOF
{
newCompositeNode(grammarAccess.getDecimalExpRule());
- pushFollow(FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp4331);
+ pushFollow(FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp5074);
iv_ruleDecimalExp=ruleDecimalExp();
state._fsp--;
current =iv_ruleDecimalExp.getText();
- match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalExp4342);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleDecimalExp5085);
}
@@ -4537,41 +5398,40 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleDecimalExp"
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1758:1: ruleDecimalExp returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_ID_5= RULE_ID (kw= '+' | kw= '-' )? this_INT_8= RULE_INT ) ;
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2074:1: ruleDecimalExp returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_EXP_5= RULE_EXP ) ;
public final AntlrDatatypeRuleToken ruleDecimalExp() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
Token this_INT_2=null;
Token this_INT_4=null;
- Token this_ID_5=null;
- Token this_INT_8=null;
+ Token this_EXP_5=null;
enterRule();
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1762:28: ( ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_ID_5= RULE_ID (kw= '+' | kw= '-' )? this_INT_8= RULE_INT ) )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1763:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_ID_5= RULE_ID (kw= '+' | kw= '-' )? this_INT_8= RULE_INT )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2078:28: ( ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_EXP_5= RULE_EXP ) )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2079:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_EXP_5= RULE_EXP )
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1763:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_ID_5= RULE_ID (kw= '+' | kw= '-' )? this_INT_8= RULE_INT )
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1763:2: (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_ID_5= RULE_ID (kw= '+' | kw= '-' )? this_INT_8= RULE_INT
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2079:1: ( (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_EXP_5= RULE_EXP )
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2079:2: (kw= '+' | kw= '-' )? this_INT_2= RULE_INT kw= '.' this_INT_4= RULE_INT this_EXP_5= RULE_EXP
{
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1763:2: (kw= '+' | kw= '-' )?
- int alt28=3;
- int LA28_0 = input.LA(1);
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2079:2: (kw= '+' | kw= '-' )?
+ int alt37=3;
+ int LA37_0 = input.LA(1);
- if ( (LA28_0==34) ) {
- alt28=1;
+ if ( (LA37_0==43) ) {
+ alt37=1;
}
- else if ( (LA28_0==35) ) {
- alt28=2;
+ else if ( (LA37_0==44) ) {
+ alt37=2;
}
- switch (alt28) {
+ switch (alt37) {
case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1764:2: kw= '+'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2080:2: kw= '+'
{
- kw=(Token)match(input,34,FOLLOW_34_in_ruleDecimalExp4385);
+ kw=(Token)match(input,43,FOLLOW_43_in_ruleDecimalExp5128);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDecimalExpAccess().getPlusSignKeyword_0_0());
@@ -4580,9 +5440,9 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
break;
case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1771:2: kw= '-'
+ // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:2087:2: kw= '-'
{
- kw=(Token)match(input,35,FOLLOW_35_in_ruleDecimalExp4404);
+ kw=(Token)match(input,44,FOLLOW_44_in_ruleDecimalExp5147);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_0_1());
@@ -4593,74 +5453,31 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
}
- this_INT_2=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimalExp4421);
+ this_INT_2=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimalExp5164);
current.merge(this_INT_2);
newLeafNode(this_INT_2, grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_1());
- kw=(Token)match(input,30,FOLLOW_30_in_ruleDecimalExp4439);
+ kw=(Token)match(input,39,FOLLOW_39_in_ruleDecimalExp5182);
current.merge(kw);
newLeafNode(kw, grammarAccess.getDecimalExpAccess().getFullStopKeyword_2());
- this_INT_4=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimalExp4454);
+ this_INT_4=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimalExp5197);
current.merge(this_INT_4);
newLeafNode(this_INT_4, grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_3());
- this_ID_5=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleDecimalExp4474);
-
- current.merge(this_ID_5);
-
-
- newLeafNode(this_ID_5, grammarAccess.getDecimalExpAccess().getIDTerminalRuleCall_4());
-
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1803:1: (kw= '+' | kw= '-' )?
- int alt29=3;
- int LA29_0 = input.LA(1);
-
- if ( (LA29_0==34) ) {
- alt29=1;
- }
- else if ( (LA29_0==35) ) {
- alt29=2;
- }
- switch (alt29) {
- case 1 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1804:2: kw= '+'
- {
- kw=(Token)match(input,34,FOLLOW_34_in_ruleDecimalExp4493);
-
- current.merge(kw);
- newLeafNode(kw, grammarAccess.getDecimalExpAccess().getPlusSignKeyword_5_0());
-
-
- }
- break;
- case 2 :
- // ../org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/parser/antlr/internal/InternalConfig.g:1811:2: kw= '-'
- {
- kw=(Token)match(input,35,FOLLOW_35_in_ruleDecimalExp4512);
-
- current.merge(kw);
- newLeafNode(kw, grammarAccess.getDecimalExpAccess().getHyphenMinusKeyword_5_1());
-
-
- }
- break;
-
- }
-
- this_INT_8=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleDecimalExp4529);
+ this_EXP_5=(Token)match(input,RULE_EXP,FOLLOW_RULE_EXP_in_ruleDecimalExp5217);
- current.merge(this_INT_8);
+ current.merge(this_EXP_5);
- newLeafNode(this_INT_8, grammarAccess.getDecimalExpAccess().getINTTerminalRuleCall_6());
+ newLeafNode(this_EXP_5, grammarAccess.getDecimalExpAccess().getEXPTerminalRuleCall_4());
}
@@ -4687,231 +5504,256 @@ public class InternalConfigParser extends AbstractInternalAntlrParser {
// Delegated rules
- protected DFA24 dfa24 = new DFA24(this);
- static final String DFA24_eotS =
+ protected DFA33 dfa33 = new DFA33(this);
+ static final String DFA33_eotS =
"\12\uffff";
- static final String DFA24_eofS =
+ static final String DFA33_eofS =
"\5\uffff\1\6\1\uffff\1\11\2\uffff";
- static final String DFA24_minS =
- "\3\6\1\36\1\uffff\1\6\1\uffff\1\4\2\uffff";
- static final String DFA24_maxS =
- "\1\43\3\36\1\uffff\1\37\1\uffff\1\37\2\uffff";
- static final String DFA24_acceptS =
+ static final String DFA33_minS =
+ "\3\6\1\47\1\uffff\1\6\1\uffff\1\10\2\uffff";
+ static final String DFA33_maxS =
+ "\1\54\3\47\1\uffff\1\50\1\uffff\1\50\2\uffff";
+ static final String DFA33_acceptS =
"\4\uffff\1\2\1\uffff\1\3\1\uffff\1\4\1\1";
- static final String DFA24_specialS =
+ static final String DFA33_specialS =
"\12\uffff}>";
- static final String[] DFA24_transitionS = {
- "\1\3\27\uffff\1\4\3\uffff\1\1\1\2",
- "\1\3\27\uffff\1\4",
- "\1\3\27\uffff\1\4",
+ static final String[] DFA33_transitionS = {
+ "\1\3\40\uffff\1\4\3\uffff\1\1\1\2",
+ "\1\3\40\uffff\1\4",
+ "\1\3\40\uffff\1\4",
"\1\5",
"",
- "\1\7\6\uffff\2\6\6\uffff\2\6\1\uffff\2\6\5\uffff\1\6",
+ "\1\7\7\uffff\2\6\14\uffff\2\6\2\uffff\1\6\7\uffff\1\6",
"",
- "\1\10\10\uffff\2\11\6\uffff\2\11\1\uffff\2\11\5\uffff\1\11",
+ "\1\10\5\uffff\2\11\14\uffff\2\11\2\uffff\1\11\7\uffff\1\11",
"",
""
};
- static final short[] DFA24_eot = DFA.unpackEncodedString(DFA24_eotS);
- static final short[] DFA24_eof = DFA.unpackEncodedString(DFA24_eofS);
- static final char[] DFA24_min = DFA.unpackEncodedStringToUnsignedChars(DFA24_minS);
- static final char[] DFA24_max = DFA.unpackEncodedStringToUnsignedChars(DFA24_maxS);
- static final short[] DFA24_accept = DFA.unpackEncodedString(DFA24_acceptS);
- static final short[] DFA24_special = DFA.unpackEncodedString(DFA24_specialS);
- static final short[][] DFA24_transition;
+ static final short[] DFA33_eot = DFA.unpackEncodedString(DFA33_eotS);
+ static final short[] DFA33_eof = DFA.unpackEncodedString(DFA33_eofS);
+ static final char[] DFA33_min = DFA.unpackEncodedStringToUnsignedChars(DFA33_minS);
+ static final char[] DFA33_max = DFA.unpackEncodedStringToUnsignedChars(DFA33_maxS);
+ static final short[] DFA33_accept = DFA.unpackEncodedString(DFA33_acceptS);
+ static final short[] DFA33_special = DFA.unpackEncodedString(DFA33_specialS);
+ static final short[][] DFA33_transition;
static {
- int numStates = DFA24_transitionS.length;
- DFA24_transition = new short[numStates][];
+ int numStates = DFA33_transitionS.length;
+ DFA33_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
- DFA24_transition[i] = DFA.unpackEncodedString(DFA24_transitionS[i]);
+ DFA33_transition[i] = DFA.unpackEncodedString(DFA33_transitionS[i]);
}
}
- class DFA24 extends DFA {
+ class DFA33 extends DFA {
- public DFA24(BaseRecognizer recognizer) {
+ public DFA33(BaseRecognizer recognizer) {
this.recognizer = recognizer;
- this.decisionNumber = 24;
- this.eot = DFA24_eot;
- this.eof = DFA24_eof;
- this.min = DFA24_min;
- this.max = DFA24_max;
- this.accept = DFA24_accept;
- this.special = DFA24_special;
- this.transition = DFA24_transition;
+ this.decisionNumber = 33;
+ this.eot = DFA33_eot;
+ this.eof = DFA33_eof;
+ this.min = DFA33_min;
+ this.max = DFA33_max;
+ this.accept = DFA33_accept;
+ this.special = DFA33_special;
+ this.transition = DFA33_transition;
}
public String getDescription() {
- return "1510:1: (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp )";
+ return "1826:1: (this_Decimal_0= ruleDecimal | this_DotDecimal_1= ruleDotDecimal | this_DecimalDot_2= ruleDecimalDot | this_DecimalExp_3= ruleDecimalExp )";
}
}
public static final BitSet FOLLOW_ruleConfigModel_in_entryRuleConfigModel75 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleConfigModel85 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleImport_in_ruleConfigModel131 = new BitSet(new long[]{0x0000000004029002L});
- public static final BitSet FOLLOW_ruleConfigElement_in_ruleConfigModel153 = new BitSet(new long[]{0x0000000000029002L});
+ public static final BitSet FOLLOW_ruleImport_in_ruleConfigModel131 = new BitSet(new long[]{0x0000000801602002L});
+ public static final BitSet FOLLOW_ruleConfigElement_in_ruleConfigModel153 = new BitSet(new long[]{0x0000000001602002L});
public static final BitSet FOLLOW_ruleConfigElement_in_entryRuleConfigElement190 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleConfigElement200 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleActorClassConfig_in_ruleConfigElement247 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleActorInstanceConfig_in_ruleConfigElement274 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleProtocolClassConfig_in_ruleConfigElement301 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleActorClassConfig_in_entryRuleActorClassConfig336 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleActorClassConfig346 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_12_in_ruleActorClassConfig383 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_ruleFQN_in_ruleActorClassConfig406 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_13_in_ruleActorClassConfig418 = new BitSet(new long[]{0x0000000000404000L});
- public static final BitSet FOLLOW_ruleAttrClassConfig_in_ruleActorClassConfig439 = new BitSet(new long[]{0x0000000000404000L});
- public static final BitSet FOLLOW_14_in_ruleActorClassConfig452 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleActorInstanceConfig_in_entryRuleActorInstanceConfig488 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleActorInstanceConfig498 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_15_in_ruleActorInstanceConfig535 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_ruleFQN_in_ruleActorInstanceConfig558 = new BitSet(new long[]{0x0000000000010000L});
- public static final BitSet FOLLOW_16_in_ruleActorInstanceConfig570 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_ruleRefPath_in_ruleActorInstanceConfig591 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_13_in_ruleActorInstanceConfig603 = new BitSet(new long[]{0x0000000000604000L});
- public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_ruleActorInstanceConfig624 = new BitSet(new long[]{0x0000000000604000L});
- public static final BitSet FOLLOW_rulePortInstanceConfig_in_ruleActorInstanceConfig646 = new BitSet(new long[]{0x0000000000204000L});
- public static final BitSet FOLLOW_14_in_ruleActorInstanceConfig659 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleProtocolClassConfig_in_entryRuleProtocolClassConfig695 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleProtocolClassConfig705 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_17_in_ruleProtocolClassConfig742 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_ruleFQN_in_ruleProtocolClassConfig765 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_13_in_ruleProtocolClassConfig777 = new BitSet(new long[]{0x00000000000C4000L});
- public static final BitSet FOLLOW_18_in_ruleProtocolClassConfig835 = new BitSet(new long[]{0x0000000000100000L});
- public static final BitSet FOLLOW_rulePortClassConfig_in_ruleProtocolClassConfig856 = new BitSet(new long[]{0x00000000000C4000L});
- public static final BitSet FOLLOW_19_in_ruleProtocolClassConfig924 = new BitSet(new long[]{0x0000000000100000L});
- public static final BitSet FOLLOW_rulePortClassConfig_in_ruleProtocolClassConfig945 = new BitSet(new long[]{0x00000000000C4000L});
- public static final BitSet FOLLOW_14_in_ruleProtocolClassConfig998 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rulePortClassConfig_in_entryRulePortClassConfig1034 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRulePortClassConfig1044 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_20_in_rulePortClassConfig1090 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_13_in_rulePortClassConfig1102 = new BitSet(new long[]{0x0000000000404000L});
- public static final BitSet FOLLOW_ruleAttrClassConfig_in_rulePortClassConfig1123 = new BitSet(new long[]{0x0000000000404000L});
- public static final BitSet FOLLOW_14_in_rulePortClassConfig1136 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_rulePortInstanceConfig_in_entryRulePortInstanceConfig1172 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRulePortInstanceConfig1182 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_21_in_rulePortInstanceConfig1219 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_RULE_ID_in_rulePortInstanceConfig1239 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_13_in_rulePortInstanceConfig1251 = new BitSet(new long[]{0x0000000000404000L});
- public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_rulePortInstanceConfig1272 = new BitSet(new long[]{0x0000000000404000L});
- public static final BitSet FOLLOW_14_in_rulePortInstanceConfig1285 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAttrClassConfig_in_entryRuleAttrClassConfig1323 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleAttrClassConfig1333 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_22_in_ruleAttrClassConfig1370 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleAttrClassConfig1390 = new BitSet(new long[]{0x0000000000802002L});
- public static final BitSet FOLLOW_23_in_ruleAttrClassConfig1403 = new BitSet(new long[]{0x0000000F400000E0L});
- public static final BitSet FOLLOW_ruleLiteralArray_in_ruleAttrClassConfig1424 = new BitSet(new long[]{0x0000000000002002L});
- public static final BitSet FOLLOW_13_in_ruleAttrClassConfig1439 = new BitSet(new long[]{0x0000000003004000L});
- public static final BitSet FOLLOW_24_in_ruleAttrClassConfig1497 = new BitSet(new long[]{0x0000000000800000L});
- public static final BitSet FOLLOW_23_in_ruleAttrClassConfig1509 = new BitSet(new long[]{0x0000000C400000C0L});
- public static final BitSet FOLLOW_ruleNumberLiteral_in_ruleAttrClassConfig1530 = new BitSet(new long[]{0x0000000003004000L});
- public static final BitSet FOLLOW_25_in_ruleAttrClassConfig1598 = new BitSet(new long[]{0x0000000000800000L});
- public static final BitSet FOLLOW_23_in_ruleAttrClassConfig1610 = new BitSet(new long[]{0x0000000C400000C0L});
- public static final BitSet FOLLOW_ruleNumberLiteral_in_ruleAttrClassConfig1631 = new BitSet(new long[]{0x0000000003004000L});
- public static final BitSet FOLLOW_14_in_ruleAttrClassConfig1684 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_entryRuleAttrInstanceConfig1722 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleAttrInstanceConfig1732 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_22_in_ruleAttrInstanceConfig1769 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleAttrInstanceConfig1789 = new BitSet(new long[]{0x0000000000800002L});
- public static final BitSet FOLLOW_23_in_ruleAttrInstanceConfig1802 = new BitSet(new long[]{0x0000000F400000E0L});
- public static final BitSet FOLLOW_ruleLiteralArray_in_ruleAttrInstanceConfig1823 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleRefPath_in_entryRuleRefPath1861 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleRefPath1871 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleRefPath1913 = new BitSet(new long[]{0x0000000000010002L});
- public static final BitSet FOLLOW_16_in_ruleRefPath1931 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleRefPath1948 = new BitSet(new long[]{0x0000000000010002L});
- public static final BitSet FOLLOW_ruleImport_in_entryRuleImport1991 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleImport2001 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_26_in_ruleImport2038 = new BitSet(new long[]{0x0000000010000010L});
- public static final BitSet FOLLOW_ruleImportedFQN_in_ruleImport2061 = new BitSet(new long[]{0x0000000008000000L});
- public static final BitSet FOLLOW_27_in_ruleImport2073 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_28_in_ruleImport2092 = new BitSet(new long[]{0x0000000000000020L});
- public static final BitSet FOLLOW_RULE_STRING_in_ruleImport2110 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN2152 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleImportedFQN2163 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleFQN_in_ruleImportedFQN2210 = new BitSet(new long[]{0x0000000020000002L});
- public static final BitSet FOLLOW_29_in_ruleImportedFQN2229 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleFQN_in_entryRuleFQN2272 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleFQN2283 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleFQN2323 = new BitSet(new long[]{0x0000000040000002L});
- public static final BitSet FOLLOW_30_in_ruleFQN2342 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleFQN2357 = new BitSet(new long[]{0x0000000040000002L});
- public static final BitSet FOLLOW_ruleLiteralArray_in_entryRuleLiteralArray2404 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleLiteralArray2414 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleLiteral_in_ruleLiteralArray2460 = new BitSet(new long[]{0x0000000080000002L});
- public static final BitSet FOLLOW_31_in_ruleLiteralArray2473 = new BitSet(new long[]{0x0000000F400000E0L});
- public static final BitSet FOLLOW_ruleLiteral_in_ruleLiteralArray2494 = new BitSet(new long[]{0x0000000080000002L});
- public static final BitSet FOLLOW_ruleLiteral_in_entryRuleLiteral2532 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleLiteral2542 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleBooleanLiteral_in_ruleLiteral2589 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleNumberLiteral_in_ruleLiteral2616 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleStringLiteral_in_ruleLiteral2643 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral2678 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleBooleanLiteral2688 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_32_in_ruleBooleanLiteral2735 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_33_in_ruleBooleanLiteral2759 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral2809 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleNumberLiteral2819 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleIntLiteral_in_ruleNumberLiteral2866 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleRealLiteral_in_ruleNumberLiteral2893 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral2928 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleRealLiteral2938 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleReal_in_ruleRealLiteral2993 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral3029 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleIntLiteral3039 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleInteger_in_ruleIntLiteral3094 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral3130 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleStringLiteral3140 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_STRING_in_ruleStringLiteral3191 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleInteger_in_entryRuleInteger3233 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleInteger3244 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleSignedInteger_in_ruleInteger3291 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleHexadecimal_in_ruleInteger3324 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger3376 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleSignedInteger3387 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_34_in_ruleSignedInteger3430 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_35_in_ruleSignedInteger3449 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_RULE_INT_in_ruleSignedInteger3466 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal3522 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleHexadecimal3533 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_HEX_in_ruleHexadecimal3576 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleReal_in_entryRuleReal3625 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleReal3636 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimal_in_ruleReal3683 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDotDecimal_in_ruleReal3716 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimalDot_in_ruleReal3749 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimalExp_in_ruleReal3782 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimal_in_entryRuleDecimal3834 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleDecimal3845 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_34_in_ruleDecimal3888 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_35_in_ruleDecimal3907 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_RULE_INT_in_ruleDecimal3924 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_30_in_ruleDecimal3942 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_RULE_INT_in_ruleDecimal3957 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal4013 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleDotDecimal4024 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_34_in_ruleDotDecimal4067 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_35_in_ruleDotDecimal4086 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_30_in_ruleDotDecimal4101 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_RULE_INT_in_ruleDotDecimal4116 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot4172 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleDecimalDot4183 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_34_in_ruleDecimalDot4226 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_35_in_ruleDecimalDot4245 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_RULE_INT_in_ruleDecimalDot4262 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_30_in_ruleDecimalDot4280 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp4331 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleDecimalExp4342 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_34_in_ruleDecimalExp4385 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_35_in_ruleDecimalExp4404 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_RULE_INT_in_ruleDecimalExp4421 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_30_in_ruleDecimalExp4439 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_RULE_INT_in_ruleDecimalExp4454 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleDecimalExp4474 = new BitSet(new long[]{0x0000000C00000040L});
- public static final BitSet FOLLOW_34_in_ruleDecimalExp4493 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_35_in_ruleDecimalExp4512 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_RULE_INT_in_ruleDecimalExp4529 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSubSystemConfig_in_ruleConfigElement247 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleActorClassConfig_in_ruleConfigElement274 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleActorInstanceConfig_in_ruleConfigElement301 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleProtocolClassConfig_in_ruleConfigElement328 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSubSystemConfig_in_entryRuleSubSystemConfig363 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleSubSystemConfig373 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_13_in_ruleSubSystemConfig410 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleSubSystemConfig430 = new BitSet(new long[]{0x0000000000004000L});
+ public static final BitSet FOLLOW_14_in_ruleSubSystemConfig442 = new BitSet(new long[]{0x0000000000010000L});
+ public static final BitSet FOLLOW_ruleDynamicConfig_in_ruleSubSystemConfig463 = new BitSet(new long[]{0x0000000000008000L});
+ public static final BitSet FOLLOW_15_in_ruleSubSystemConfig475 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDynamicConfig_in_entryRuleDynamicConfig511 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDynamicConfig521 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_16_in_ruleDynamicConfig558 = new BitSet(new long[]{0x0000000000004000L});
+ public static final BitSet FOLLOW_14_in_ruleDynamicConfig570 = new BitSet(new long[]{0x0000000000160000L});
+ public static final BitSet FOLLOW_17_in_ruleDynamicConfig629 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_RULE_STRING_in_ruleDynamicConfig646 = new BitSet(new long[]{0x0000000000168000L});
+ public static final BitSet FOLLOW_18_in_ruleDynamicConfig672 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_RULE_STRING_in_ruleDynamicConfig689 = new BitSet(new long[]{0x0000000000080000L});
+ public static final BitSet FOLLOW_19_in_ruleDynamicConfig708 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_RULE_STRING_in_ruleDynamicConfig725 = new BitSet(new long[]{0x0000000000168000L});
+ public static final BitSet FOLLOW_20_in_ruleDynamicConfig800 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_RULE_INT_in_ruleDynamicConfig817 = new BitSet(new long[]{0x0000000000168000L});
+ public static final BitSet FOLLOW_15_in_ruleDynamicConfig881 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleActorClassConfig_in_entryRuleActorClassConfig917 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleActorClassConfig927 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_21_in_ruleActorClassConfig964 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_ruleFQN_in_ruleActorClassConfig987 = new BitSet(new long[]{0x0000000000004000L});
+ public static final BitSet FOLLOW_14_in_ruleActorClassConfig999 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_ruleAttrClassConfig_in_ruleActorClassConfig1020 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_15_in_ruleActorClassConfig1033 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleActorInstanceConfig_in_entryRuleActorInstanceConfig1069 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleActorInstanceConfig1079 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_22_in_ruleActorInstanceConfig1116 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_ruleFQN_in_ruleActorInstanceConfig1139 = new BitSet(new long[]{0x0000000000800000L});
+ public static final BitSet FOLLOW_23_in_ruleActorInstanceConfig1151 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_ruleRefPath_in_ruleActorInstanceConfig1172 = new BitSet(new long[]{0x0000000000004000L});
+ public static final BitSet FOLLOW_14_in_ruleActorInstanceConfig1184 = new BitSet(new long[]{0x0000000030008000L});
+ public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_ruleActorInstanceConfig1250 = new BitSet(new long[]{0x0000000030008000L});
+ public static final BitSet FOLLOW_rulePortInstanceConfig_in_ruleActorInstanceConfig1326 = new BitSet(new long[]{0x0000000030008000L});
+ public static final BitSet FOLLOW_15_in_ruleActorInstanceConfig1379 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleProtocolClassConfig_in_entryRuleProtocolClassConfig1415 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleProtocolClassConfig1425 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_24_in_ruleProtocolClassConfig1462 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_ruleFQN_in_ruleProtocolClassConfig1485 = new BitSet(new long[]{0x0000000000004000L});
+ public static final BitSet FOLLOW_14_in_ruleProtocolClassConfig1497 = new BitSet(new long[]{0x0000000006008000L});
+ public static final BitSet FOLLOW_25_in_ruleProtocolClassConfig1555 = new BitSet(new long[]{0x0000000008000000L});
+ public static final BitSet FOLLOW_rulePortClassConfig_in_ruleProtocolClassConfig1576 = new BitSet(new long[]{0x0000000006008000L});
+ public static final BitSet FOLLOW_26_in_ruleProtocolClassConfig1644 = new BitSet(new long[]{0x0000000008000000L});
+ public static final BitSet FOLLOW_rulePortClassConfig_in_ruleProtocolClassConfig1665 = new BitSet(new long[]{0x0000000006008000L});
+ public static final BitSet FOLLOW_15_in_ruleProtocolClassConfig1718 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rulePortClassConfig_in_entryRulePortClassConfig1754 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRulePortClassConfig1764 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_27_in_rulePortClassConfig1810 = new BitSet(new long[]{0x0000000000004000L});
+ public static final BitSet FOLLOW_14_in_rulePortClassConfig1822 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_ruleAttrClassConfig_in_rulePortClassConfig1843 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_15_in_rulePortClassConfig1856 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_rulePortInstanceConfig_in_entryRulePortInstanceConfig1892 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRulePortInstanceConfig1902 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_28_in_rulePortInstanceConfig1939 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_RULE_ID_in_rulePortInstanceConfig1959 = new BitSet(new long[]{0x0000000000004000L});
+ public static final BitSet FOLLOW_14_in_rulePortInstanceConfig1971 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_rulePortInstanceConfig1992 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_15_in_rulePortInstanceConfig2005 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrClassConfig_in_entryRuleAttrClassConfig2043 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAttrClassConfig2053 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_29_in_ruleAttrClassConfig2090 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleAttrClassConfig2110 = new BitSet(new long[]{0x0000000040004002L});
+ public static final BitSet FOLLOW_30_in_ruleAttrClassConfig2123 = new BitSet(new long[]{0x00001E80000000E0L});
+ public static final BitSet FOLLOW_ruleLiteralArray_in_ruleAttrClassConfig2144 = new BitSet(new long[]{0x0000000000004002L});
+ public static final BitSet FOLLOW_14_in_ruleAttrClassConfig2159 = new BitSet(new long[]{0x00000001A0008000L});
+ public static final BitSet FOLLOW_31_in_ruleAttrClassConfig2173 = new BitSet(new long[]{0x0000000040000000L});
+ public static final BitSet FOLLOW_30_in_ruleAttrClassConfig2185 = new BitSet(new long[]{0x00001880000000C0L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_ruleAttrClassConfig2206 = new BitSet(new long[]{0x0000000120008000L});
+ public static final BitSet FOLLOW_32_in_ruleAttrClassConfig2221 = new BitSet(new long[]{0x0000000040000000L});
+ public static final BitSet FOLLOW_30_in_ruleAttrClassConfig2233 = new BitSet(new long[]{0x00001880000000C0L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_ruleAttrClassConfig2254 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_ruleAttrClassConfig_in_ruleAttrClassConfig2277 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_15_in_ruleAttrClassConfig2291 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_entryRuleAttrInstanceConfig2329 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAttrInstanceConfig2339 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_29_in_ruleAttrInstanceConfig2376 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleAttrInstanceConfig2396 = new BitSet(new long[]{0x0000000040004002L});
+ public static final BitSet FOLLOW_30_in_ruleAttrInstanceConfig2409 = new BitSet(new long[]{0x00001E80000000E0L});
+ public static final BitSet FOLLOW_ruleLiteralArray_in_ruleAttrInstanceConfig2430 = new BitSet(new long[]{0x0000000000004002L});
+ public static final BitSet FOLLOW_14_in_ruleAttrInstanceConfig2445 = new BitSet(new long[]{0x0000000020018000L});
+ public static final BitSet FOLLOW_16_in_ruleAttrInstanceConfig2465 = new BitSet(new long[]{0x0000000600000000L});
+ public static final BitSet FOLLOW_33_in_ruleAttrInstanceConfig2497 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_34_in_ruleAttrInstanceConfig2528 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_ruleAttrInstanceConfig_in_ruleAttrInstanceConfig2552 = new BitSet(new long[]{0x0000000020008000L});
+ public static final BitSet FOLLOW_15_in_ruleAttrInstanceConfig2566 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRefPath_in_entryRuleRefPath2604 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleRefPath2614 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleRefPath2656 = new BitSet(new long[]{0x0000000000800002L});
+ public static final BitSet FOLLOW_23_in_ruleRefPath2674 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleRefPath2691 = new BitSet(new long[]{0x0000000000800002L});
+ public static final BitSet FOLLOW_ruleImport_in_entryRuleImport2734 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleImport2744 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_35_in_ruleImport2781 = new BitSet(new long[]{0x0000002000000010L});
+ public static final BitSet FOLLOW_ruleImportedFQN_in_ruleImport2804 = new BitSet(new long[]{0x0000001000000000L});
+ public static final BitSet FOLLOW_36_in_ruleImport2816 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_37_in_ruleImport2835 = new BitSet(new long[]{0x0000000000000020L});
+ public static final BitSet FOLLOW_RULE_STRING_in_ruleImport2853 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleImportedFQN_in_entryRuleImportedFQN2895 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleImportedFQN2906 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleFQN_in_ruleImportedFQN2953 = new BitSet(new long[]{0x0000004000000002L});
+ public static final BitSet FOLLOW_38_in_ruleImportedFQN2972 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleFQN_in_entryRuleFQN3015 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleFQN3026 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleFQN3066 = new BitSet(new long[]{0x0000008000000002L});
+ public static final BitSet FOLLOW_39_in_ruleFQN3085 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleFQN3100 = new BitSet(new long[]{0x0000008000000002L});
+ public static final BitSet FOLLOW_ruleLiteralArray_in_entryRuleLiteralArray3147 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleLiteralArray3157 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleLiteral_in_ruleLiteralArray3203 = new BitSet(new long[]{0x0000010000000002L});
+ public static final BitSet FOLLOW_40_in_ruleLiteralArray3216 = new BitSet(new long[]{0x00001E80000000E0L});
+ public static final BitSet FOLLOW_ruleLiteral_in_ruleLiteralArray3237 = new BitSet(new long[]{0x0000010000000002L});
+ public static final BitSet FOLLOW_ruleLiteral_in_entryRuleLiteral3275 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleLiteral3285 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleBooleanLiteral_in_ruleLiteral3332 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_ruleLiteral3359 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleStringLiteral_in_ruleLiteral3386 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleBooleanLiteral_in_entryRuleBooleanLiteral3421 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleBooleanLiteral3431 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_41_in_ruleBooleanLiteral3478 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_42_in_ruleBooleanLiteral3502 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleNumberLiteral_in_entryRuleNumberLiteral3552 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleNumberLiteral3562 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleIntLiteral_in_ruleNumberLiteral3609 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRealLiteral_in_ruleNumberLiteral3636 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRealLiteral_in_entryRuleRealLiteral3671 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleRealLiteral3681 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleReal_in_ruleRealLiteral3736 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleIntLiteral_in_entryRuleIntLiteral3772 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleIntLiteral3782 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleInteger_in_ruleIntLiteral3837 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleStringLiteral_in_entryRuleStringLiteral3873 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleStringLiteral3883 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_ruleStringLiteral3934 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleInteger_in_entryRuleInteger3976 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleInteger3987 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSignedInteger_in_ruleInteger4034 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleHexadecimal_in_ruleInteger4067 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleSignedInteger_in_entryRuleSignedInteger4119 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleSignedInteger4130 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_43_in_ruleSignedInteger4173 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_44_in_ruleSignedInteger4192 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_RULE_INT_in_ruleSignedInteger4209 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleHexadecimal_in_entryRuleHexadecimal4265 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleHexadecimal4276 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_HEX_in_ruleHexadecimal4319 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleReal_in_entryRuleReal4368 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleReal4379 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimal_in_ruleReal4426 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDotDecimal_in_ruleReal4459 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalDot_in_ruleReal4492 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalExp_in_ruleReal4525 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimal_in_entryRuleDecimal4577 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDecimal4588 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_43_in_ruleDecimal4631 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_44_in_ruleDecimal4650 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_RULE_INT_in_ruleDecimal4667 = new BitSet(new long[]{0x0000008000000000L});
+ public static final BitSet FOLLOW_39_in_ruleDecimal4685 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_RULE_INT_in_ruleDecimal4700 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDotDecimal_in_entryRuleDotDecimal4756 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDotDecimal4767 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_43_in_ruleDotDecimal4810 = new BitSet(new long[]{0x0000008000000000L});
+ public static final BitSet FOLLOW_44_in_ruleDotDecimal4829 = new BitSet(new long[]{0x0000008000000000L});
+ public static final BitSet FOLLOW_39_in_ruleDotDecimal4844 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_RULE_INT_in_ruleDotDecimal4859 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalDot_in_entryRuleDecimalDot4915 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDecimalDot4926 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_43_in_ruleDecimalDot4969 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_44_in_ruleDecimalDot4988 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_RULE_INT_in_ruleDecimalDot5005 = new BitSet(new long[]{0x0000008000000000L});
+ public static final BitSet FOLLOW_39_in_ruleDecimalDot5023 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleDecimalExp_in_entryRuleDecimalExp5074 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleDecimalExp5085 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_43_in_ruleDecimalExp5128 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_44_in_ruleDecimalExp5147 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_RULE_INT_in_ruleDecimalExp5164 = new BitSet(new long[]{0x0000008000000000L});
+ public static final BitSet FOLLOW_39_in_ruleDecimalExp5182 = new BitSet(new long[]{0x0000000000000040L});
+ public static final BitSet FOLLOW_RULE_INT_in_ruleDecimalExp5197 = new BitSet(new long[]{0x0000000000000100L});
+ public static final BitSet FOLLOW_RULE_EXP_in_ruleDecimalExp5217 = new BitSet(new long[]{0x0000000000000002L});
}
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSemanticSequencer.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSemanticSequencer.java
index 7c6fe60ee..6810f3c7b 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSemanticSequencer.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSemanticSequencer.java
@@ -10,6 +10,7 @@ import org.eclipse.etrice.core.config.AttrInstanceConfig;
import org.eclipse.etrice.core.config.BooleanLiteral;
import org.eclipse.etrice.core.config.ConfigModel;
import org.eclipse.etrice.core.config.ConfigPackage;
+import org.eclipse.etrice.core.config.DynamicConfig;
import org.eclipse.etrice.core.config.Import;
import org.eclipse.etrice.core.config.IntLiteral;
import org.eclipse.etrice.core.config.LiteralArray;
@@ -19,6 +20,7 @@ import org.eclipse.etrice.core.config.ProtocolClassConfig;
import org.eclipse.etrice.core.config.RealLiteral;
import org.eclipse.etrice.core.config.RefPath;
import org.eclipse.etrice.core.config.StringLiteral;
+import org.eclipse.etrice.core.config.SubSystemConfig;
import org.eclipse.etrice.core.services.ConfigGrammarAccess;
import org.eclipse.xtext.serializer.acceptor.ISemanticSequenceAcceptor;
import org.eclipse.xtext.serializer.acceptor.SequenceFeeder;
@@ -80,6 +82,12 @@ public class ConfigSemanticSequencer extends AbstractDelegatingSemanticSequencer
return;
}
else break;
+ case ConfigPackage.DYNAMIC_CONFIG:
+ if(context == grammarAccess.getDynamicConfigRule()) {
+ sequence_DynamicConfig(context, (DynamicConfig) semanticObject);
+ return;
+ }
+ else break;
case ConfigPackage.IMPORT:
if(context == grammarAccess.getImportRule()) {
sequence_Import(context, (Import) semanticObject);
@@ -140,6 +148,13 @@ public class ConfigSemanticSequencer extends AbstractDelegatingSemanticSequencer
return;
}
else break;
+ case ConfigPackage.SUB_SYSTEM_CONFIG:
+ if(context == grammarAccess.getConfigElementRule() ||
+ context == grammarAccess.getSubSystemConfigRule()) {
+ sequence_SubSystemConfig(context, (SubSystemConfig) semanticObject);
+ return;
+ }
+ else break;
}
if (errorAcceptor != null) errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
}
@@ -164,7 +179,7 @@ public class ConfigSemanticSequencer extends AbstractDelegatingSemanticSequencer
/**
* Constraint:
- * (attribute=[Attribute|ID] value=LiteralArray? (min=NumberLiteral? max=NumberLiteral?)?)
+ * (attribute=[Attribute|ID] value=LiteralArray? (min=NumberLiteral? max=NumberLiteral? attributes+=AttrClassConfig*)?)
*/
protected void sequence_AttrClassConfig(EObject context, AttrClassConfig semanticObject) {
genericSequencer.createSequence(context, semanticObject);
@@ -173,7 +188,7 @@ public class ConfigSemanticSequencer extends AbstractDelegatingSemanticSequencer
/**
* Constraint:
- * (attribute=[Attribute|ID] value=LiteralArray?)
+ * (attribute=[Attribute|ID] value=LiteralArray? ((dynConfig?='dynamic configuration' readOnly?='read'?)? attributes+=AttrInstanceConfig*)?)
*/
protected void sequence_AttrInstanceConfig(EObject context, AttrInstanceConfig semanticObject) {
genericSequencer.createSequence(context, semanticObject);
@@ -200,6 +215,15 @@ public class ConfigSemanticSequencer extends AbstractDelegatingSemanticSequencer
/**
* Constraint:
+ * ((filePath=STRING | (userCode1=STRING userCode2=STRING)) polling=INT?)
+ */
+ protected void sequence_DynamicConfig(EObject context, DynamicConfig semanticObject) {
+ genericSequencer.createSequence(context, semanticObject);
+ }
+
+
+ /**
+ * Constraint:
* (importedNamespace=ImportedFQN? importURI=STRING)
*/
protected void sequence_Import(EObject context, Import semanticObject) {
@@ -298,4 +322,23 @@ public class ConfigSemanticSequencer extends AbstractDelegatingSemanticSequencer
feeder.accept(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_1_0(), semanticObject.getValue());
feeder.finish();
}
+
+
+ /**
+ * Constraint:
+ * (subSystem=[SubSystemClass|ID] dynConfig=DynamicConfig)
+ */
+ protected void sequence_SubSystemConfig(EObject context, SubSystemConfig semanticObject) {
+ if(errorAcceptor != null) {
+ if(transientValues.isValueTransient(semanticObject, ConfigPackage.Literals.SUB_SYSTEM_CONFIG__SUB_SYSTEM) == ValueTransient.YES)
+ errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ConfigPackage.Literals.SUB_SYSTEM_CONFIG__SUB_SYSTEM));
+ if(transientValues.isValueTransient(semanticObject, ConfigPackage.Literals.SUB_SYSTEM_CONFIG__DYN_CONFIG) == ValueTransient.YES)
+ errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ConfigPackage.Literals.SUB_SYSTEM_CONFIG__DYN_CONFIG));
+ }
+ INodesForEObjectProvider nodes = createNodeProvider(semanticObject);
+ SequenceFeeder feeder = createSequencerFeeder(semanticObject, nodes);
+ feeder.accept(grammarAccess.getSubSystemConfigAccess().getSubSystemSubSystemClassIDTerminalRuleCall_1_0_1(), semanticObject.getSubSystem());
+ feeder.accept(grammarAccess.getSubSystemConfigAccess().getDynConfigDynamicConfigParserRuleCall_3_0(), semanticObject.getDynConfig());
+ feeder.finish();
+ }
}
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSyntacticSequencer.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSyntacticSequencer.java
index 15a0879a3..760fda4f3 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSyntacticSequencer.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/serializer/ConfigSyntacticSequencer.java
@@ -19,11 +19,13 @@ public class ConfigSyntacticSequencer extends AbstractSyntacticSequencer {
protected ConfigGrammarAccess grammarAccess;
protected AbstractElementAlias match_AttrClassConfig___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q;
+ protected AbstractElementAlias match_AttrInstanceConfig___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q;
@Inject
protected void init(IGrammarAccess access) {
grammarAccess = (ConfigGrammarAccess) access;
match_AttrClassConfig___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q = new GroupAlias(false, true, new TokenAlias(false, false, grammarAccess.getAttrClassConfigAccess().getLeftCurlyBracketKeyword_3_0()), new TokenAlias(false, false, grammarAccess.getAttrClassConfigAccess().getRightCurlyBracketKeyword_3_2()));
+ match_AttrInstanceConfig___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q = new GroupAlias(false, true, new TokenAlias(false, false, grammarAccess.getAttrInstanceConfigAccess().getLeftCurlyBracketKeyword_3_0()), new TokenAlias(false, false, grammarAccess.getAttrInstanceConfigAccess().getRightCurlyBracketKeyword_3_2()));
}
@Override
@@ -40,6 +42,8 @@ public class ConfigSyntacticSequencer extends AbstractSyntacticSequencer {
List<INode> syntaxNodes = getNodesFor(transitionNodes, syntax);
if(match_AttrClassConfig___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q.equals(syntax))
emit_AttrClassConfig___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q(semanticObject, getLastNavigableState(), syntaxNodes);
+ else if(match_AttrInstanceConfig___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q.equals(syntax))
+ emit_AttrInstanceConfig___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q(semanticObject, getLastNavigableState(), syntaxNodes);
else acceptNodes(getLastNavigableState(), syntaxNodes);
}
}
@@ -52,4 +56,12 @@ public class ConfigSyntacticSequencer extends AbstractSyntacticSequencer {
acceptNodes(transition, nodes);
}
+ /**
+ * Syntax:
+ * ('{' '}')?
+ */
+ protected void emit_AttrInstanceConfig___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
+ acceptNodes(transition, nodes);
+ }
+
}
diff --git a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/services/ConfigGrammarAccess.java b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/services/ConfigGrammarAccess.java
index e9fb70202..aba2d4c3e 100644
--- a/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/services/ConfigGrammarAccess.java
+++ b/plugins/org.eclipse.etrice.core.config/src-gen/org/eclipse/etrice/core/services/ConfigGrammarAccess.java
@@ -1,1661 +1,1897 @@
-/*
-* generated by Xtext
-*/
-
-package org.eclipse.etrice.core.services;
-
-import com.google.inject.Singleton;
-import com.google.inject.Inject;
-
-import java.util.List;
-
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.service.GrammarProvider;
-import org.eclipse.xtext.service.AbstractElementFinder.*;
-
-import org.eclipse.xtext.common.services.TerminalsGrammarAccess;
-
-@Singleton
-public class ConfigGrammarAccess extends AbstractGrammarElementFinder {
-
-
- public class ConfigModelElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ConfigModel");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cImportsAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final RuleCall cImportsImportParserRuleCall_0_0 = (RuleCall)cImportsAssignment_0.eContents().get(0);
- private final Assignment cConfigElementsAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cConfigElementsConfigElementParserRuleCall_1_0 = (RuleCall)cConfigElementsAssignment_1.eContents().get(0);
-
- /// *
- // * Postprocessor:
- // * getActor(Class|Instance)Config()
- // * / ConfigModel:
- //
- // imports+=Import* configElements+=ConfigElement*;
- public ParserRule getRule() { return rule; }
-
- //imports+=Import* configElements+=ConfigElement*
- public Group getGroup() { return cGroup; }
-
- //imports+=Import*
- public Assignment getImportsAssignment_0() { return cImportsAssignment_0; }
-
- //Import
- public RuleCall getImportsImportParserRuleCall_0_0() { return cImportsImportParserRuleCall_0_0; }
-
- //configElements+=ConfigElement*
- public Assignment getConfigElementsAssignment_1() { return cConfigElementsAssignment_1; }
-
- //ConfigElement
- public RuleCall getConfigElementsConfigElementParserRuleCall_1_0() { return cConfigElementsConfigElementParserRuleCall_1_0; }
- }
-
- public class ConfigElementElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ConfigElement");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cActorClassConfigParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cActorInstanceConfigParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
- private final RuleCall cProtocolClassConfigParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-
- //ConfigElement:
- //
- // ActorClassConfig | ActorInstanceConfig | ProtocolClassConfig;
- public ParserRule getRule() { return rule; }
-
- //ActorClassConfig | ActorInstanceConfig | ProtocolClassConfig
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //ActorClassConfig
- public RuleCall getActorClassConfigParserRuleCall_0() { return cActorClassConfigParserRuleCall_0; }
-
- //ActorInstanceConfig
- public RuleCall getActorInstanceConfigParserRuleCall_1() { return cActorInstanceConfigParserRuleCall_1; }
-
- //ProtocolClassConfig
- public RuleCall getProtocolClassConfigParserRuleCall_2() { return cProtocolClassConfigParserRuleCall_2; }
- }
-
- public class ActorClassConfigElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorClassConfig");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cActorClassConfigKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cActorAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cActorActorClassCrossReference_1_0 = (CrossReference)cActorAssignment_1.eContents().get(0);
- private final RuleCall cActorActorClassFQNParserRuleCall_1_0_1 = (RuleCall)cActorActorClassCrossReference_1_0.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cAttributesAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cAttributesAttrClassConfigParserRuleCall_3_0 = (RuleCall)cAttributesAssignment_3.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-
- /// *
- // * Validation:
- // * duplicates config, attributes
- // * / ActorClassConfig:
- //
- // "ActorClassConfig" actor=[room::ActorClass|FQN] "{" attributes+=AttrClassConfig* "}";
- public ParserRule getRule() { return rule; }
-
- //"ActorClassConfig" actor=[room::ActorClass|FQN] "{" attributes+=AttrClassConfig* "}"
- public Group getGroup() { return cGroup; }
-
- //"ActorClassConfig"
- public Keyword getActorClassConfigKeyword_0() { return cActorClassConfigKeyword_0; }
-
- //actor=[room::ActorClass|FQN]
- public Assignment getActorAssignment_1() { return cActorAssignment_1; }
-
- //[room::ActorClass|FQN]
- public CrossReference getActorActorClassCrossReference_1_0() { return cActorActorClassCrossReference_1_0; }
-
- //FQN
- public RuleCall getActorActorClassFQNParserRuleCall_1_0_1() { return cActorActorClassFQNParserRuleCall_1_0_1; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //attributes+=AttrClassConfig*
- public Assignment getAttributesAssignment_3() { return cAttributesAssignment_3; }
-
- //AttrClassConfig
- public RuleCall getAttributesAttrClassConfigParserRuleCall_3_0() { return cAttributesAttrClassConfigParserRuleCall_3_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
- }
-
- public class ActorInstanceConfigElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorInstanceConfig");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cActorInstanceConfigKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cRootAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cRootSubSystemClassCrossReference_1_0 = (CrossReference)cRootAssignment_1.eContents().get(0);
- private final RuleCall cRootSubSystemClassFQNParserRuleCall_1_0_1 = (RuleCall)cRootSubSystemClassCrossReference_1_0.eContents().get(1);
- private final Keyword cSolidusKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cPathAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cPathRefPathParserRuleCall_3_0 = (RuleCall)cPathAssignment_3.eContents().get(0);
- private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
- private final Assignment cAttributesAssignment_5 = (Assignment)cGroup.eContents().get(5);
- private final RuleCall cAttributesAttrInstanceConfigParserRuleCall_5_0 = (RuleCall)cAttributesAssignment_5.eContents().get(0);
- private final Assignment cPortsAssignment_6 = (Assignment)cGroup.eContents().get(6);
- private final RuleCall cPortsPortInstanceConfigParserRuleCall_6_0 = (RuleCall)cPortsAssignment_6.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
-
- /// *
- // * Validation:
- // * duplicates config, attributes
- // * valid instance reference
- // * Proposal:
- // * attributes
- // * /
- //
- //ActorInstanceConfig:
- //
- // "ActorInstanceConfig" root=[room::SubSystemClass|FQN] "/" path=RefPath "{" attributes+=AttrInstanceConfig*
- //
- // ports+=PortInstanceConfig* "}";
- public ParserRule getRule() { return rule; }
-
- //"ActorInstanceConfig" root=[room::SubSystemClass|FQN] "/" path=RefPath "{" attributes+=AttrInstanceConfig*
- //
- //ports+=PortInstanceConfig* "}"
- public Group getGroup() { return cGroup; }
-
- //"ActorInstanceConfig"
- public Keyword getActorInstanceConfigKeyword_0() { return cActorInstanceConfigKeyword_0; }
-
- //root=[room::SubSystemClass|FQN]
- public Assignment getRootAssignment_1() { return cRootAssignment_1; }
-
- //[room::SubSystemClass|FQN]
- public CrossReference getRootSubSystemClassCrossReference_1_0() { return cRootSubSystemClassCrossReference_1_0; }
-
- //FQN
- public RuleCall getRootSubSystemClassFQNParserRuleCall_1_0_1() { return cRootSubSystemClassFQNParserRuleCall_1_0_1; }
-
- //"/"
- public Keyword getSolidusKeyword_2() { return cSolidusKeyword_2; }
-
- //path=RefPath
- public Assignment getPathAssignment_3() { return cPathAssignment_3; }
-
- //RefPath
- public RuleCall getPathRefPathParserRuleCall_3_0() { return cPathRefPathParserRuleCall_3_0; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; }
-
- //attributes+=AttrInstanceConfig*
- public Assignment getAttributesAssignment_5() { return cAttributesAssignment_5; }
-
- //AttrInstanceConfig
- public RuleCall getAttributesAttrInstanceConfigParserRuleCall_5_0() { return cAttributesAttrInstanceConfigParserRuleCall_5_0; }
-
- //ports+=PortInstanceConfig*
- public Assignment getPortsAssignment_6() { return cPortsAssignment_6; }
-
- //PortInstanceConfig
- public RuleCall getPortsPortInstanceConfigParserRuleCall_6_0() { return cPortsPortInstanceConfigParserRuleCall_6_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_7() { return cRightCurlyBracketKeyword_7; }
- }
-
- public class ProtocolClassConfigElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ProtocolClassConfig");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cProtocolClassConfigKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cProtocolAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cProtocolProtocolClassCrossReference_1_0 = (CrossReference)cProtocolAssignment_1.eContents().get(0);
- private final RuleCall cProtocolProtocolClassFQNParserRuleCall_1_0_1 = (RuleCall)cProtocolProtocolClassCrossReference_1_0.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final UnorderedGroup cUnorderedGroup_3 = (UnorderedGroup)cGroup.eContents().get(3);
- private final Group cGroup_3_0 = (Group)cUnorderedGroup_3.eContents().get(0);
- private final Keyword cRegularKeyword_3_0_0 = (Keyword)cGroup_3_0.eContents().get(0);
- private final Assignment cRegularAssignment_3_0_1 = (Assignment)cGroup_3_0.eContents().get(1);
- private final RuleCall cRegularPortClassConfigParserRuleCall_3_0_1_0 = (RuleCall)cRegularAssignment_3_0_1.eContents().get(0);
- private final Group cGroup_3_1 = (Group)cUnorderedGroup_3.eContents().get(1);
- private final Keyword cConjugateKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
- private final Assignment cConjugatedAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
- private final RuleCall cConjugatedPortClassConfigParserRuleCall_3_1_1_0 = (RuleCall)cConjugatedAssignment_3_1_1.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-
- //ProtocolClassConfig:
- //
- // "ProtocolClassConfig" protocol=[room::ProtocolClass|FQN] "{" (("regular" regular=PortClassConfig)? & ("conjugate"
- //
- // conjugated=PortClassConfig)?) "}";
- public ParserRule getRule() { return rule; }
-
- //"ProtocolClassConfig" protocol=[room::ProtocolClass|FQN] "{" (("regular" regular=PortClassConfig)? & ("conjugate"
- //
- //conjugated=PortClassConfig)?) "}"
- public Group getGroup() { return cGroup; }
-
- //"ProtocolClassConfig"
- public Keyword getProtocolClassConfigKeyword_0() { return cProtocolClassConfigKeyword_0; }
-
- //protocol=[room::ProtocolClass|FQN]
- public Assignment getProtocolAssignment_1() { return cProtocolAssignment_1; }
-
- //[room::ProtocolClass|FQN]
- public CrossReference getProtocolProtocolClassCrossReference_1_0() { return cProtocolProtocolClassCrossReference_1_0; }
-
- //FQN
- public RuleCall getProtocolProtocolClassFQNParserRuleCall_1_0_1() { return cProtocolProtocolClassFQNParserRuleCall_1_0_1; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //("regular" regular=PortClassConfig)? & ("conjugate" conjugated=PortClassConfig)?
- public UnorderedGroup getUnorderedGroup_3() { return cUnorderedGroup_3; }
-
- //("regular" regular=PortClassConfig)?
- public Group getGroup_3_0() { return cGroup_3_0; }
-
- //"regular"
- public Keyword getRegularKeyword_3_0_0() { return cRegularKeyword_3_0_0; }
-
- //regular=PortClassConfig
- public Assignment getRegularAssignment_3_0_1() { return cRegularAssignment_3_0_1; }
-
- //PortClassConfig
- public RuleCall getRegularPortClassConfigParserRuleCall_3_0_1_0() { return cRegularPortClassConfigParserRuleCall_3_0_1_0; }
-
- //("conjugate" conjugated=PortClassConfig)?
- public Group getGroup_3_1() { return cGroup_3_1; }
-
- //"conjugate"
- public Keyword getConjugateKeyword_3_1_0() { return cConjugateKeyword_3_1_0; }
-
- //conjugated=PortClassConfig
- public Assignment getConjugatedAssignment_3_1_1() { return cConjugatedAssignment_3_1_1; }
-
- //PortClassConfig
- public RuleCall getConjugatedPortClassConfigParserRuleCall_3_1_1_0() { return cConjugatedPortClassConfigParserRuleCall_3_1_1_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
- }
-
- public class PortClassConfigElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "PortClassConfig");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Action cPortClassConfigAction_0 = (Action)cGroup.eContents().get(0);
- private final Keyword cPortKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cAttributesAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cAttributesAttrClassConfigParserRuleCall_3_0 = (RuleCall)cAttributesAssignment_3.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-
- //PortClassConfig:
- //
- // {PortClassConfig} "Port" "{" attributes+=AttrClassConfig* "}";
- public ParserRule getRule() { return rule; }
-
- //{PortClassConfig} "Port" "{" attributes+=AttrClassConfig* "}"
- public Group getGroup() { return cGroup; }
-
- //{PortClassConfig}
- public Action getPortClassConfigAction_0() { return cPortClassConfigAction_0; }
-
- //"Port"
- public Keyword getPortKeyword_1() { return cPortKeyword_1; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //attributes+=AttrClassConfig*
- public Assignment getAttributesAssignment_3() { return cAttributesAssignment_3; }
-
- //AttrClassConfig
- public RuleCall getAttributesAttrClassConfigParserRuleCall_3_0() { return cAttributesAttrClassConfigParserRuleCall_3_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
- }
-
- public class PortInstanceConfigElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "PortInstanceConfig");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cInterfaceItemKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cItemAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cItemInterfaceItemCrossReference_1_0 = (CrossReference)cItemAssignment_1.eContents().get(0);
- private final RuleCall cItemInterfaceItemIDTerminalRuleCall_1_0_1 = (RuleCall)cItemInterfaceItemCrossReference_1_0.eContents().get(1);
- private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final Assignment cAttributesAssignment_3 = (Assignment)cGroup.eContents().get(3);
- private final RuleCall cAttributesAttrInstanceConfigParserRuleCall_3_0 = (RuleCall)cAttributesAssignment_3.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-
- //PortInstanceConfig:
- //
- // "InterfaceItem" item=[room::InterfaceItem] "{" attributes+=AttrInstanceConfig* "}";
- public ParserRule getRule() { return rule; }
-
- //"InterfaceItem" item=[room::InterfaceItem] "{" attributes+=AttrInstanceConfig* "}"
- public Group getGroup() { return cGroup; }
-
- //"InterfaceItem"
- public Keyword getInterfaceItemKeyword_0() { return cInterfaceItemKeyword_0; }
-
- //item=[room::InterfaceItem]
- public Assignment getItemAssignment_1() { return cItemAssignment_1; }
-
- //[room::InterfaceItem]
- public CrossReference getItemInterfaceItemCrossReference_1_0() { return cItemInterfaceItemCrossReference_1_0; }
-
- //ID
- public RuleCall getItemInterfaceItemIDTerminalRuleCall_1_0_1() { return cItemInterfaceItemIDTerminalRuleCall_1_0_1; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
- //attributes+=AttrInstanceConfig*
- public Assignment getAttributesAssignment_3() { return cAttributesAssignment_3; }
-
- //AttrInstanceConfig
- public RuleCall getAttributesAttrInstanceConfigParserRuleCall_3_0() { return cAttributesAttrInstanceConfigParserRuleCall_3_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
- }
-
- public class AttrConfigElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "AttrConfig");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cAttrClassConfigParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cAttrInstanceConfigParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- /// *
- // * Validation:
- // * correct value type
- // * Proposal:
- // * correct Literal
- // * / AttrConfig:
- //
- // AttrClassConfig | AttrInstanceConfig;
- public ParserRule getRule() { return rule; }
-
- //AttrClassConfig | AttrInstanceConfig
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //AttrClassConfig
- public RuleCall getAttrClassConfigParserRuleCall_0() { return cAttrClassConfigParserRuleCall_0; }
-
- //AttrInstanceConfig
- public RuleCall getAttrInstanceConfigParserRuleCall_1() { return cAttrInstanceConfigParserRuleCall_1; }
- }
-
- public class AttrClassConfigElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "AttrClassConfig");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cAttrKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cAttributeAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cAttributeAttributeCrossReference_1_0 = (CrossReference)cAttributeAssignment_1.eContents().get(0);
- private final RuleCall cAttributeAttributeIDTerminalRuleCall_1_0_1 = (RuleCall)cAttributeAttributeCrossReference_1_0.eContents().get(1);
- private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
- private final Keyword cEqualsSignKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
- private final Assignment cValueAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
- private final RuleCall cValueLiteralArrayParserRuleCall_2_1_0 = (RuleCall)cValueAssignment_2_1.eContents().get(0);
- private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
- private final Keyword cLeftCurlyBracketKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
- private final UnorderedGroup cUnorderedGroup_3_1 = (UnorderedGroup)cGroup_3.eContents().get(1);
- private final Group cGroup_3_1_0 = (Group)cUnorderedGroup_3_1.eContents().get(0);
- private final Keyword cMinKeyword_3_1_0_0 = (Keyword)cGroup_3_1_0.eContents().get(0);
- private final Keyword cEqualsSignKeyword_3_1_0_1 = (Keyword)cGroup_3_1_0.eContents().get(1);
- private final Assignment cMinAssignment_3_1_0_2 = (Assignment)cGroup_3_1_0.eContents().get(2);
- private final RuleCall cMinNumberLiteralParserRuleCall_3_1_0_2_0 = (RuleCall)cMinAssignment_3_1_0_2.eContents().get(0);
- private final Group cGroup_3_1_1 = (Group)cUnorderedGroup_3_1.eContents().get(1);
- private final Keyword cMaxKeyword_3_1_1_0 = (Keyword)cGroup_3_1_1.eContents().get(0);
- private final Keyword cEqualsSignKeyword_3_1_1_1 = (Keyword)cGroup_3_1_1.eContents().get(1);
- private final Assignment cMaxAssignment_3_1_1_2 = (Assignment)cGroup_3_1_1.eContents().get(2);
- private final RuleCall cMaxNumberLiteralParserRuleCall_3_1_1_2_0 = (RuleCall)cMaxAssignment_3_1_1_2.eContents().get(0);
- private final Keyword cRightCurlyBracketKeyword_3_2 = (Keyword)cGroup_3.eContents().get(2);
-
- /// *
- // * Validation:
- // * correct min, max type + available
- // * min <= value <= max
- // * if !value -> min <= attribute.defaultValue <= max
- // * character length
- // *
- // * /
- //
- //AttrClassConfig:
- //
- // "Attr" attribute=[room::Attribute] ("=" value=LiteralArray)? ("{" (("min" "=" min=NumberLiteral)? & ("max" "="
- //
- // max=NumberLiteral)?) "}")?;
- public ParserRule getRule() { return rule; }
-
- //"Attr" attribute=[room::Attribute] ("=" value=LiteralArray)? ("{" (("min" "=" min=NumberLiteral)? & ("max" "="
- //
- //max=NumberLiteral)?) "}")?
- public Group getGroup() { return cGroup; }
-
- //"Attr"
- public Keyword getAttrKeyword_0() { return cAttrKeyword_0; }
-
- //attribute=[room::Attribute]
- public Assignment getAttributeAssignment_1() { return cAttributeAssignment_1; }
-
- //[room::Attribute]
- public CrossReference getAttributeAttributeCrossReference_1_0() { return cAttributeAttributeCrossReference_1_0; }
-
- //ID
- public RuleCall getAttributeAttributeIDTerminalRuleCall_1_0_1() { return cAttributeAttributeIDTerminalRuleCall_1_0_1; }
-
- //("=" value=LiteralArray)?
- public Group getGroup_2() { return cGroup_2; }
-
- //"="
- public Keyword getEqualsSignKeyword_2_0() { return cEqualsSignKeyword_2_0; }
-
- //value=LiteralArray
- public Assignment getValueAssignment_2_1() { return cValueAssignment_2_1; }
-
- //LiteralArray
- public RuleCall getValueLiteralArrayParserRuleCall_2_1_0() { return cValueLiteralArrayParserRuleCall_2_1_0; }
-
- //("{" (("min" "=" min=NumberLiteral)? & ("max" "=" max=NumberLiteral)?) "}")?
- public Group getGroup_3() { return cGroup_3; }
-
- //"{"
- public Keyword getLeftCurlyBracketKeyword_3_0() { return cLeftCurlyBracketKeyword_3_0; }
-
- //("min" "=" min=NumberLiteral)? & ("max" "=" max=NumberLiteral)?
- public UnorderedGroup getUnorderedGroup_3_1() { return cUnorderedGroup_3_1; }
-
- //("min" "=" min=NumberLiteral)?
- public Group getGroup_3_1_0() { return cGroup_3_1_0; }
-
- //"min"
- public Keyword getMinKeyword_3_1_0_0() { return cMinKeyword_3_1_0_0; }
-
- //"="
- public Keyword getEqualsSignKeyword_3_1_0_1() { return cEqualsSignKeyword_3_1_0_1; }
-
- //min=NumberLiteral
- public Assignment getMinAssignment_3_1_0_2() { return cMinAssignment_3_1_0_2; }
-
- //NumberLiteral
- public RuleCall getMinNumberLiteralParserRuleCall_3_1_0_2_0() { return cMinNumberLiteralParserRuleCall_3_1_0_2_0; }
-
- //("max" "=" max=NumberLiteral)?
- public Group getGroup_3_1_1() { return cGroup_3_1_1; }
-
- //"max"
- public Keyword getMaxKeyword_3_1_1_0() { return cMaxKeyword_3_1_1_0; }
-
- //"="
- public Keyword getEqualsSignKeyword_3_1_1_1() { return cEqualsSignKeyword_3_1_1_1; }
-
- //max=NumberLiteral
- public Assignment getMaxAssignment_3_1_1_2() { return cMaxAssignment_3_1_1_2; }
-
- //NumberLiteral
- public RuleCall getMaxNumberLiteralParserRuleCall_3_1_1_2_0() { return cMaxNumberLiteralParserRuleCall_3_1_1_2_0; }
-
- //"}"
- public Keyword getRightCurlyBracketKeyword_3_2() { return cRightCurlyBracketKeyword_3_2; }
- }
-
- public class AttrInstanceConfigElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "AttrInstanceConfig");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cAttrKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Assignment cAttributeAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final CrossReference cAttributeAttributeCrossReference_1_0 = (CrossReference)cAttributeAssignment_1.eContents().get(0);
- private final RuleCall cAttributeAttributeIDTerminalRuleCall_1_0_1 = (RuleCall)cAttributeAttributeCrossReference_1_0.eContents().get(1);
- private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
- private final Keyword cEqualsSignKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
- private final Assignment cValueAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
- private final RuleCall cValueLiteralArrayParserRuleCall_2_1_0 = (RuleCall)cValueAssignment_2_1.eContents().get(0);
-
- //AttrInstanceConfig:
- //
- // "Attr" attribute=[room::Attribute] ("=" value=LiteralArray)?;
- public ParserRule getRule() { return rule; }
-
- //"Attr" attribute=[room::Attribute] ("=" value=LiteralArray)?
- public Group getGroup() { return cGroup; }
-
- //"Attr"
- public Keyword getAttrKeyword_0() { return cAttrKeyword_0; }
-
- //attribute=[room::Attribute]
- public Assignment getAttributeAssignment_1() { return cAttributeAssignment_1; }
-
- //[room::Attribute]
- public CrossReference getAttributeAttributeCrossReference_1_0() { return cAttributeAttributeCrossReference_1_0; }
-
- //ID
- public RuleCall getAttributeAttributeIDTerminalRuleCall_1_0_1() { return cAttributeAttributeIDTerminalRuleCall_1_0_1; }
-
- //("=" value=LiteralArray)?
- public Group getGroup_2() { return cGroup_2; }
-
- //"="
- public Keyword getEqualsSignKeyword_2_0() { return cEqualsSignKeyword_2_0; }
-
- //value=LiteralArray
- public Assignment getValueAssignment_2_1() { return cValueAssignment_2_1; }
-
- //LiteralArray
- public RuleCall getValueLiteralArrayParserRuleCall_2_1_0() { return cValueLiteralArrayParserRuleCall_2_1_0; }
- }
-
- public class RefPathElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RefPath");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cRefsAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final RuleCall cRefsIDTerminalRuleCall_0_0 = (RuleCall)cRefsAssignment_0.eContents().get(0);
- private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
- private final Keyword cSolidusKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
- private final Assignment cRefsAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
- private final RuleCall cRefsIDTerminalRuleCall_1_1_0 = (RuleCall)cRefsAssignment_1_1.eContents().get(0);
-
- /// *
- // * Proposal:
- // * for ActorInstanceConfig
- // * / RefPath:
- //
- // refs+=ID ("/" refs+=ID)*;
- public ParserRule getRule() { return rule; }
-
- //refs+=ID ("/" refs+=ID)*
- public Group getGroup() { return cGroup; }
-
- //refs+=ID
- public Assignment getRefsAssignment_0() { return cRefsAssignment_0; }
-
- //ID
- public RuleCall getRefsIDTerminalRuleCall_0_0() { return cRefsIDTerminalRuleCall_0_0; }
-
- //("/" refs+=ID)*
- public Group getGroup_1() { return cGroup_1; }
-
- //"/"
- public Keyword getSolidusKeyword_1_0() { return cSolidusKeyword_1_0; }
-
- //refs+=ID
- public Assignment getRefsAssignment_1_1() { return cRefsAssignment_1_1; }
-
- //ID
- public RuleCall getRefsIDTerminalRuleCall_1_1_0() { return cRefsIDTerminalRuleCall_1_1_0; }
- }
-
- public class ImportElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Import");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Keyword cImportKeyword_0 = (Keyword)cGroup.eContents().get(0);
- private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
- private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0);
- private final Assignment cImportedNamespaceAssignment_1_0_0 = (Assignment)cGroup_1_0.eContents().get(0);
- private final RuleCall cImportedNamespaceImportedFQNParserRuleCall_1_0_0_0 = (RuleCall)cImportedNamespaceAssignment_1_0_0.eContents().get(0);
- private final Keyword cFromKeyword_1_0_1 = (Keyword)cGroup_1_0.eContents().get(1);
- private final Keyword cModelKeyword_1_1 = (Keyword)cAlternatives_1.eContents().get(1);
- private final Assignment cImportURIAssignment_2 = (Assignment)cGroup.eContents().get(2);
- private final RuleCall cImportURISTRINGTerminalRuleCall_2_0 = (RuleCall)cImportURIAssignment_2.eContents().get(0);
-
- //// -------------------- from org.eclipse.etrice.core.Room.xtext ---------------
- // Import:
- //
- // "import" (importedNamespace=ImportedFQN "from" | "model") importURI=STRING;
- public ParserRule getRule() { return rule; }
-
- //"import" (importedNamespace=ImportedFQN "from" | "model") importURI=STRING
- public Group getGroup() { return cGroup; }
-
- //"import"
- public Keyword getImportKeyword_0() { return cImportKeyword_0; }
-
- //importedNamespace=ImportedFQN "from" | "model"
- public Alternatives getAlternatives_1() { return cAlternatives_1; }
-
- //importedNamespace=ImportedFQN "from"
- public Group getGroup_1_0() { return cGroup_1_0; }
-
- //importedNamespace=ImportedFQN
- public Assignment getImportedNamespaceAssignment_1_0_0() { return cImportedNamespaceAssignment_1_0_0; }
-
- //ImportedFQN
- public RuleCall getImportedNamespaceImportedFQNParserRuleCall_1_0_0_0() { return cImportedNamespaceImportedFQNParserRuleCall_1_0_0_0; }
-
- //"from"
- public Keyword getFromKeyword_1_0_1() { return cFromKeyword_1_0_1; }
-
- //"model"
- public Keyword getModelKeyword_1_1() { return cModelKeyword_1_1; }
-
- //importURI=STRING
- public Assignment getImportURIAssignment_2() { return cImportURIAssignment_2; }
-
- //STRING
- public RuleCall getImportURISTRINGTerminalRuleCall_2_0() { return cImportURISTRINGTerminalRuleCall_2_0; }
- }
-
- public class ImportedFQNElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ImportedFQN");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final RuleCall cFQNParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
- private final Keyword cFullStopAsteriskKeyword_1 = (Keyword)cGroup.eContents().get(1);
-
- //ImportedFQN:
- //
- // FQN ".*"?;
- public ParserRule getRule() { return rule; }
-
- //FQN ".*"?
- public Group getGroup() { return cGroup; }
-
- //FQN
- public RuleCall getFQNParserRuleCall_0() { return cFQNParserRuleCall_0; }
-
- //".*"?
- public Keyword getFullStopAsteriskKeyword_1() { return cFullStopAsteriskKeyword_1; }
- }
-
- public class FQNElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "FQN");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
- private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
- private final Keyword cFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
- private final RuleCall cIDTerminalRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1);
-
- //FQN:
- //
- // ID ("." ID)*;
- public ParserRule getRule() { return rule; }
-
- //ID ("." ID)*
- public Group getGroup() { return cGroup; }
-
- //ID
- public RuleCall getIDTerminalRuleCall_0() { return cIDTerminalRuleCall_0; }
-
- //("." ID)*
- public Group getGroup_1() { return cGroup_1; }
-
- //"."
- public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
-
- //ID
- public RuleCall getIDTerminalRuleCall_1_1() { return cIDTerminalRuleCall_1_1; }
- }
-
- public class LiteralArrayElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LiteralArray");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Assignment cLiteralsAssignment_0 = (Assignment)cGroup.eContents().get(0);
- private final RuleCall cLiteralsLiteralParserRuleCall_0_0 = (RuleCall)cLiteralsAssignment_0.eContents().get(0);
- private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
- private final Keyword cCommaKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
- private final Assignment cLiteralsAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
- private final RuleCall cLiteralsLiteralParserRuleCall_1_1_0 = (RuleCall)cLiteralsAssignment_1_1.eContents().get(0);
-
- //// -----------------------------------------------------------------------------
- // //enum Unit:
- // // N|
- // // W|
- //
- //
- //// S = 's'|
- // // KG = 'kg'|
- // // M = 'm'|
- // // C|
- // // NM|
- // // RPM|
- // // V|
- // // A|
- // // HZ = 'Hz'|
- // // KW
- // //;
- //
- //
- //// LiteralArray = BooleanLiteral+|NumberLiteral+
- // // LiteralArray = StringLiteral
- // LiteralArray:
- //
- // literals+=Literal ("," literals+=Literal)*;
- public ParserRule getRule() { return rule; }
-
- //literals+=Literal ("," literals+=Literal)*
- public Group getGroup() { return cGroup; }
-
- //literals+=Literal
- public Assignment getLiteralsAssignment_0() { return cLiteralsAssignment_0; }
-
- //Literal
- public RuleCall getLiteralsLiteralParserRuleCall_0_0() { return cLiteralsLiteralParserRuleCall_0_0; }
-
- //("," literals+=Literal)*
- public Group getGroup_1() { return cGroup_1; }
-
- //","
- public Keyword getCommaKeyword_1_0() { return cCommaKeyword_1_0; }
-
- //literals+=Literal
- public Assignment getLiteralsAssignment_1_1() { return cLiteralsAssignment_1_1; }
-
- //Literal
- public RuleCall getLiteralsLiteralParserRuleCall_1_1_0() { return cLiteralsLiteralParserRuleCall_1_1_0; }
- }
-
- public class LiteralElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Literal");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cBooleanLiteralParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cNumberLiteralParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
- private final RuleCall cStringLiteralParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-
- //// Value Types for Attributes
- // Literal:
- //
- // BooleanLiteral | NumberLiteral | StringLiteral;
- public ParserRule getRule() { return rule; }
-
- //BooleanLiteral | NumberLiteral | StringLiteral
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //BooleanLiteral
- public RuleCall getBooleanLiteralParserRuleCall_0() { return cBooleanLiteralParserRuleCall_0; }
-
- //NumberLiteral
- public RuleCall getNumberLiteralParserRuleCall_1() { return cNumberLiteralParserRuleCall_1; }
-
- //StringLiteral
- public RuleCall getStringLiteralParserRuleCall_2() { return cStringLiteralParserRuleCall_2; }
- }
-
- public class BooleanLiteralElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BooleanLiteral");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Action cBooleanLiteralAction_0 = (Action)cGroup.eContents().get(0);
- private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
- private final Keyword cFalseKeyword_1_0 = (Keyword)cAlternatives_1.eContents().get(0);
- private final Assignment cIsTrueAssignment_1_1 = (Assignment)cAlternatives_1.eContents().get(1);
- private final Keyword cIsTrueTrueKeyword_1_1_0 = (Keyword)cIsTrueAssignment_1_1.eContents().get(0);
-
- //BooleanLiteral:
- //
- // {BooleanLiteral} ("false" | isTrue?="true");
- public ParserRule getRule() { return rule; }
-
- //{BooleanLiteral} ("false" | isTrue?="true")
- public Group getGroup() { return cGroup; }
-
- //{BooleanLiteral}
- public Action getBooleanLiteralAction_0() { return cBooleanLiteralAction_0; }
-
- //"false" | isTrue?="true"
- public Alternatives getAlternatives_1() { return cAlternatives_1; }
-
- //"false"
- public Keyword getFalseKeyword_1_0() { return cFalseKeyword_1_0; }
-
- //isTrue?="true"
- public Assignment getIsTrueAssignment_1_1() { return cIsTrueAssignment_1_1; }
-
- //"true"
- public Keyword getIsTrueTrueKeyword_1_1_0() { return cIsTrueTrueKeyword_1_1_0; }
- }
-
- public class NumberLiteralElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "NumberLiteral");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cIntLiteralParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cRealLiteralParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //NumberLiteral:
- //
- // IntLiteral | RealLiteral;
- public ParserRule getRule() { return rule; }
-
- //IntLiteral | RealLiteral
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //IntLiteral
- public RuleCall getIntLiteralParserRuleCall_0() { return cIntLiteralParserRuleCall_0; }
-
- //RealLiteral
- public RuleCall getRealLiteralParserRuleCall_1() { return cRealLiteralParserRuleCall_1; }
- }
-
- public class RealLiteralElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RealLiteral");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Action cRealLiteralAction_0 = (Action)cGroup.eContents().get(0);
- private final Assignment cValueAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cValueRealParserRuleCall_1_0 = (RuleCall)cValueAssignment_1.eContents().get(0);
-
- //RealLiteral:
- //
- // {RealLiteral} value=Real;
- public ParserRule getRule() { return rule; }
-
- //{RealLiteral} value=Real
- public Group getGroup() { return cGroup; }
-
- //{RealLiteral}
- public Action getRealLiteralAction_0() { return cRealLiteralAction_0; }
-
- //value=Real
- public Assignment getValueAssignment_1() { return cValueAssignment_1; }
-
- //Real
- public RuleCall getValueRealParserRuleCall_1_0() { return cValueRealParserRuleCall_1_0; }
- }
-
- public class IntLiteralElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "IntLiteral");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Action cIntLiteralAction_0 = (Action)cGroup.eContents().get(0);
- private final Assignment cValueAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cValueIntegerParserRuleCall_1_0 = (RuleCall)cValueAssignment_1.eContents().get(0);
-
- //IntLiteral:
- //
- // {IntLiteral} value=Integer;
- public ParserRule getRule() { return rule; }
-
- //{IntLiteral} value=Integer
- public Group getGroup() { return cGroup; }
-
- //{IntLiteral}
- public Action getIntLiteralAction_0() { return cIntLiteralAction_0; }
-
- //value=Integer
- public Assignment getValueAssignment_1() { return cValueAssignment_1; }
-
- //Integer
- public RuleCall getValueIntegerParserRuleCall_1_0() { return cValueIntegerParserRuleCall_1_0; }
- }
-
- public class StringLiteralElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StringLiteral");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Action cStringLiteralAction_0 = (Action)cGroup.eContents().get(0);
- private final Assignment cValueAssignment_1 = (Assignment)cGroup.eContents().get(1);
- private final RuleCall cValueSTRINGTerminalRuleCall_1_0 = (RuleCall)cValueAssignment_1.eContents().get(0);
-
- //StringLiteral:
- //
- // {StringLiteral} value=STRING;
- public ParserRule getRule() { return rule; }
-
- //{StringLiteral} value=STRING
- public Group getGroup() { return cGroup; }
-
- //{StringLiteral}
- public Action getStringLiteralAction_0() { return cStringLiteralAction_0; }
-
- //value=STRING
- public Assignment getValueAssignment_1() { return cValueAssignment_1; }
-
- //STRING
- public RuleCall getValueSTRINGTerminalRuleCall_1_0() { return cValueSTRINGTerminalRuleCall_1_0; }
- }
-
- public class IntegerElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Integer");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cSignedIntegerParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cHexadecimalParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-
- //Integer returns ecore::EInt:
- //
- // SignedInteger | Hexadecimal;
- public ParserRule getRule() { return rule; }
-
- //SignedInteger | Hexadecimal
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //SignedInteger
- public RuleCall getSignedIntegerParserRuleCall_0() { return cSignedIntegerParserRuleCall_0; }
-
- //Hexadecimal
- public RuleCall getHexadecimalParserRuleCall_1() { return cHexadecimalParserRuleCall_1; }
- }
-
- public class SignedIntegerElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SignedInteger");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
- private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
- private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
- private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
-
- //SignedInteger hidden():
- //
- // ("+" | "-")? INT;
- public ParserRule getRule() { return rule; }
-
- //("+" | "-")? INT
- public Group getGroup() { return cGroup; }
-
- //("+" | "-")?
- public Alternatives getAlternatives_0() { return cAlternatives_0; }
-
- //"+"
- public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
-
- //"-"
- public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
-
- //INT
- public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
- }
-
- public class HexadecimalElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Hexadecimal");
- private final RuleCall cHEXTerminalRuleCall = (RuleCall)rule.eContents().get(1);
-
- //Hexadecimal hidden():
- //
- // HEX;
- public ParserRule getRule() { return rule; }
-
- //HEX
- public RuleCall getHEXTerminalRuleCall() { return cHEXTerminalRuleCall; }
- }
-
- public class RealElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Real");
- private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
- private final RuleCall cDecimalParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
- private final RuleCall cDotDecimalParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
- private final RuleCall cDecimalDotParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
- private final RuleCall cDecimalExpParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
-
- //Real returns ecore::EDouble:
- //
- // Decimal | DotDecimal | DecimalDot | DecimalExp;
- public ParserRule getRule() { return rule; }
-
- //Decimal | DotDecimal | DecimalDot | DecimalExp
- public Alternatives getAlternatives() { return cAlternatives; }
-
- //Decimal
- public RuleCall getDecimalParserRuleCall_0() { return cDecimalParserRuleCall_0; }
-
- //DotDecimal
- public RuleCall getDotDecimalParserRuleCall_1() { return cDotDecimalParserRuleCall_1; }
-
- //DecimalDot
- public RuleCall getDecimalDotParserRuleCall_2() { return cDecimalDotParserRuleCall_2; }
-
- //DecimalExp
- public RuleCall getDecimalExpParserRuleCall_3() { return cDecimalExpParserRuleCall_3; }
- }
-
- public class DecimalElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Decimal");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
- private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
- private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
- private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
- private final Keyword cFullStopKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final RuleCall cINTTerminalRuleCall_3 = (RuleCall)cGroup.eContents().get(3);
-
- //Decimal hidden():
- //
- // ("+" | "-")? INT "." INT;
- public ParserRule getRule() { return rule; }
-
- //("+" | "-")? INT "." INT
- public Group getGroup() { return cGroup; }
-
- //("+" | "-")?
- public Alternatives getAlternatives_0() { return cAlternatives_0; }
-
- //"+"
- public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
-
- //"-"
- public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
-
- //INT
- public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
-
- //"."
- public Keyword getFullStopKeyword_2() { return cFullStopKeyword_2; }
-
- //INT
- public RuleCall getINTTerminalRuleCall_3() { return cINTTerminalRuleCall_3; }
- }
-
- public class DotDecimalElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DotDecimal");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
- private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
- private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
- private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
- private final RuleCall cINTTerminalRuleCall_2 = (RuleCall)cGroup.eContents().get(2);
-
- //DotDecimal hidden():
- //
- // ("+" | "-")? "." INT;
- public ParserRule getRule() { return rule; }
-
- //("+" | "-")? "." INT
- public Group getGroup() { return cGroup; }
-
- //("+" | "-")?
- public Alternatives getAlternatives_0() { return cAlternatives_0; }
-
- //"+"
- public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
-
- //"-"
- public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
-
- //"."
- public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; }
-
- //INT
- public RuleCall getINTTerminalRuleCall_2() { return cINTTerminalRuleCall_2; }
- }
-
- public class DecimalDotElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DecimalDot");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
- private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
- private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
- private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
- private final Keyword cFullStopKeyword_2 = (Keyword)cGroup.eContents().get(2);
-
- //DecimalDot hidden():
- //
- // ("+" | "-")? INT ".";
- public ParserRule getRule() { return rule; }
-
- //("+" | "-")? INT "."
- public Group getGroup() { return cGroup; }
-
- //("+" | "-")?
- public Alternatives getAlternatives_0() { return cAlternatives_0; }
-
- //"+"
- public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
-
- //"-"
- public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
-
- //INT
- public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
-
- //"."
- public Keyword getFullStopKeyword_2() { return cFullStopKeyword_2; }
- }
-
- public class DecimalExpElements extends AbstractParserRuleElementFinder {
- private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DecimalExp");
- private final Group cGroup = (Group)rule.eContents().get(1);
- private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
- private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
- private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
- private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
- private final Keyword cFullStopKeyword_2 = (Keyword)cGroup.eContents().get(2);
- private final RuleCall cINTTerminalRuleCall_3 = (RuleCall)cGroup.eContents().get(3);
- private final RuleCall cIDTerminalRuleCall_4 = (RuleCall)cGroup.eContents().get(4);
- private final Alternatives cAlternatives_5 = (Alternatives)cGroup.eContents().get(5);
- private final Keyword cPlusSignKeyword_5_0 = (Keyword)cAlternatives_5.eContents().get(0);
- private final Keyword cHyphenMinusKeyword_5_1 = (Keyword)cAlternatives_5.eContents().get(1);
- private final RuleCall cINTTerminalRuleCall_6 = (RuleCall)cGroup.eContents().get(6);
-
- //DecimalExp hidden():
- //
- // ("+" | "-")? INT "." INT ID ("+" | "-")? INT;
- public ParserRule getRule() { return rule; }
-
- //("+" | "-")? INT "." INT ID ("+" | "-")? INT
- public Group getGroup() { return cGroup; }
-
- //("+" | "-")?
- public Alternatives getAlternatives_0() { return cAlternatives_0; }
-
- //"+"
- public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
-
- //"-"
- public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
-
- //INT
- public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
-
- //"."
- public Keyword getFullStopKeyword_2() { return cFullStopKeyword_2; }
-
- //INT
- public RuleCall getINTTerminalRuleCall_3() { return cINTTerminalRuleCall_3; }
-
- //ID
- public RuleCall getIDTerminalRuleCall_4() { return cIDTerminalRuleCall_4; }
-
- //("+" | "-")?
- public Alternatives getAlternatives_5() { return cAlternatives_5; }
-
- //"+"
- public Keyword getPlusSignKeyword_5_0() { return cPlusSignKeyword_5_0; }
-
- //"-"
- public Keyword getHyphenMinusKeyword_5_1() { return cHyphenMinusKeyword_5_1; }
-
- //INT
- public RuleCall getINTTerminalRuleCall_6() { return cINTTerminalRuleCall_6; }
- }
-
-
- private ConfigModelElements pConfigModel;
- private ConfigElementElements pConfigElement;
- private ActorClassConfigElements pActorClassConfig;
- private ActorInstanceConfigElements pActorInstanceConfig;
- private ProtocolClassConfigElements pProtocolClassConfig;
- private PortClassConfigElements pPortClassConfig;
- private PortInstanceConfigElements pPortInstanceConfig;
- private AttrConfigElements pAttrConfig;
- private AttrClassConfigElements pAttrClassConfig;
- private AttrInstanceConfigElements pAttrInstanceConfig;
- private RefPathElements pRefPath;
- private ImportElements pImport;
- private ImportedFQNElements pImportedFQN;
- private FQNElements pFQN;
- private LiteralArrayElements pLiteralArray;
- private LiteralElements pLiteral;
- private BooleanLiteralElements pBooleanLiteral;
- private NumberLiteralElements pNumberLiteral;
- private RealLiteralElements pRealLiteral;
- private IntLiteralElements pIntLiteral;
- private StringLiteralElements pStringLiteral;
- private IntegerElements pInteger;
- private SignedIntegerElements pSignedInteger;
- private HexadecimalElements pHexadecimal;
- private RealElements pReal;
- private DecimalElements pDecimal;
- private DotDecimalElements pDotDecimal;
- private DecimalDotElements pDecimalDot;
- private DecimalExpElements pDecimalExp;
- private TerminalRule tHEX;
-
- private final Grammar grammar;
-
- private TerminalsGrammarAccess gaTerminals;
-
- @Inject
- public ConfigGrammarAccess(GrammarProvider grammarProvider,
- TerminalsGrammarAccess gaTerminals) {
- this.grammar = internalFindGrammar(grammarProvider);
- this.gaTerminals = gaTerminals;
- }
-
- protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
- Grammar grammar = grammarProvider.getGrammar(this);
- while (grammar != null) {
- if ("org.eclipse.etrice.core.Config".equals(grammar.getName())) {
- return grammar;
- }
- List<Grammar> grammars = grammar.getUsedGrammars();
- if (!grammars.isEmpty()) {
- grammar = grammars.iterator().next();
- } else {
- return null;
- }
- }
- return grammar;
- }
-
-
- public Grammar getGrammar() {
- return grammar;
- }
-
-
- public TerminalsGrammarAccess getTerminalsGrammarAccess() {
- return gaTerminals;
- }
-
-
- /// *
- // * Postprocessor:
- // * getActor(Class|Instance)Config()
- // * / ConfigModel:
- //
- // imports+=Import* configElements+=ConfigElement*;
- public ConfigModelElements getConfigModelAccess() {
- return (pConfigModel != null) ? pConfigModel : (pConfigModel = new ConfigModelElements());
- }
-
- public ParserRule getConfigModelRule() {
- return getConfigModelAccess().getRule();
- }
-
- //ConfigElement:
- //
- // ActorClassConfig | ActorInstanceConfig | ProtocolClassConfig;
- public ConfigElementElements getConfigElementAccess() {
- return (pConfigElement != null) ? pConfigElement : (pConfigElement = new ConfigElementElements());
- }
-
- public ParserRule getConfigElementRule() {
- return getConfigElementAccess().getRule();
- }
-
- /// *
- // * Validation:
- // * duplicates config, attributes
- // * / ActorClassConfig:
- //
- // "ActorClassConfig" actor=[room::ActorClass|FQN] "{" attributes+=AttrClassConfig* "}";
- public ActorClassConfigElements getActorClassConfigAccess() {
- return (pActorClassConfig != null) ? pActorClassConfig : (pActorClassConfig = new ActorClassConfigElements());
- }
-
- public ParserRule getActorClassConfigRule() {
- return getActorClassConfigAccess().getRule();
- }
-
- /// *
- // * Validation:
- // * duplicates config, attributes
- // * valid instance reference
- // * Proposal:
- // * attributes
- // * /
- //
- //ActorInstanceConfig:
- //
- // "ActorInstanceConfig" root=[room::SubSystemClass|FQN] "/" path=RefPath "{" attributes+=AttrInstanceConfig*
- //
- // ports+=PortInstanceConfig* "}";
- public ActorInstanceConfigElements getActorInstanceConfigAccess() {
- return (pActorInstanceConfig != null) ? pActorInstanceConfig : (pActorInstanceConfig = new ActorInstanceConfigElements());
- }
-
- public ParserRule getActorInstanceConfigRule() {
- return getActorInstanceConfigAccess().getRule();
- }
-
- //ProtocolClassConfig:
- //
- // "ProtocolClassConfig" protocol=[room::ProtocolClass|FQN] "{" (("regular" regular=PortClassConfig)? & ("conjugate"
- //
- // conjugated=PortClassConfig)?) "}";
- public ProtocolClassConfigElements getProtocolClassConfigAccess() {
- return (pProtocolClassConfig != null) ? pProtocolClassConfig : (pProtocolClassConfig = new ProtocolClassConfigElements());
- }
-
- public ParserRule getProtocolClassConfigRule() {
- return getProtocolClassConfigAccess().getRule();
- }
-
- //PortClassConfig:
- //
- // {PortClassConfig} "Port" "{" attributes+=AttrClassConfig* "}";
- public PortClassConfigElements getPortClassConfigAccess() {
- return (pPortClassConfig != null) ? pPortClassConfig : (pPortClassConfig = new PortClassConfigElements());
- }
-
- public ParserRule getPortClassConfigRule() {
- return getPortClassConfigAccess().getRule();
- }
-
- //PortInstanceConfig:
- //
- // "InterfaceItem" item=[room::InterfaceItem] "{" attributes+=AttrInstanceConfig* "}";
- public PortInstanceConfigElements getPortInstanceConfigAccess() {
- return (pPortInstanceConfig != null) ? pPortInstanceConfig : (pPortInstanceConfig = new PortInstanceConfigElements());
- }
-
- public ParserRule getPortInstanceConfigRule() {
- return getPortInstanceConfigAccess().getRule();
- }
-
- /// *
- // * Validation:
- // * correct value type
- // * Proposal:
- // * correct Literal
- // * / AttrConfig:
- //
- // AttrClassConfig | AttrInstanceConfig;
- public AttrConfigElements getAttrConfigAccess() {
- return (pAttrConfig != null) ? pAttrConfig : (pAttrConfig = new AttrConfigElements());
- }
-
- public ParserRule getAttrConfigRule() {
- return getAttrConfigAccess().getRule();
- }
-
- /// *
- // * Validation:
- // * correct min, max type + available
- // * min <= value <= max
- // * if !value -> min <= attribute.defaultValue <= max
- // * character length
- // *
- // * /
- //
- //AttrClassConfig:
- //
- // "Attr" attribute=[room::Attribute] ("=" value=LiteralArray)? ("{" (("min" "=" min=NumberLiteral)? & ("max" "="
- //
- // max=NumberLiteral)?) "}")?;
- public AttrClassConfigElements getAttrClassConfigAccess() {
- return (pAttrClassConfig != null) ? pAttrClassConfig : (pAttrClassConfig = new AttrClassConfigElements());
- }
-
- public ParserRule getAttrClassConfigRule() {
- return getAttrClassConfigAccess().getRule();
- }
-
- //AttrInstanceConfig:
- //
- // "Attr" attribute=[room::Attribute] ("=" value=LiteralArray)?;
- public AttrInstanceConfigElements getAttrInstanceConfigAccess() {
- return (pAttrInstanceConfig != null) ? pAttrInstanceConfig : (pAttrInstanceConfig = new AttrInstanceConfigElements());
- }
-
- public ParserRule getAttrInstanceConfigRule() {
- return getAttrInstanceConfigAccess().getRule();
- }
-
- /// *
- // * Proposal:
- // * for ActorInstanceConfig
- // * / RefPath:
- //
- // refs+=ID ("/" refs+=ID)*;
- public RefPathElements getRefPathAccess() {
- return (pRefPath != null) ? pRefPath : (pRefPath = new RefPathElements());
- }
-
- public ParserRule getRefPathRule() {
- return getRefPathAccess().getRule();
- }
-
- //// -------------------- from org.eclipse.etrice.core.Room.xtext ---------------
- // Import:
- //
- // "import" (importedNamespace=ImportedFQN "from" | "model") importURI=STRING;
- public ImportElements getImportAccess() {
- return (pImport != null) ? pImport : (pImport = new ImportElements());
- }
-
- public ParserRule getImportRule() {
- return getImportAccess().getRule();
- }
-
- //ImportedFQN:
- //
- // FQN ".*"?;
- public ImportedFQNElements getImportedFQNAccess() {
- return (pImportedFQN != null) ? pImportedFQN : (pImportedFQN = new ImportedFQNElements());
- }
-
- public ParserRule getImportedFQNRule() {
- return getImportedFQNAccess().getRule();
- }
-
- //FQN:
- //
- // ID ("." ID)*;
- public FQNElements getFQNAccess() {
- return (pFQN != null) ? pFQN : (pFQN = new FQNElements());
- }
-
- public ParserRule getFQNRule() {
- return getFQNAccess().getRule();
- }
-
- //// -----------------------------------------------------------------------------
- // //enum Unit:
- // // N|
- // // W|
- //
- //
- //// S = 's'|
- // // KG = 'kg'|
- // // M = 'm'|
- // // C|
- // // NM|
- // // RPM|
- // // V|
- // // A|
- // // HZ = 'Hz'|
- // // KW
- // //;
- //
- //
- //// LiteralArray = BooleanLiteral+|NumberLiteral+
- // // LiteralArray = StringLiteral
- // LiteralArray:
- //
- // literals+=Literal ("," literals+=Literal)*;
- public LiteralArrayElements getLiteralArrayAccess() {
- return (pLiteralArray != null) ? pLiteralArray : (pLiteralArray = new LiteralArrayElements());
- }
-
- public ParserRule getLiteralArrayRule() {
- return getLiteralArrayAccess().getRule();
- }
-
- //// Value Types for Attributes
- // Literal:
- //
- // BooleanLiteral | NumberLiteral | StringLiteral;
- public LiteralElements getLiteralAccess() {
- return (pLiteral != null) ? pLiteral : (pLiteral = new LiteralElements());
- }
-
- public ParserRule getLiteralRule() {
- return getLiteralAccess().getRule();
- }
-
- //BooleanLiteral:
- //
- // {BooleanLiteral} ("false" | isTrue?="true");
- public BooleanLiteralElements getBooleanLiteralAccess() {
- return (pBooleanLiteral != null) ? pBooleanLiteral : (pBooleanLiteral = new BooleanLiteralElements());
- }
-
- public ParserRule getBooleanLiteralRule() {
- return getBooleanLiteralAccess().getRule();
- }
-
- //NumberLiteral:
- //
- // IntLiteral | RealLiteral;
- public NumberLiteralElements getNumberLiteralAccess() {
- return (pNumberLiteral != null) ? pNumberLiteral : (pNumberLiteral = new NumberLiteralElements());
- }
-
- public ParserRule getNumberLiteralRule() {
- return getNumberLiteralAccess().getRule();
- }
-
- //RealLiteral:
- //
- // {RealLiteral} value=Real;
- public RealLiteralElements getRealLiteralAccess() {
- return (pRealLiteral != null) ? pRealLiteral : (pRealLiteral = new RealLiteralElements());
- }
-
- public ParserRule getRealLiteralRule() {
- return getRealLiteralAccess().getRule();
- }
-
- //IntLiteral:
- //
- // {IntLiteral} value=Integer;
- public IntLiteralElements getIntLiteralAccess() {
- return (pIntLiteral != null) ? pIntLiteral : (pIntLiteral = new IntLiteralElements());
- }
-
- public ParserRule getIntLiteralRule() {
- return getIntLiteralAccess().getRule();
- }
-
- //StringLiteral:
- //
- // {StringLiteral} value=STRING;
- public StringLiteralElements getStringLiteralAccess() {
- return (pStringLiteral != null) ? pStringLiteral : (pStringLiteral = new StringLiteralElements());
- }
-
- public ParserRule getStringLiteralRule() {
- return getStringLiteralAccess().getRule();
- }
-
- //Integer returns ecore::EInt:
- //
- // SignedInteger | Hexadecimal;
- public IntegerElements getIntegerAccess() {
- return (pInteger != null) ? pInteger : (pInteger = new IntegerElements());
- }
-
- public ParserRule getIntegerRule() {
- return getIntegerAccess().getRule();
- }
-
- //SignedInteger hidden():
- //
- // ("+" | "-")? INT;
- public SignedIntegerElements getSignedIntegerAccess() {
- return (pSignedInteger != null) ? pSignedInteger : (pSignedInteger = new SignedIntegerElements());
- }
-
- public ParserRule getSignedIntegerRule() {
- return getSignedIntegerAccess().getRule();
- }
-
- //Hexadecimal hidden():
- //
- // HEX;
- public HexadecimalElements getHexadecimalAccess() {
- return (pHexadecimal != null) ? pHexadecimal : (pHexadecimal = new HexadecimalElements());
- }
-
- public ParserRule getHexadecimalRule() {
- return getHexadecimalAccess().getRule();
- }
-
- //Real returns ecore::EDouble:
- //
- // Decimal | DotDecimal | DecimalDot | DecimalExp;
- public RealElements getRealAccess() {
- return (pReal != null) ? pReal : (pReal = new RealElements());
- }
-
- public ParserRule getRealRule() {
- return getRealAccess().getRule();
- }
-
- //Decimal hidden():
- //
- // ("+" | "-")? INT "." INT;
- public DecimalElements getDecimalAccess() {
- return (pDecimal != null) ? pDecimal : (pDecimal = new DecimalElements());
- }
-
- public ParserRule getDecimalRule() {
- return getDecimalAccess().getRule();
- }
-
- //DotDecimal hidden():
- //
- // ("+" | "-")? "." INT;
- public DotDecimalElements getDotDecimalAccess() {
- return (pDotDecimal != null) ? pDotDecimal : (pDotDecimal = new DotDecimalElements());
- }
-
- public ParserRule getDotDecimalRule() {
- return getDotDecimalAccess().getRule();
- }
-
- //DecimalDot hidden():
- //
- // ("+" | "-")? INT ".";
- public DecimalDotElements getDecimalDotAccess() {
- return (pDecimalDot != null) ? pDecimalDot : (pDecimalDot = new DecimalDotElements());
- }
-
- public ParserRule getDecimalDotRule() {
- return getDecimalDotAccess().getRule();
- }
-
- //DecimalExp hidden():
- //
- // ("+" | "-")? INT "." INT ID ("+" | "-")? INT;
- public DecimalExpElements getDecimalExpAccess() {
- return (pDecimalExp != null) ? pDecimalExp : (pDecimalExp = new DecimalExpElements());
- }
-
- public ParserRule getDecimalExpRule() {
- return getDecimalExpAccess().getRule();
- }
-
- ////DecimalPosExp hidden():
- // // ('+' | '-')? INT '.' INT ID;
- // terminal HEX:
- //
- // ("0x" | "0X") ("0".."9" | "a".."f" | "A".."F")+;
- public TerminalRule getHEXRule() {
- return (tHEX != null) ? tHEX : (tHEX = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "HEX"));
- }
-
- //terminal ID:
- //
- // "^"? ("a".."z" | "A".."Z" | "_") ("a".."z" | "A".."Z" | "_" | "0".."9")*;
- public TerminalRule getIDRule() {
- return gaTerminals.getIDRule();
- }
-
- //terminal INT returns ecore::EInt:
- //
- // "0".."9"+;
- public TerminalRule getINTRule() {
- return gaTerminals.getINTRule();
- }
-
- //terminal STRING:
- //
- // "\"" ("\\" ("b" | "t" | "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\""))* "\"" | "\'" ("\\" ("b" | "t" |
- //
- // "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\'"))* "\'";
- public TerminalRule getSTRINGRule() {
- return gaTerminals.getSTRINGRule();
- }
-
- //terminal ML_COMMENT:
- //
- // "/ *"->"* /";
- public TerminalRule getML_COMMENTRule() {
- return gaTerminals.getML_COMMENTRule();
- }
-
- //terminal SL_COMMENT:
- //
- // "//" !("\n" | "\r")* ("\r"? "\n")?;
- public TerminalRule getSL_COMMENTRule() {
- return gaTerminals.getSL_COMMENTRule();
- }
-
- //terminal WS:
- //
- // (" " | "\t" | "\r" | "\n")+;
- public TerminalRule getWSRule() {
- return gaTerminals.getWSRule();
- }
-
- //terminal ANY_OTHER:
- //
- // .;
- public TerminalRule getANY_OTHERRule() {
- return gaTerminals.getANY_OTHERRule();
- }
-}
+/*
+* generated by Xtext
+*/
+
+package org.eclipse.etrice.core.services;
+
+import com.google.inject.Singleton;
+import com.google.inject.Inject;
+
+import java.util.List;
+
+import org.eclipse.xtext.*;
+import org.eclipse.xtext.service.GrammarProvider;
+import org.eclipse.xtext.service.AbstractElementFinder.*;
+
+import org.eclipse.xtext.common.services.TerminalsGrammarAccess;
+
+@Singleton
+public class ConfigGrammarAccess extends AbstractGrammarElementFinder {
+
+
+ public class ConfigModelElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ConfigModel");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cImportsAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final RuleCall cImportsImportParserRuleCall_0_0 = (RuleCall)cImportsAssignment_0.eContents().get(0);
+ private final Assignment cConfigElementsAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cConfigElementsConfigElementParserRuleCall_1_0 = (RuleCall)cConfigElementsAssignment_1.eContents().get(0);
+
+ //ConfigModel:
+ //
+ // imports+=Import* configElements+=ConfigElement*;
+ public ParserRule getRule() { return rule; }
+
+ //imports+=Import* configElements+=ConfigElement*
+ public Group getGroup() { return cGroup; }
+
+ //imports+=Import*
+ public Assignment getImportsAssignment_0() { return cImportsAssignment_0; }
+
+ //Import
+ public RuleCall getImportsImportParserRuleCall_0_0() { return cImportsImportParserRuleCall_0_0; }
+
+ //configElements+=ConfigElement*
+ public Assignment getConfigElementsAssignment_1() { return cConfigElementsAssignment_1; }
+
+ //ConfigElement
+ public RuleCall getConfigElementsConfigElementParserRuleCall_1_0() { return cConfigElementsConfigElementParserRuleCall_1_0; }
+ }
+
+ public class ConfigElementElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ConfigElement");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cSubSystemConfigParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cActorClassConfigParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+ private final RuleCall cActorInstanceConfigParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+ private final RuleCall cProtocolClassConfigParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
+
+ //ConfigElement:
+ //
+ // SubSystemConfig | ActorClassConfig | ActorInstanceConfig | ProtocolClassConfig;
+ public ParserRule getRule() { return rule; }
+
+ //SubSystemConfig | ActorClassConfig | ActorInstanceConfig | ProtocolClassConfig
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //SubSystemConfig
+ public RuleCall getSubSystemConfigParserRuleCall_0() { return cSubSystemConfigParserRuleCall_0; }
+
+ //ActorClassConfig
+ public RuleCall getActorClassConfigParserRuleCall_1() { return cActorClassConfigParserRuleCall_1; }
+
+ //ActorInstanceConfig
+ public RuleCall getActorInstanceConfigParserRuleCall_2() { return cActorInstanceConfigParserRuleCall_2; }
+
+ //ProtocolClassConfig
+ public RuleCall getProtocolClassConfigParserRuleCall_3() { return cProtocolClassConfigParserRuleCall_3; }
+ }
+
+ public class SubSystemConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SubSystemConfig");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cSubSystemConfigKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cSubSystemAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cSubSystemSubSystemClassCrossReference_1_0 = (CrossReference)cSubSystemAssignment_1.eContents().get(0);
+ private final RuleCall cSubSystemSubSystemClassIDTerminalRuleCall_1_0_1 = (RuleCall)cSubSystemSubSystemClassCrossReference_1_0.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cDynConfigAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cDynConfigDynamicConfigParserRuleCall_3_0 = (RuleCall)cDynConfigAssignment_3.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
+
+ //SubSystemConfig:
+ //
+ // "SubSystemConfig" subSystem=[room::SubSystemClass] "{" dynConfig=DynamicConfig "}";
+ public ParserRule getRule() { return rule; }
+
+ //"SubSystemConfig" subSystem=[room::SubSystemClass] "{" dynConfig=DynamicConfig "}"
+ public Group getGroup() { return cGroup; }
+
+ //"SubSystemConfig"
+ public Keyword getSubSystemConfigKeyword_0() { return cSubSystemConfigKeyword_0; }
+
+ //subSystem=[room::SubSystemClass]
+ public Assignment getSubSystemAssignment_1() { return cSubSystemAssignment_1; }
+
+ //[room::SubSystemClass]
+ public CrossReference getSubSystemSubSystemClassCrossReference_1_0() { return cSubSystemSubSystemClassCrossReference_1_0; }
+
+ //ID
+ public RuleCall getSubSystemSubSystemClassIDTerminalRuleCall_1_0_1() { return cSubSystemSubSystemClassIDTerminalRuleCall_1_0_1; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //dynConfig=DynamicConfig
+ public Assignment getDynConfigAssignment_3() { return cDynConfigAssignment_3; }
+
+ //DynamicConfig
+ public RuleCall getDynConfigDynamicConfigParserRuleCall_3_0() { return cDynConfigDynamicConfigParserRuleCall_3_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
+ }
+
+ public class DynamicConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DynamicConfig");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cDynamicConfigurationKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final UnorderedGroup cUnorderedGroup_2 = (UnorderedGroup)cGroup.eContents().get(2);
+ private final Alternatives cAlternatives_2_0 = (Alternatives)cUnorderedGroup_2.eContents().get(0);
+ private final Group cGroup_2_0_0 = (Group)cAlternatives_2_0.eContents().get(0);
+ private final Keyword cFilePathKeyword_2_0_0_0 = (Keyword)cGroup_2_0_0.eContents().get(0);
+ private final Assignment cFilePathAssignment_2_0_0_1 = (Assignment)cGroup_2_0_0.eContents().get(1);
+ private final RuleCall cFilePathSTRINGTerminalRuleCall_2_0_0_1_0 = (RuleCall)cFilePathAssignment_2_0_0_1.eContents().get(0);
+ private final Group cGroup_2_0_1 = (Group)cAlternatives_2_0.eContents().get(1);
+ private final Group cGroup_2_0_1_0 = (Group)cGroup_2_0_1.eContents().get(0);
+ private final Keyword cUserImportKeyword_2_0_1_0_0 = (Keyword)cGroup_2_0_1_0.eContents().get(0);
+ private final Assignment cUserCode1Assignment_2_0_1_0_1 = (Assignment)cGroup_2_0_1_0.eContents().get(1);
+ private final RuleCall cUserCode1STRINGTerminalRuleCall_2_0_1_0_1_0 = (RuleCall)cUserCode1Assignment_2_0_1_0_1.eContents().get(0);
+ private final Group cGroup_2_0_1_1 = (Group)cGroup_2_0_1.eContents().get(1);
+ private final Keyword cUserConstructorKeyword_2_0_1_1_0 = (Keyword)cGroup_2_0_1_1.eContents().get(0);
+ private final Assignment cUserCode2Assignment_2_0_1_1_1 = (Assignment)cGroup_2_0_1_1.eContents().get(1);
+ private final RuleCall cUserCode2STRINGTerminalRuleCall_2_0_1_1_1_0 = (RuleCall)cUserCode2Assignment_2_0_1_1_1.eContents().get(0);
+ private final Group cGroup_2_1 = (Group)cUnorderedGroup_2.eContents().get(1);
+ private final Keyword cPollingTimerMsKeyword_2_1_0 = (Keyword)cGroup_2_1.eContents().get(0);
+ private final Assignment cPollingAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
+ private final RuleCall cPollingINTTerminalRuleCall_2_1_1_0 = (RuleCall)cPollingAssignment_2_1_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
+
+ //DynamicConfig:
+ //
+ // "dynamic configuration" "{" (("file path" filePath=STRING | ("user import" userCode1=STRING) ("user constructor"
+ //
+ // userCode2=STRING)) & ("polling timer [ms]" polling=INT)?) "}";
+ public ParserRule getRule() { return rule; }
+
+ //"dynamic configuration" "{" (("file path" filePath=STRING | ("user import" userCode1=STRING) ("user constructor"
+ //
+ //userCode2=STRING)) & ("polling timer [ms]" polling=INT)?) "}"
+ public Group getGroup() { return cGroup; }
+
+ //"dynamic configuration"
+ public Keyword getDynamicConfigurationKeyword_0() { return cDynamicConfigurationKeyword_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_1() { return cLeftCurlyBracketKeyword_1; }
+
+ //("file path" filePath=STRING | ("user import" userCode1=STRING) ("user constructor" userCode2=STRING)) &
+ //
+ //("polling timer [ms]" polling=INT)?
+ public UnorderedGroup getUnorderedGroup_2() { return cUnorderedGroup_2; }
+
+ //"file path" filePath=STRING | ("user import" userCode1=STRING) ("user constructor" userCode2=STRING)
+ public Alternatives getAlternatives_2_0() { return cAlternatives_2_0; }
+
+ //"file path" filePath=STRING
+ public Group getGroup_2_0_0() { return cGroup_2_0_0; }
+
+ //"file path"
+ public Keyword getFilePathKeyword_2_0_0_0() { return cFilePathKeyword_2_0_0_0; }
+
+ //filePath=STRING
+ public Assignment getFilePathAssignment_2_0_0_1() { return cFilePathAssignment_2_0_0_1; }
+
+ //STRING
+ public RuleCall getFilePathSTRINGTerminalRuleCall_2_0_0_1_0() { return cFilePathSTRINGTerminalRuleCall_2_0_0_1_0; }
+
+ //("user import" userCode1=STRING) ("user constructor" userCode2=STRING)
+ public Group getGroup_2_0_1() { return cGroup_2_0_1; }
+
+ //"user import" userCode1=STRING
+ public Group getGroup_2_0_1_0() { return cGroup_2_0_1_0; }
+
+ //"user import"
+ public Keyword getUserImportKeyword_2_0_1_0_0() { return cUserImportKeyword_2_0_1_0_0; }
+
+ //userCode1=STRING
+ public Assignment getUserCode1Assignment_2_0_1_0_1() { return cUserCode1Assignment_2_0_1_0_1; }
+
+ //STRING
+ public RuleCall getUserCode1STRINGTerminalRuleCall_2_0_1_0_1_0() { return cUserCode1STRINGTerminalRuleCall_2_0_1_0_1_0; }
+
+ //"user constructor" userCode2=STRING
+ public Group getGroup_2_0_1_1() { return cGroup_2_0_1_1; }
+
+ //"user constructor"
+ public Keyword getUserConstructorKeyword_2_0_1_1_0() { return cUserConstructorKeyword_2_0_1_1_0; }
+
+ //userCode2=STRING
+ public Assignment getUserCode2Assignment_2_0_1_1_1() { return cUserCode2Assignment_2_0_1_1_1; }
+
+ //STRING
+ public RuleCall getUserCode2STRINGTerminalRuleCall_2_0_1_1_1_0() { return cUserCode2STRINGTerminalRuleCall_2_0_1_1_1_0; }
+
+ //("polling timer [ms]" polling=INT)?
+ public Group getGroup_2_1() { return cGroup_2_1; }
+
+ //"polling timer [ms]"
+ public Keyword getPollingTimerMsKeyword_2_1_0() { return cPollingTimerMsKeyword_2_1_0; }
+
+ //polling=INT
+ public Assignment getPollingAssignment_2_1_1() { return cPollingAssignment_2_1_1; }
+
+ //INT
+ public RuleCall getPollingINTTerminalRuleCall_2_1_1_0() { return cPollingINTTerminalRuleCall_2_1_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; }
+ }
+
+ public class ActorClassConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorClassConfig");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cActorClassConfigKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cActorAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cActorActorClassCrossReference_1_0 = (CrossReference)cActorAssignment_1.eContents().get(0);
+ private final RuleCall cActorActorClassFQNParserRuleCall_1_0_1 = (RuleCall)cActorActorClassCrossReference_1_0.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cAttributesAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cAttributesAttrClassConfigParserRuleCall_3_0 = (RuleCall)cAttributesAssignment_3.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
+
+ /// *
+ // * Validation:
+ // * duplicates config, attributes
+ // * / ActorClassConfig:
+ //
+ // "ActorClassConfig" actor=[room::ActorClass|FQN] "{" attributes+=AttrClassConfig* "}";
+ public ParserRule getRule() { return rule; }
+
+ //"ActorClassConfig" actor=[room::ActorClass|FQN] "{" attributes+=AttrClassConfig* "}"
+ public Group getGroup() { return cGroup; }
+
+ //"ActorClassConfig"
+ public Keyword getActorClassConfigKeyword_0() { return cActorClassConfigKeyword_0; }
+
+ //actor=[room::ActorClass|FQN]
+ public Assignment getActorAssignment_1() { return cActorAssignment_1; }
+
+ //[room::ActorClass|FQN]
+ public CrossReference getActorActorClassCrossReference_1_0() { return cActorActorClassCrossReference_1_0; }
+
+ //FQN
+ public RuleCall getActorActorClassFQNParserRuleCall_1_0_1() { return cActorActorClassFQNParserRuleCall_1_0_1; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //attributes+=AttrClassConfig*
+ public Assignment getAttributesAssignment_3() { return cAttributesAssignment_3; }
+
+ //AttrClassConfig
+ public RuleCall getAttributesAttrClassConfigParserRuleCall_3_0() { return cAttributesAttrClassConfigParserRuleCall_3_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
+ }
+
+ public class ActorInstanceConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActorInstanceConfig");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cActorInstanceConfigKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cRootAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cRootSubSystemClassCrossReference_1_0 = (CrossReference)cRootAssignment_1.eContents().get(0);
+ private final RuleCall cRootSubSystemClassFQNParserRuleCall_1_0_1 = (RuleCall)cRootSubSystemClassCrossReference_1_0.eContents().get(1);
+ private final Keyword cSolidusKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cPathAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cPathRefPathParserRuleCall_3_0 = (RuleCall)cPathAssignment_3.eContents().get(0);
+ private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
+ private final UnorderedGroup cUnorderedGroup_5 = (UnorderedGroup)cGroup.eContents().get(5);
+ private final Assignment cAttributesAssignment_5_0 = (Assignment)cUnorderedGroup_5.eContents().get(0);
+ private final RuleCall cAttributesAttrInstanceConfigParserRuleCall_5_0_0 = (RuleCall)cAttributesAssignment_5_0.eContents().get(0);
+ private final Assignment cPortsAssignment_5_1 = (Assignment)cUnorderedGroup_5.eContents().get(1);
+ private final RuleCall cPortsPortInstanceConfigParserRuleCall_5_1_0 = (RuleCall)cPortsAssignment_5_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
+
+ /// *
+ // * Validation:
+ // * duplicates config, attributes
+ // * valid instance reference
+ // * Proposal:
+ // * attributes
+ // * /
+ //
+ //ActorInstanceConfig:
+ //
+ // "ActorInstanceConfig" root=[room::SubSystemClass|FQN] "/" path=RefPath "{" (attributes+=AttrInstanceConfig* &
+ //
+ // ports+=PortInstanceConfig*) "}";
+ public ParserRule getRule() { return rule; }
+
+ //"ActorInstanceConfig" root=[room::SubSystemClass|FQN] "/" path=RefPath "{" (attributes+=AttrInstanceConfig* &
+ //
+ //ports+=PortInstanceConfig*) "}"
+ public Group getGroup() { return cGroup; }
+
+ //"ActorInstanceConfig"
+ public Keyword getActorInstanceConfigKeyword_0() { return cActorInstanceConfigKeyword_0; }
+
+ //root=[room::SubSystemClass|FQN]
+ public Assignment getRootAssignment_1() { return cRootAssignment_1; }
+
+ //[room::SubSystemClass|FQN]
+ public CrossReference getRootSubSystemClassCrossReference_1_0() { return cRootSubSystemClassCrossReference_1_0; }
+
+ //FQN
+ public RuleCall getRootSubSystemClassFQNParserRuleCall_1_0_1() { return cRootSubSystemClassFQNParserRuleCall_1_0_1; }
+
+ //"/"
+ public Keyword getSolidusKeyword_2() { return cSolidusKeyword_2; }
+
+ //path=RefPath
+ public Assignment getPathAssignment_3() { return cPathAssignment_3; }
+
+ //RefPath
+ public RuleCall getPathRefPathParserRuleCall_3_0() { return cPathRefPathParserRuleCall_3_0; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; }
+
+ //attributes+=AttrInstanceConfig* & ports+=PortInstanceConfig*
+ public UnorderedGroup getUnorderedGroup_5() { return cUnorderedGroup_5; }
+
+ //attributes+=AttrInstanceConfig*
+ public Assignment getAttributesAssignment_5_0() { return cAttributesAssignment_5_0; }
+
+ //AttrInstanceConfig
+ public RuleCall getAttributesAttrInstanceConfigParserRuleCall_5_0_0() { return cAttributesAttrInstanceConfigParserRuleCall_5_0_0; }
+
+ //ports+=PortInstanceConfig*
+ public Assignment getPortsAssignment_5_1() { return cPortsAssignment_5_1; }
+
+ //PortInstanceConfig
+ public RuleCall getPortsPortInstanceConfigParserRuleCall_5_1_0() { return cPortsPortInstanceConfigParserRuleCall_5_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
+ }
+
+ public class ProtocolClassConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ProtocolClassConfig");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cProtocolClassConfigKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cProtocolAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cProtocolProtocolClassCrossReference_1_0 = (CrossReference)cProtocolAssignment_1.eContents().get(0);
+ private final RuleCall cProtocolProtocolClassFQNParserRuleCall_1_0_1 = (RuleCall)cProtocolProtocolClassCrossReference_1_0.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final UnorderedGroup cUnorderedGroup_3 = (UnorderedGroup)cGroup.eContents().get(3);
+ private final Group cGroup_3_0 = (Group)cUnorderedGroup_3.eContents().get(0);
+ private final Keyword cRegularKeyword_3_0_0 = (Keyword)cGroup_3_0.eContents().get(0);
+ private final Assignment cRegularAssignment_3_0_1 = (Assignment)cGroup_3_0.eContents().get(1);
+ private final RuleCall cRegularPortClassConfigParserRuleCall_3_0_1_0 = (RuleCall)cRegularAssignment_3_0_1.eContents().get(0);
+ private final Group cGroup_3_1 = (Group)cUnorderedGroup_3.eContents().get(1);
+ private final Keyword cConjugateKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
+ private final Assignment cConjugatedAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
+ private final RuleCall cConjugatedPortClassConfigParserRuleCall_3_1_1_0 = (RuleCall)cConjugatedAssignment_3_1_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
+
+ //ProtocolClassConfig:
+ //
+ // "ProtocolClassConfig" protocol=[room::ProtocolClass|FQN] "{" (("regular" regular=PortClassConfig)? & ("conjugate"
+ //
+ // conjugated=PortClassConfig)?) "}";
+ public ParserRule getRule() { return rule; }
+
+ //"ProtocolClassConfig" protocol=[room::ProtocolClass|FQN] "{" (("regular" regular=PortClassConfig)? & ("conjugate"
+ //
+ //conjugated=PortClassConfig)?) "}"
+ public Group getGroup() { return cGroup; }
+
+ //"ProtocolClassConfig"
+ public Keyword getProtocolClassConfigKeyword_0() { return cProtocolClassConfigKeyword_0; }
+
+ //protocol=[room::ProtocolClass|FQN]
+ public Assignment getProtocolAssignment_1() { return cProtocolAssignment_1; }
+
+ //[room::ProtocolClass|FQN]
+ public CrossReference getProtocolProtocolClassCrossReference_1_0() { return cProtocolProtocolClassCrossReference_1_0; }
+
+ //FQN
+ public RuleCall getProtocolProtocolClassFQNParserRuleCall_1_0_1() { return cProtocolProtocolClassFQNParserRuleCall_1_0_1; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //("regular" regular=PortClassConfig)? & ("conjugate" conjugated=PortClassConfig)?
+ public UnorderedGroup getUnorderedGroup_3() { return cUnorderedGroup_3; }
+
+ //("regular" regular=PortClassConfig)?
+ public Group getGroup_3_0() { return cGroup_3_0; }
+
+ //"regular"
+ public Keyword getRegularKeyword_3_0_0() { return cRegularKeyword_3_0_0; }
+
+ //regular=PortClassConfig
+ public Assignment getRegularAssignment_3_0_1() { return cRegularAssignment_3_0_1; }
+
+ //PortClassConfig
+ public RuleCall getRegularPortClassConfigParserRuleCall_3_0_1_0() { return cRegularPortClassConfigParserRuleCall_3_0_1_0; }
+
+ //("conjugate" conjugated=PortClassConfig)?
+ public Group getGroup_3_1() { return cGroup_3_1; }
+
+ //"conjugate"
+ public Keyword getConjugateKeyword_3_1_0() { return cConjugateKeyword_3_1_0; }
+
+ //conjugated=PortClassConfig
+ public Assignment getConjugatedAssignment_3_1_1() { return cConjugatedAssignment_3_1_1; }
+
+ //PortClassConfig
+ public RuleCall getConjugatedPortClassConfigParserRuleCall_3_1_1_0() { return cConjugatedPortClassConfigParserRuleCall_3_1_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
+ }
+
+ public class PortClassConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "PortClassConfig");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Action cPortClassConfigAction_0 = (Action)cGroup.eContents().get(0);
+ private final Keyword cPortKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cAttributesAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cAttributesAttrClassConfigParserRuleCall_3_0 = (RuleCall)cAttributesAssignment_3.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
+
+ //PortClassConfig:
+ //
+ // {PortClassConfig} "Port" "{" attributes+=AttrClassConfig* "}";
+ public ParserRule getRule() { return rule; }
+
+ //{PortClassConfig} "Port" "{" attributes+=AttrClassConfig* "}"
+ public Group getGroup() { return cGroup; }
+
+ //{PortClassConfig}
+ public Action getPortClassConfigAction_0() { return cPortClassConfigAction_0; }
+
+ //"Port"
+ public Keyword getPortKeyword_1() { return cPortKeyword_1; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //attributes+=AttrClassConfig*
+ public Assignment getAttributesAssignment_3() { return cAttributesAssignment_3; }
+
+ //AttrClassConfig
+ public RuleCall getAttributesAttrClassConfigParserRuleCall_3_0() { return cAttributesAttrClassConfigParserRuleCall_3_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
+ }
+
+ public class PortInstanceConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "PortInstanceConfig");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cInterfaceItemKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cItemAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cItemInterfaceItemCrossReference_1_0 = (CrossReference)cItemAssignment_1.eContents().get(0);
+ private final RuleCall cItemInterfaceItemIDTerminalRuleCall_1_0_1 = (RuleCall)cItemInterfaceItemCrossReference_1_0.eContents().get(1);
+ private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final Assignment cAttributesAssignment_3 = (Assignment)cGroup.eContents().get(3);
+ private final RuleCall cAttributesAttrInstanceConfigParserRuleCall_3_0 = (RuleCall)cAttributesAssignment_3.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
+
+ //PortInstanceConfig:
+ //
+ // "InterfaceItem" item=[room::InterfaceItem] "{" attributes+=AttrInstanceConfig* "}";
+ public ParserRule getRule() { return rule; }
+
+ //"InterfaceItem" item=[room::InterfaceItem] "{" attributes+=AttrInstanceConfig* "}"
+ public Group getGroup() { return cGroup; }
+
+ //"InterfaceItem"
+ public Keyword getInterfaceItemKeyword_0() { return cInterfaceItemKeyword_0; }
+
+ //item=[room::InterfaceItem]
+ public Assignment getItemAssignment_1() { return cItemAssignment_1; }
+
+ //[room::InterfaceItem]
+ public CrossReference getItemInterfaceItemCrossReference_1_0() { return cItemInterfaceItemCrossReference_1_0; }
+
+ //ID
+ public RuleCall getItemInterfaceItemIDTerminalRuleCall_1_0_1() { return cItemInterfaceItemIDTerminalRuleCall_1_0_1; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
+
+ //attributes+=AttrInstanceConfig*
+ public Assignment getAttributesAssignment_3() { return cAttributesAssignment_3; }
+
+ //AttrInstanceConfig
+ public RuleCall getAttributesAttrInstanceConfigParserRuleCall_3_0() { return cAttributesAttrInstanceConfigParserRuleCall_3_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
+ }
+
+ public class AttrConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "AttrConfig");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cAttrClassConfigParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cAttrInstanceConfigParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ /// *
+ // * Validation:
+ // * correct value type
+ // * Proposal:
+ // * correct Literal
+ // * / AttrConfig:
+ //
+ // AttrClassConfig | AttrInstanceConfig;
+ public ParserRule getRule() { return rule; }
+
+ //AttrClassConfig | AttrInstanceConfig
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //AttrClassConfig
+ public RuleCall getAttrClassConfigParserRuleCall_0() { return cAttrClassConfigParserRuleCall_0; }
+
+ //AttrInstanceConfig
+ public RuleCall getAttrInstanceConfigParserRuleCall_1() { return cAttrInstanceConfigParserRuleCall_1; }
+ }
+
+ public class AttrClassConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "AttrClassConfig");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cAttrKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cAttributeAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cAttributeAttributeCrossReference_1_0 = (CrossReference)cAttributeAssignment_1.eContents().get(0);
+ private final RuleCall cAttributeAttributeIDTerminalRuleCall_1_0_1 = (RuleCall)cAttributeAttributeCrossReference_1_0.eContents().get(1);
+ private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
+ private final Keyword cEqualsSignKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
+ private final Assignment cValueAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
+ private final RuleCall cValueLiteralArrayParserRuleCall_2_1_0 = (RuleCall)cValueAssignment_2_1.eContents().get(0);
+ private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
+ private final Keyword cLeftCurlyBracketKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
+ private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
+ private final Group cGroup_3_1_0 = (Group)cGroup_3_1.eContents().get(0);
+ private final Keyword cMinKeyword_3_1_0_0 = (Keyword)cGroup_3_1_0.eContents().get(0);
+ private final Keyword cEqualsSignKeyword_3_1_0_1 = (Keyword)cGroup_3_1_0.eContents().get(1);
+ private final Assignment cMinAssignment_3_1_0_2 = (Assignment)cGroup_3_1_0.eContents().get(2);
+ private final RuleCall cMinNumberLiteralParserRuleCall_3_1_0_2_0 = (RuleCall)cMinAssignment_3_1_0_2.eContents().get(0);
+ private final Group cGroup_3_1_1 = (Group)cGroup_3_1.eContents().get(1);
+ private final Keyword cMaxKeyword_3_1_1_0 = (Keyword)cGroup_3_1_1.eContents().get(0);
+ private final Keyword cEqualsSignKeyword_3_1_1_1 = (Keyword)cGroup_3_1_1.eContents().get(1);
+ private final Assignment cMaxAssignment_3_1_1_2 = (Assignment)cGroup_3_1_1.eContents().get(2);
+ private final RuleCall cMaxNumberLiteralParserRuleCall_3_1_1_2_0 = (RuleCall)cMaxAssignment_3_1_1_2.eContents().get(0);
+ private final Assignment cAttributesAssignment_3_1_2 = (Assignment)cGroup_3_1.eContents().get(2);
+ private final RuleCall cAttributesAttrClassConfigParserRuleCall_3_1_2_0 = (RuleCall)cAttributesAssignment_3_1_2.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_3_2 = (Keyword)cGroup_3.eContents().get(2);
+
+ /// *
+ // * Validation:
+ // * correct min, max type + available
+ // * min <= value <= max
+ // * if !value -> min <= attribute.defaultValue <= max
+ // * character length
+ // *
+ // * /
+ //
+ //AttrClassConfig:
+ //
+ // "Attr" attribute=[room::Attribute] ("=" value=LiteralArray)? ("{" (("min" "=" min=NumberLiteral)? ("max" "="
+ //
+ // max=NumberLiteral)? attributes+=AttrClassConfig*) "}")?;
+ public ParserRule getRule() { return rule; }
+
+ //"Attr" attribute=[room::Attribute] ("=" value=LiteralArray)? ("{" (("min" "=" min=NumberLiteral)? ("max" "="
+ //
+ //max=NumberLiteral)? attributes+=AttrClassConfig*) "}")?
+ public Group getGroup() { return cGroup; }
+
+ //"Attr"
+ public Keyword getAttrKeyword_0() { return cAttrKeyword_0; }
+
+ //attribute=[room::Attribute]
+ public Assignment getAttributeAssignment_1() { return cAttributeAssignment_1; }
+
+ //[room::Attribute]
+ public CrossReference getAttributeAttributeCrossReference_1_0() { return cAttributeAttributeCrossReference_1_0; }
+
+ //ID
+ public RuleCall getAttributeAttributeIDTerminalRuleCall_1_0_1() { return cAttributeAttributeIDTerminalRuleCall_1_0_1; }
+
+ //("=" value=LiteralArray)?
+ public Group getGroup_2() { return cGroup_2; }
+
+ //"="
+ public Keyword getEqualsSignKeyword_2_0() { return cEqualsSignKeyword_2_0; }
+
+ //value=LiteralArray
+ public Assignment getValueAssignment_2_1() { return cValueAssignment_2_1; }
+
+ //LiteralArray
+ public RuleCall getValueLiteralArrayParserRuleCall_2_1_0() { return cValueLiteralArrayParserRuleCall_2_1_0; }
+
+ //("{" (("min" "=" min=NumberLiteral)? ("max" "=" max=NumberLiteral)? attributes+=AttrClassConfig*) "}")?
+ public Group getGroup_3() { return cGroup_3; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_3_0() { return cLeftCurlyBracketKeyword_3_0; }
+
+ //("min" "=" min=NumberLiteral)? ("max" "=" max=NumberLiteral)? attributes+=AttrClassConfig*
+ public Group getGroup_3_1() { return cGroup_3_1; }
+
+ //("min" "=" min=NumberLiteral)?
+ public Group getGroup_3_1_0() { return cGroup_3_1_0; }
+
+ //"min"
+ public Keyword getMinKeyword_3_1_0_0() { return cMinKeyword_3_1_0_0; }
+
+ //"="
+ public Keyword getEqualsSignKeyword_3_1_0_1() { return cEqualsSignKeyword_3_1_0_1; }
+
+ //min=NumberLiteral
+ public Assignment getMinAssignment_3_1_0_2() { return cMinAssignment_3_1_0_2; }
+
+ //NumberLiteral
+ public RuleCall getMinNumberLiteralParserRuleCall_3_1_0_2_0() { return cMinNumberLiteralParserRuleCall_3_1_0_2_0; }
+
+ //("max" "=" max=NumberLiteral)?
+ public Group getGroup_3_1_1() { return cGroup_3_1_1; }
+
+ //"max"
+ public Keyword getMaxKeyword_3_1_1_0() { return cMaxKeyword_3_1_1_0; }
+
+ //"="
+ public Keyword getEqualsSignKeyword_3_1_1_1() { return cEqualsSignKeyword_3_1_1_1; }
+
+ //max=NumberLiteral
+ public Assignment getMaxAssignment_3_1_1_2() { return cMaxAssignment_3_1_1_2; }
+
+ //NumberLiteral
+ public RuleCall getMaxNumberLiteralParserRuleCall_3_1_1_2_0() { return cMaxNumberLiteralParserRuleCall_3_1_1_2_0; }
+
+ //attributes+=AttrClassConfig*
+ public Assignment getAttributesAssignment_3_1_2() { return cAttributesAssignment_3_1_2; }
+
+ //AttrClassConfig
+ public RuleCall getAttributesAttrClassConfigParserRuleCall_3_1_2_0() { return cAttributesAttrClassConfigParserRuleCall_3_1_2_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_3_2() { return cRightCurlyBracketKeyword_3_2; }
+ }
+
+ public class AttrInstanceConfigElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "AttrInstanceConfig");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cAttrKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Assignment cAttributeAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final CrossReference cAttributeAttributeCrossReference_1_0 = (CrossReference)cAttributeAssignment_1.eContents().get(0);
+ private final RuleCall cAttributeAttributeIDTerminalRuleCall_1_0_1 = (RuleCall)cAttributeAttributeCrossReference_1_0.eContents().get(1);
+ private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
+ private final Keyword cEqualsSignKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
+ private final Assignment cValueAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
+ private final RuleCall cValueLiteralArrayParserRuleCall_2_1_0 = (RuleCall)cValueAssignment_2_1.eContents().get(0);
+ private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
+ private final Keyword cLeftCurlyBracketKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
+ private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
+ private final Group cGroup_3_1_0 = (Group)cGroup_3_1.eContents().get(0);
+ private final Assignment cDynConfigAssignment_3_1_0_0 = (Assignment)cGroup_3_1_0.eContents().get(0);
+ private final Keyword cDynConfigDynamicConfigurationKeyword_3_1_0_0_0 = (Keyword)cDynConfigAssignment_3_1_0_0.eContents().get(0);
+ private final Alternatives cAlternatives_3_1_0_1 = (Alternatives)cGroup_3_1_0.eContents().get(1);
+ private final Assignment cReadOnlyAssignment_3_1_0_1_0 = (Assignment)cAlternatives_3_1_0_1.eContents().get(0);
+ private final Keyword cReadOnlyReadKeyword_3_1_0_1_0_0 = (Keyword)cReadOnlyAssignment_3_1_0_1_0.eContents().get(0);
+ private final Keyword cWriteKeyword_3_1_0_1_1 = (Keyword)cAlternatives_3_1_0_1.eContents().get(1);
+ private final Assignment cAttributesAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
+ private final RuleCall cAttributesAttrInstanceConfigParserRuleCall_3_1_1_0 = (RuleCall)cAttributesAssignment_3_1_1.eContents().get(0);
+ private final Keyword cRightCurlyBracketKeyword_3_2 = (Keyword)cGroup_3.eContents().get(2);
+
+ //AttrInstanceConfig:
+ //
+ // "Attr" attribute=[room::Attribute] ("=" value=LiteralArray)? ("{" ((dynConfig?="dynamic configuration"
+ //
+ // (readOnly?="read" | "write"))? attributes+=AttrInstanceConfig*) "}")?;
+ public ParserRule getRule() { return rule; }
+
+ //"Attr" attribute=[room::Attribute] ("=" value=LiteralArray)? ("{" ((dynConfig?="dynamic configuration" (readOnly?="read"
+ //
+ //| "write"))? attributes+=AttrInstanceConfig*) "}")?
+ public Group getGroup() { return cGroup; }
+
+ //"Attr"
+ public Keyword getAttrKeyword_0() { return cAttrKeyword_0; }
+
+ //attribute=[room::Attribute]
+ public Assignment getAttributeAssignment_1() { return cAttributeAssignment_1; }
+
+ //[room::Attribute]
+ public CrossReference getAttributeAttributeCrossReference_1_0() { return cAttributeAttributeCrossReference_1_0; }
+
+ //ID
+ public RuleCall getAttributeAttributeIDTerminalRuleCall_1_0_1() { return cAttributeAttributeIDTerminalRuleCall_1_0_1; }
+
+ //("=" value=LiteralArray)?
+ public Group getGroup_2() { return cGroup_2; }
+
+ //"="
+ public Keyword getEqualsSignKeyword_2_0() { return cEqualsSignKeyword_2_0; }
+
+ //value=LiteralArray
+ public Assignment getValueAssignment_2_1() { return cValueAssignment_2_1; }
+
+ //LiteralArray
+ public RuleCall getValueLiteralArrayParserRuleCall_2_1_0() { return cValueLiteralArrayParserRuleCall_2_1_0; }
+
+ //("{" ((dynConfig?="dynamic configuration" (readOnly?="read" | "write"))? attributes+=AttrInstanceConfig*) "}")?
+ public Group getGroup_3() { return cGroup_3; }
+
+ //"{"
+ public Keyword getLeftCurlyBracketKeyword_3_0() { return cLeftCurlyBracketKeyword_3_0; }
+
+ //(dynConfig?="dynamic configuration" (readOnly?="read" | "write"))? attributes+=AttrInstanceConfig*
+ public Group getGroup_3_1() { return cGroup_3_1; }
+
+ //(dynConfig?="dynamic configuration" (readOnly?="read" | "write"))?
+ public Group getGroup_3_1_0() { return cGroup_3_1_0; }
+
+ //dynConfig?="dynamic configuration"
+ public Assignment getDynConfigAssignment_3_1_0_0() { return cDynConfigAssignment_3_1_0_0; }
+
+ //"dynamic configuration"
+ public Keyword getDynConfigDynamicConfigurationKeyword_3_1_0_0_0() { return cDynConfigDynamicConfigurationKeyword_3_1_0_0_0; }
+
+ //readOnly?="read" | "write"
+ public Alternatives getAlternatives_3_1_0_1() { return cAlternatives_3_1_0_1; }
+
+ //readOnly?="read"
+ public Assignment getReadOnlyAssignment_3_1_0_1_0() { return cReadOnlyAssignment_3_1_0_1_0; }
+
+ //"read"
+ public Keyword getReadOnlyReadKeyword_3_1_0_1_0_0() { return cReadOnlyReadKeyword_3_1_0_1_0_0; }
+
+ //"write"
+ public Keyword getWriteKeyword_3_1_0_1_1() { return cWriteKeyword_3_1_0_1_1; }
+
+ //attributes+=AttrInstanceConfig*
+ public Assignment getAttributesAssignment_3_1_1() { return cAttributesAssignment_3_1_1; }
+
+ //AttrInstanceConfig
+ public RuleCall getAttributesAttrInstanceConfigParserRuleCall_3_1_1_0() { return cAttributesAttrInstanceConfigParserRuleCall_3_1_1_0; }
+
+ //"}"
+ public Keyword getRightCurlyBracketKeyword_3_2() { return cRightCurlyBracketKeyword_3_2; }
+ }
+
+ public class RefPathElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RefPath");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cRefsAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final RuleCall cRefsIDTerminalRuleCall_0_0 = (RuleCall)cRefsAssignment_0.eContents().get(0);
+ private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
+ private final Keyword cSolidusKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
+ private final Assignment cRefsAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
+ private final RuleCall cRefsIDTerminalRuleCall_1_1_0 = (RuleCall)cRefsAssignment_1_1.eContents().get(0);
+
+ /// *
+ // * Proposal:
+ // * for ActorInstanceConfig
+ // * / RefPath:
+ //
+ // refs+=ID ("/" refs+=ID)*;
+ public ParserRule getRule() { return rule; }
+
+ //refs+=ID ("/" refs+=ID)*
+ public Group getGroup() { return cGroup; }
+
+ //refs+=ID
+ public Assignment getRefsAssignment_0() { return cRefsAssignment_0; }
+
+ //ID
+ public RuleCall getRefsIDTerminalRuleCall_0_0() { return cRefsIDTerminalRuleCall_0_0; }
+
+ //("/" refs+=ID)*
+ public Group getGroup_1() { return cGroup_1; }
+
+ //"/"
+ public Keyword getSolidusKeyword_1_0() { return cSolidusKeyword_1_0; }
+
+ //refs+=ID
+ public Assignment getRefsAssignment_1_1() { return cRefsAssignment_1_1; }
+
+ //ID
+ public RuleCall getRefsIDTerminalRuleCall_1_1_0() { return cRefsIDTerminalRuleCall_1_1_0; }
+ }
+
+ public class ImportElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Import");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Keyword cImportKeyword_0 = (Keyword)cGroup.eContents().get(0);
+ private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
+ private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0);
+ private final Assignment cImportedNamespaceAssignment_1_0_0 = (Assignment)cGroup_1_0.eContents().get(0);
+ private final RuleCall cImportedNamespaceImportedFQNParserRuleCall_1_0_0_0 = (RuleCall)cImportedNamespaceAssignment_1_0_0.eContents().get(0);
+ private final Keyword cFromKeyword_1_0_1 = (Keyword)cGroup_1_0.eContents().get(1);
+ private final Keyword cModelKeyword_1_1 = (Keyword)cAlternatives_1.eContents().get(1);
+ private final Assignment cImportURIAssignment_2 = (Assignment)cGroup.eContents().get(2);
+ private final RuleCall cImportURISTRINGTerminalRuleCall_2_0 = (RuleCall)cImportURIAssignment_2.eContents().get(0);
+
+ //// -------------------- from org.eclipse.etrice.core.Room.xtext ---------------
+ // Import:
+ //
+ // "import" (importedNamespace=ImportedFQN "from" | "model") importURI=STRING;
+ public ParserRule getRule() { return rule; }
+
+ //"import" (importedNamespace=ImportedFQN "from" | "model") importURI=STRING
+ public Group getGroup() { return cGroup; }
+
+ //"import"
+ public Keyword getImportKeyword_0() { return cImportKeyword_0; }
+
+ //importedNamespace=ImportedFQN "from" | "model"
+ public Alternatives getAlternatives_1() { return cAlternatives_1; }
+
+ //importedNamespace=ImportedFQN "from"
+ public Group getGroup_1_0() { return cGroup_1_0; }
+
+ //importedNamespace=ImportedFQN
+ public Assignment getImportedNamespaceAssignment_1_0_0() { return cImportedNamespaceAssignment_1_0_0; }
+
+ //ImportedFQN
+ public RuleCall getImportedNamespaceImportedFQNParserRuleCall_1_0_0_0() { return cImportedNamespaceImportedFQNParserRuleCall_1_0_0_0; }
+
+ //"from"
+ public Keyword getFromKeyword_1_0_1() { return cFromKeyword_1_0_1; }
+
+ //"model"
+ public Keyword getModelKeyword_1_1() { return cModelKeyword_1_1; }
+
+ //importURI=STRING
+ public Assignment getImportURIAssignment_2() { return cImportURIAssignment_2; }
+
+ //STRING
+ public RuleCall getImportURISTRINGTerminalRuleCall_2_0() { return cImportURISTRINGTerminalRuleCall_2_0; }
+ }
+
+ public class ImportedFQNElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ImportedFQN");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final RuleCall cFQNParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
+ private final Keyword cFullStopAsteriskKeyword_1 = (Keyword)cGroup.eContents().get(1);
+
+ //ImportedFQN:
+ //
+ // FQN ".*"?;
+ public ParserRule getRule() { return rule; }
+
+ //FQN ".*"?
+ public Group getGroup() { return cGroup; }
+
+ //FQN
+ public RuleCall getFQNParserRuleCall_0() { return cFQNParserRuleCall_0; }
+
+ //".*"?
+ public Keyword getFullStopAsteriskKeyword_1() { return cFullStopAsteriskKeyword_1; }
+ }
+
+ public class FQNElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "FQN");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
+ private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
+ private final Keyword cFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
+ private final RuleCall cIDTerminalRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1);
+
+ //FQN:
+ //
+ // ID ("." ID)*;
+ public ParserRule getRule() { return rule; }
+
+ //ID ("." ID)*
+ public Group getGroup() { return cGroup; }
+
+ //ID
+ public RuleCall getIDTerminalRuleCall_0() { return cIDTerminalRuleCall_0; }
+
+ //("." ID)*
+ public Group getGroup_1() { return cGroup_1; }
+
+ //"."
+ public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
+
+ //ID
+ public RuleCall getIDTerminalRuleCall_1_1() { return cIDTerminalRuleCall_1_1; }
+ }
+
+ public class LiteralArrayElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LiteralArray");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Assignment cLiteralsAssignment_0 = (Assignment)cGroup.eContents().get(0);
+ private final RuleCall cLiteralsLiteralParserRuleCall_0_0 = (RuleCall)cLiteralsAssignment_0.eContents().get(0);
+ private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
+ private final Keyword cCommaKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
+ private final Assignment cLiteralsAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
+ private final RuleCall cLiteralsLiteralParserRuleCall_1_1_0 = (RuleCall)cLiteralsAssignment_1_1.eContents().get(0);
+
+ //// -----------------------------------------------------------------------------
+ // //enum Unit:
+ // // N|
+ // // W|
+ //
+ //
+ //// S = 's'|
+ // // KG = 'kg'|
+ // // M = 'm'|
+ // // C|
+ // // NM|
+ // // RPM|
+ // // V|
+ // // A|
+ // // HZ = 'Hz'|
+ // // KW
+ // //;
+ //
+ //
+ //// LiteralArray = BooleanLiteral+|NumberLiteral+
+ // // LiteralArray = StringLiteral
+ // LiteralArray:
+ //
+ // literals+=Literal ("," literals+=Literal)*;
+ public ParserRule getRule() { return rule; }
+
+ //literals+=Literal ("," literals+=Literal)*
+ public Group getGroup() { return cGroup; }
+
+ //literals+=Literal
+ public Assignment getLiteralsAssignment_0() { return cLiteralsAssignment_0; }
+
+ //Literal
+ public RuleCall getLiteralsLiteralParserRuleCall_0_0() { return cLiteralsLiteralParserRuleCall_0_0; }
+
+ //("," literals+=Literal)*
+ public Group getGroup_1() { return cGroup_1; }
+
+ //","
+ public Keyword getCommaKeyword_1_0() { return cCommaKeyword_1_0; }
+
+ //literals+=Literal
+ public Assignment getLiteralsAssignment_1_1() { return cLiteralsAssignment_1_1; }
+
+ //Literal
+ public RuleCall getLiteralsLiteralParserRuleCall_1_1_0() { return cLiteralsLiteralParserRuleCall_1_1_0; }
+ }
+
+ public class LiteralElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Literal");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cBooleanLiteralParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cNumberLiteralParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+ private final RuleCall cStringLiteralParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+
+ //// Value Types for Attributes
+ // Literal:
+ //
+ // BooleanLiteral | NumberLiteral | StringLiteral;
+ public ParserRule getRule() { return rule; }
+
+ //BooleanLiteral | NumberLiteral | StringLiteral
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //BooleanLiteral
+ public RuleCall getBooleanLiteralParserRuleCall_0() { return cBooleanLiteralParserRuleCall_0; }
+
+ //NumberLiteral
+ public RuleCall getNumberLiteralParserRuleCall_1() { return cNumberLiteralParserRuleCall_1; }
+
+ //StringLiteral
+ public RuleCall getStringLiteralParserRuleCall_2() { return cStringLiteralParserRuleCall_2; }
+ }
+
+ public class BooleanLiteralElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BooleanLiteral");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Action cBooleanLiteralAction_0 = (Action)cGroup.eContents().get(0);
+ private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
+ private final Keyword cFalseKeyword_1_0 = (Keyword)cAlternatives_1.eContents().get(0);
+ private final Assignment cIsTrueAssignment_1_1 = (Assignment)cAlternatives_1.eContents().get(1);
+ private final Keyword cIsTrueTrueKeyword_1_1_0 = (Keyword)cIsTrueAssignment_1_1.eContents().get(0);
+
+ //BooleanLiteral:
+ //
+ // {BooleanLiteral} ("false" | isTrue?="true");
+ public ParserRule getRule() { return rule; }
+
+ //{BooleanLiteral} ("false" | isTrue?="true")
+ public Group getGroup() { return cGroup; }
+
+ //{BooleanLiteral}
+ public Action getBooleanLiteralAction_0() { return cBooleanLiteralAction_0; }
+
+ //"false" | isTrue?="true"
+ public Alternatives getAlternatives_1() { return cAlternatives_1; }
+
+ //"false"
+ public Keyword getFalseKeyword_1_0() { return cFalseKeyword_1_0; }
+
+ //isTrue?="true"
+ public Assignment getIsTrueAssignment_1_1() { return cIsTrueAssignment_1_1; }
+
+ //"true"
+ public Keyword getIsTrueTrueKeyword_1_1_0() { return cIsTrueTrueKeyword_1_1_0; }
+ }
+
+ public class NumberLiteralElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "NumberLiteral");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cIntLiteralParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cRealLiteralParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //NumberLiteral:
+ //
+ // IntLiteral | RealLiteral;
+ public ParserRule getRule() { return rule; }
+
+ //IntLiteral | RealLiteral
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //IntLiteral
+ public RuleCall getIntLiteralParserRuleCall_0() { return cIntLiteralParserRuleCall_0; }
+
+ //RealLiteral
+ public RuleCall getRealLiteralParserRuleCall_1() { return cRealLiteralParserRuleCall_1; }
+ }
+
+ public class RealLiteralElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RealLiteral");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Action cRealLiteralAction_0 = (Action)cGroup.eContents().get(0);
+ private final Assignment cValueAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cValueRealParserRuleCall_1_0 = (RuleCall)cValueAssignment_1.eContents().get(0);
+
+ //RealLiteral:
+ //
+ // {RealLiteral} value=Real;
+ public ParserRule getRule() { return rule; }
+
+ //{RealLiteral} value=Real
+ public Group getGroup() { return cGroup; }
+
+ //{RealLiteral}
+ public Action getRealLiteralAction_0() { return cRealLiteralAction_0; }
+
+ //value=Real
+ public Assignment getValueAssignment_1() { return cValueAssignment_1; }
+
+ //Real
+ public RuleCall getValueRealParserRuleCall_1_0() { return cValueRealParserRuleCall_1_0; }
+ }
+
+ public class IntLiteralElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "IntLiteral");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Action cIntLiteralAction_0 = (Action)cGroup.eContents().get(0);
+ private final Assignment cValueAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cValueIntegerParserRuleCall_1_0 = (RuleCall)cValueAssignment_1.eContents().get(0);
+
+ //IntLiteral:
+ //
+ // {IntLiteral} value=Integer;
+ public ParserRule getRule() { return rule; }
+
+ //{IntLiteral} value=Integer
+ public Group getGroup() { return cGroup; }
+
+ //{IntLiteral}
+ public Action getIntLiteralAction_0() { return cIntLiteralAction_0; }
+
+ //value=Integer
+ public Assignment getValueAssignment_1() { return cValueAssignment_1; }
+
+ //Integer
+ public RuleCall getValueIntegerParserRuleCall_1_0() { return cValueIntegerParserRuleCall_1_0; }
+ }
+
+ public class StringLiteralElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "StringLiteral");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Action cStringLiteralAction_0 = (Action)cGroup.eContents().get(0);
+ private final Assignment cValueAssignment_1 = (Assignment)cGroup.eContents().get(1);
+ private final RuleCall cValueSTRINGTerminalRuleCall_1_0 = (RuleCall)cValueAssignment_1.eContents().get(0);
+
+ //StringLiteral:
+ //
+ // {StringLiteral} value=STRING;
+ public ParserRule getRule() { return rule; }
+
+ //{StringLiteral} value=STRING
+ public Group getGroup() { return cGroup; }
+
+ //{StringLiteral}
+ public Action getStringLiteralAction_0() { return cStringLiteralAction_0; }
+
+ //value=STRING
+ public Assignment getValueAssignment_1() { return cValueAssignment_1; }
+
+ //STRING
+ public RuleCall getValueSTRINGTerminalRuleCall_1_0() { return cValueSTRINGTerminalRuleCall_1_0; }
+ }
+
+ public class IntegerElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Integer");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cSignedIntegerParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cHexadecimalParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+
+ //Integer returns ecore::ELong:
+ //
+ // SignedInteger | Hexadecimal;
+ public ParserRule getRule() { return rule; }
+
+ //SignedInteger | Hexadecimal
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //SignedInteger
+ public RuleCall getSignedIntegerParserRuleCall_0() { return cSignedIntegerParserRuleCall_0; }
+
+ //Hexadecimal
+ public RuleCall getHexadecimalParserRuleCall_1() { return cHexadecimalParserRuleCall_1; }
+ }
+
+ public class SignedIntegerElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SignedInteger");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
+ private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
+ private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
+ private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
+
+ //SignedInteger hidden():
+ //
+ // ("+" | "-")? INT;
+ public ParserRule getRule() { return rule; }
+
+ //("+" | "-")? INT
+ public Group getGroup() { return cGroup; }
+
+ //("+" | "-")?
+ public Alternatives getAlternatives_0() { return cAlternatives_0; }
+
+ //"+"
+ public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
+
+ //"-"
+ public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
+
+ //INT
+ public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
+ }
+
+ public class HexadecimalElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Hexadecimal");
+ private final RuleCall cHEXTerminalRuleCall = (RuleCall)rule.eContents().get(1);
+
+ //Hexadecimal hidden():
+ //
+ // HEX;
+ public ParserRule getRule() { return rule; }
+
+ //HEX
+ public RuleCall getHEXTerminalRuleCall() { return cHEXTerminalRuleCall; }
+ }
+
+ public class RealElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Real");
+ private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+ private final RuleCall cDecimalParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+ private final RuleCall cDotDecimalParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+ private final RuleCall cDecimalDotParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+ private final RuleCall cDecimalExpParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
+
+ //Real returns ecore::EDouble:
+ //
+ // Decimal | DotDecimal | DecimalDot | DecimalExp;
+ public ParserRule getRule() { return rule; }
+
+ //Decimal | DotDecimal | DecimalDot | DecimalExp
+ public Alternatives getAlternatives() { return cAlternatives; }
+
+ //Decimal
+ public RuleCall getDecimalParserRuleCall_0() { return cDecimalParserRuleCall_0; }
+
+ //DotDecimal
+ public RuleCall getDotDecimalParserRuleCall_1() { return cDotDecimalParserRuleCall_1; }
+
+ //DecimalDot
+ public RuleCall getDecimalDotParserRuleCall_2() { return cDecimalDotParserRuleCall_2; }
+
+ //DecimalExp
+ public RuleCall getDecimalExpParserRuleCall_3() { return cDecimalExpParserRuleCall_3; }
+ }
+
+ public class DecimalElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Decimal");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
+ private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
+ private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
+ private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
+ private final Keyword cFullStopKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final RuleCall cINTTerminalRuleCall_3 = (RuleCall)cGroup.eContents().get(3);
+
+ //Decimal hidden():
+ //
+ // ("+" | "-")? INT "." INT;
+ public ParserRule getRule() { return rule; }
+
+ //("+" | "-")? INT "." INT
+ public Group getGroup() { return cGroup; }
+
+ //("+" | "-")?
+ public Alternatives getAlternatives_0() { return cAlternatives_0; }
+
+ //"+"
+ public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
+
+ //"-"
+ public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
+
+ //INT
+ public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
+
+ //"."
+ public Keyword getFullStopKeyword_2() { return cFullStopKeyword_2; }
+
+ //INT
+ public RuleCall getINTTerminalRuleCall_3() { return cINTTerminalRuleCall_3; }
+ }
+
+ public class DotDecimalElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DotDecimal");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
+ private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
+ private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
+ private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
+ private final RuleCall cINTTerminalRuleCall_2 = (RuleCall)cGroup.eContents().get(2);
+
+ //DotDecimal hidden():
+ //
+ // ("+" | "-")? "." INT;
+ public ParserRule getRule() { return rule; }
+
+ //("+" | "-")? "." INT
+ public Group getGroup() { return cGroup; }
+
+ //("+" | "-")?
+ public Alternatives getAlternatives_0() { return cAlternatives_0; }
+
+ //"+"
+ public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
+
+ //"-"
+ public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
+
+ //"."
+ public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; }
+
+ //INT
+ public RuleCall getINTTerminalRuleCall_2() { return cINTTerminalRuleCall_2; }
+ }
+
+ public class DecimalDotElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DecimalDot");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
+ private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
+ private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
+ private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
+ private final Keyword cFullStopKeyword_2 = (Keyword)cGroup.eContents().get(2);
+
+ //DecimalDot hidden():
+ //
+ // ("+" | "-")? INT ".";
+ public ParserRule getRule() { return rule; }
+
+ //("+" | "-")? INT "."
+ public Group getGroup() { return cGroup; }
+
+ //("+" | "-")?
+ public Alternatives getAlternatives_0() { return cAlternatives_0; }
+
+ //"+"
+ public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
+
+ //"-"
+ public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
+
+ //INT
+ public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
+
+ //"."
+ public Keyword getFullStopKeyword_2() { return cFullStopKeyword_2; }
+ }
+
+ public class DecimalExpElements extends AbstractParserRuleElementFinder {
+ private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DecimalExp");
+ private final Group cGroup = (Group)rule.eContents().get(1);
+ private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
+ private final Keyword cPlusSignKeyword_0_0 = (Keyword)cAlternatives_0.eContents().get(0);
+ private final Keyword cHyphenMinusKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
+ private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
+ private final Keyword cFullStopKeyword_2 = (Keyword)cGroup.eContents().get(2);
+ private final RuleCall cINTTerminalRuleCall_3 = (RuleCall)cGroup.eContents().get(3);
+ private final RuleCall cEXPTerminalRuleCall_4 = (RuleCall)cGroup.eContents().get(4);
+
+ //DecimalExp hidden():
+ //
+ // ("+" | "-")? INT "." INT EXP;
+ public ParserRule getRule() { return rule; }
+
+ //("+" | "-")? INT "." INT EXP
+ public Group getGroup() { return cGroup; }
+
+ //("+" | "-")?
+ public Alternatives getAlternatives_0() { return cAlternatives_0; }
+
+ //"+"
+ public Keyword getPlusSignKeyword_0_0() { return cPlusSignKeyword_0_0; }
+
+ //"-"
+ public Keyword getHyphenMinusKeyword_0_1() { return cHyphenMinusKeyword_0_1; }
+
+ //INT
+ public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
+
+ //"."
+ public Keyword getFullStopKeyword_2() { return cFullStopKeyword_2; }
+
+ //INT
+ public RuleCall getINTTerminalRuleCall_3() { return cINTTerminalRuleCall_3; }
+
+ //EXP
+ public RuleCall getEXPTerminalRuleCall_4() { return cEXPTerminalRuleCall_4; }
+ }
+
+
+ private ConfigModelElements pConfigModel;
+ private ConfigElementElements pConfigElement;
+ private SubSystemConfigElements pSubSystemConfig;
+ private DynamicConfigElements pDynamicConfig;
+ private ActorClassConfigElements pActorClassConfig;
+ private ActorInstanceConfigElements pActorInstanceConfig;
+ private ProtocolClassConfigElements pProtocolClassConfig;
+ private PortClassConfigElements pPortClassConfig;
+ private PortInstanceConfigElements pPortInstanceConfig;
+ private AttrConfigElements pAttrConfig;
+ private AttrClassConfigElements pAttrClassConfig;
+ private AttrInstanceConfigElements pAttrInstanceConfig;
+ private RefPathElements pRefPath;
+ private ImportElements pImport;
+ private ImportedFQNElements pImportedFQN;
+ private FQNElements pFQN;
+ private LiteralArrayElements pLiteralArray;
+ private LiteralElements pLiteral;
+ private BooleanLiteralElements pBooleanLiteral;
+ private NumberLiteralElements pNumberLiteral;
+ private RealLiteralElements pRealLiteral;
+ private IntLiteralElements pIntLiteral;
+ private StringLiteralElements pStringLiteral;
+ private IntegerElements pInteger;
+ private SignedIntegerElements pSignedInteger;
+ private HexadecimalElements pHexadecimal;
+ private RealElements pReal;
+ private DecimalElements pDecimal;
+ private DotDecimalElements pDotDecimal;
+ private DecimalDotElements pDecimalDot;
+ private DecimalExpElements pDecimalExp;
+ private TerminalRule tEXP;
+ private TerminalRule tHEX;
+
+ private final Grammar grammar;
+
+ private TerminalsGrammarAccess gaTerminals;
+
+ @Inject
+ public ConfigGrammarAccess(GrammarProvider grammarProvider,
+ TerminalsGrammarAccess gaTerminals) {
+ this.grammar = internalFindGrammar(grammarProvider);
+ this.gaTerminals = gaTerminals;
+ }
+
+ protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
+ Grammar grammar = grammarProvider.getGrammar(this);
+ while (grammar != null) {
+ if ("org.eclipse.etrice.core.Config".equals(grammar.getName())) {
+ return grammar;
+ }
+ List<Grammar> grammars = grammar.getUsedGrammars();
+ if (!grammars.isEmpty()) {
+ grammar = grammars.iterator().next();
+ } else {
+ return null;
+ }
+ }
+ return grammar;
+ }
+
+
+ public Grammar getGrammar() {
+ return grammar;
+ }
+
+
+ public TerminalsGrammarAccess getTerminalsGrammarAccess() {
+ return gaTerminals;
+ }
+
+
+ //ConfigModel:
+ //
+ // imports+=Import* configElements+=ConfigElement*;
+ public ConfigModelElements getConfigModelAccess() {
+ return (pConfigModel != null) ? pConfigModel : (pConfigModel = new ConfigModelElements());
+ }
+
+ public ParserRule getConfigModelRule() {
+ return getConfigModelAccess().getRule();
+ }
+
+ //ConfigElement:
+ //
+ // SubSystemConfig | ActorClassConfig | ActorInstanceConfig | ProtocolClassConfig;
+ public ConfigElementElements getConfigElementAccess() {
+ return (pConfigElement != null) ? pConfigElement : (pConfigElement = new ConfigElementElements());
+ }
+
+ public ParserRule getConfigElementRule() {
+ return getConfigElementAccess().getRule();
+ }
+
+ //SubSystemConfig:
+ //
+ // "SubSystemConfig" subSystem=[room::SubSystemClass] "{" dynConfig=DynamicConfig "}";
+ public SubSystemConfigElements getSubSystemConfigAccess() {
+ return (pSubSystemConfig != null) ? pSubSystemConfig : (pSubSystemConfig = new SubSystemConfigElements());
+ }
+
+ public ParserRule getSubSystemConfigRule() {
+ return getSubSystemConfigAccess().getRule();
+ }
+
+ //DynamicConfig:
+ //
+ // "dynamic configuration" "{" (("file path" filePath=STRING | ("user import" userCode1=STRING) ("user constructor"
+ //
+ // userCode2=STRING)) & ("polling timer [ms]" polling=INT)?) "}";
+ public DynamicConfigElements getDynamicConfigAccess() {
+ return (pDynamicConfig != null) ? pDynamicConfig : (pDynamicConfig = new DynamicConfigElements());
+ }
+
+ public ParserRule getDynamicConfigRule() {
+ return getDynamicConfigAccess().getRule();
+ }
+
+ /// *
+ // * Validation:
+ // * duplicates config, attributes
+ // * / ActorClassConfig:
+ //
+ // "ActorClassConfig" actor=[room::ActorClass|FQN] "{" attributes+=AttrClassConfig* "}";
+ public ActorClassConfigElements getActorClassConfigAccess() {
+ return (pActorClassConfig != null) ? pActorClassConfig : (pActorClassConfig = new ActorClassConfigElements());
+ }
+
+ public ParserRule getActorClassConfigRule() {
+ return getActorClassConfigAccess().getRule();
+ }
+
+ /// *
+ // * Validation:
+ // * duplicates config, attributes
+ // * valid instance reference
+ // * Proposal:
+ // * attributes
+ // * /
+ //
+ //ActorInstanceConfig:
+ //
+ // "ActorInstanceConfig" root=[room::SubSystemClass|FQN] "/" path=RefPath "{" (attributes+=AttrInstanceConfig* &
+ //
+ // ports+=PortInstanceConfig*) "}";
+ public ActorInstanceConfigElements getActorInstanceConfigAccess() {
+ return (pActorInstanceConfig != null) ? pActorInstanceConfig : (pActorInstanceConfig = new ActorInstanceConfigElements());
+ }
+
+ public ParserRule getActorInstanceConfigRule() {
+ return getActorInstanceConfigAccess().getRule();
+ }
+
+ //ProtocolClassConfig:
+ //
+ // "ProtocolClassConfig" protocol=[room::ProtocolClass|FQN] "{" (("regular" regular=PortClassConfig)? & ("conjugate"
+ //
+ // conjugated=PortClassConfig)?) "}";
+ public ProtocolClassConfigElements getProtocolClassConfigAccess() {
+ return (pProtocolClassConfig != null) ? pProtocolClassConfig : (pProtocolClassConfig = new ProtocolClassConfigElements());
+ }
+
+ public ParserRule getProtocolClassConfigRule() {
+ return getProtocolClassConfigAccess().getRule();
+ }
+
+ //PortClassConfig:
+ //
+ // {PortClassConfig} "Port" "{" attributes+=AttrClassConfig* "}";
+ public PortClassConfigElements getPortClassConfigAccess() {
+ return (pPortClassConfig != null) ? pPortClassConfig : (pPortClassConfig = new PortClassConfigElements());
+ }
+
+ public ParserRule getPortClassConfigRule() {
+ return getPortClassConfigAccess().getRule();
+ }
+
+ //PortInstanceConfig:
+ //
+ // "InterfaceItem" item=[room::InterfaceItem] "{" attributes+=AttrInstanceConfig* "}";
+ public PortInstanceConfigElements getPortInstanceConfigAccess() {
+ return (pPortInstanceConfig != null) ? pPortInstanceConfig : (pPortInstanceConfig = new PortInstanceConfigElements());
+ }
+
+ public ParserRule getPortInstanceConfigRule() {
+ return getPortInstanceConfigAccess().getRule();
+ }
+
+ /// *
+ // * Validation:
+ // * correct value type
+ // * Proposal:
+ // * correct Literal
+ // * / AttrConfig:
+ //
+ // AttrClassConfig | AttrInstanceConfig;
+ public AttrConfigElements getAttrConfigAccess() {
+ return (pAttrConfig != null) ? pAttrConfig : (pAttrConfig = new AttrConfigElements());
+ }
+
+ public ParserRule getAttrConfigRule() {
+ return getAttrConfigAccess().getRule();
+ }
+
+ /// *
+ // * Validation:
+ // * correct min, max type + available
+ // * min <= value <= max
+ // * if !value -> min <= attribute.defaultValue <= max
+ // * character length
+ // *
+ // * /
+ //
+ //AttrClassConfig:
+ //
+ // "Attr" attribute=[room::Attribute] ("=" value=LiteralArray)? ("{" (("min" "=" min=NumberLiteral)? ("max" "="
+ //
+ // max=NumberLiteral)? attributes+=AttrClassConfig*) "}")?;
+ public AttrClassConfigElements getAttrClassConfigAccess() {
+ return (pAttrClassConfig != null) ? pAttrClassConfig : (pAttrClassConfig = new AttrClassConfigElements());
+ }
+
+ public ParserRule getAttrClassConfigRule() {
+ return getAttrClassConfigAccess().getRule();
+ }
+
+ //AttrInstanceConfig:
+ //
+ // "Attr" attribute=[room::Attribute] ("=" value=LiteralArray)? ("{" ((dynConfig?="dynamic configuration"
+ //
+ // (readOnly?="read" | "write"))? attributes+=AttrInstanceConfig*) "}")?;
+ public AttrInstanceConfigElements getAttrInstanceConfigAccess() {
+ return (pAttrInstanceConfig != null) ? pAttrInstanceConfig : (pAttrInstanceConfig = new AttrInstanceConfigElements());
+ }
+
+ public ParserRule getAttrInstanceConfigRule() {
+ return getAttrInstanceConfigAccess().getRule();
+ }
+
+ /// *
+ // * Proposal:
+ // * for ActorInstanceConfig
+ // * / RefPath:
+ //
+ // refs+=ID ("/" refs+=ID)*;
+ public RefPathElements getRefPathAccess() {
+ return (pRefPath != null) ? pRefPath : (pRefPath = new RefPathElements());
+ }
+
+ public ParserRule getRefPathRule() {
+ return getRefPathAccess().getRule();
+ }
+
+ //// -------------------- from org.eclipse.etrice.core.Room.xtext ---------------
+ // Import:
+ //
+ // "import" (importedNamespace=ImportedFQN "from" | "model") importURI=STRING;
+ public ImportElements getImportAccess() {
+ return (pImport != null) ? pImport : (pImport = new ImportElements());
+ }
+
+ public ParserRule getImportRule() {
+ return getImportAccess().getRule();
+ }
+
+ //ImportedFQN:
+ //
+ // FQN ".*"?;
+ public ImportedFQNElements getImportedFQNAccess() {
+ return (pImportedFQN != null) ? pImportedFQN : (pImportedFQN = new ImportedFQNElements());
+ }
+
+ public ParserRule getImportedFQNRule() {
+ return getImportedFQNAccess().getRule();
+ }
+
+ //FQN:
+ //
+ // ID ("." ID)*;
+ public FQNElements getFQNAccess() {
+ return (pFQN != null) ? pFQN : (pFQN = new FQNElements());
+ }
+
+ public ParserRule getFQNRule() {
+ return getFQNAccess().getRule();
+ }
+
+ //// -----------------------------------------------------------------------------
+ // //enum Unit:
+ // // N|
+ // // W|
+ //
+ //
+ //// S = 's'|
+ // // KG = 'kg'|
+ // // M = 'm'|
+ // // C|
+ // // NM|
+ // // RPM|
+ // // V|
+ // // A|
+ // // HZ = 'Hz'|
+ // // KW
+ // //;
+ //
+ //
+ //// LiteralArray = BooleanLiteral+|NumberLiteral+
+ // // LiteralArray = StringLiteral
+ // LiteralArray:
+ //
+ // literals+=Literal ("," literals+=Literal)*;
+ public LiteralArrayElements getLiteralArrayAccess() {
+ return (pLiteralArray != null) ? pLiteralArray : (pLiteralArray = new LiteralArrayElements());
+ }
+
+ public ParserRule getLiteralArrayRule() {
+ return getLiteralArrayAccess().getRule();
+ }
+
+ //// Value Types for Attributes
+ // Literal:
+ //
+ // BooleanLiteral | NumberLiteral | StringLiteral;
+ public LiteralElements getLiteralAccess() {
+ return (pLiteral != null) ? pLiteral : (pLiteral = new LiteralElements());
+ }
+
+ public ParserRule getLiteralRule() {
+ return getLiteralAccess().getRule();
+ }
+
+ //BooleanLiteral:
+ //
+ // {BooleanLiteral} ("false" | isTrue?="true");
+ public BooleanLiteralElements getBooleanLiteralAccess() {
+ return (pBooleanLiteral != null) ? pBooleanLiteral : (pBooleanLiteral = new BooleanLiteralElements());
+ }
+
+ public ParserRule getBooleanLiteralRule() {
+ return getBooleanLiteralAccess().getRule();
+ }
+
+ //NumberLiteral:
+ //
+ // IntLiteral | RealLiteral;
+ public NumberLiteralElements getNumberLiteralAccess() {
+ return (pNumberLiteral != null) ? pNumberLiteral : (pNumberLiteral = new NumberLiteralElements());
+ }
+
+ public ParserRule getNumberLiteralRule() {
+ return getNumberLiteralAccess().getRule();
+ }
+
+ //RealLiteral:
+ //
+ // {RealLiteral} value=Real;
+ public RealLiteralElements getRealLiteralAccess() {
+ return (pRealLiteral != null) ? pRealLiteral : (pRealLiteral = new RealLiteralElements());
+ }
+
+ public ParserRule getRealLiteralRule() {
+ return getRealLiteralAccess().getRule();
+ }
+
+ //IntLiteral:
+ //
+ // {IntLiteral} value=Integer;
+ public IntLiteralElements getIntLiteralAccess() {
+ return (pIntLiteral != null) ? pIntLiteral : (pIntLiteral = new IntLiteralElements());
+ }
+
+ public ParserRule getIntLiteralRule() {
+ return getIntLiteralAccess().getRule();
+ }
+
+ //StringLiteral:
+ //
+ // {StringLiteral} value=STRING;
+ public StringLiteralElements getStringLiteralAccess() {
+ return (pStringLiteral != null) ? pStringLiteral : (pStringLiteral = new StringLiteralElements());
+ }
+
+ public ParserRule getStringLiteralRule() {
+ return getStringLiteralAccess().getRule();
+ }
+
+ //Integer returns ecore::ELong:
+ //
+ // SignedInteger | Hexadecimal;
+ public IntegerElements getIntegerAccess() {
+ return (pInteger != null) ? pInteger : (pInteger = new IntegerElements());
+ }
+
+ public ParserRule getIntegerRule() {
+ return getIntegerAccess().getRule();
+ }
+
+ //SignedInteger hidden():
+ //
+ // ("+" | "-")? INT;
+ public SignedIntegerElements getSignedIntegerAccess() {
+ return (pSignedInteger != null) ? pSignedInteger : (pSignedInteger = new SignedIntegerElements());
+ }
+
+ public ParserRule getSignedIntegerRule() {
+ return getSignedIntegerAccess().getRule();
+ }
+
+ //Hexadecimal hidden():
+ //
+ // HEX;
+ public HexadecimalElements getHexadecimalAccess() {
+ return (pHexadecimal != null) ? pHexadecimal : (pHexadecimal = new HexadecimalElements());
+ }
+
+ public ParserRule getHexadecimalRule() {
+ return getHexadecimalAccess().getRule();
+ }
+
+ //Real returns ecore::EDouble:
+ //
+ // Decimal | DotDecimal | DecimalDot | DecimalExp;
+ public RealElements getRealAccess() {
+ return (pReal != null) ? pReal : (pReal = new RealElements());
+ }
+
+ public ParserRule getRealRule() {
+ return getRealAccess().getRule();
+ }
+
+ //Decimal hidden():
+ //
+ // ("+" | "-")? INT "." INT;
+ public DecimalElements getDecimalAccess() {
+ return (pDecimal != null) ? pDecimal : (pDecimal = new DecimalElements());
+ }
+
+ public ParserRule getDecimalRule() {
+ return getDecimalAccess().getRule();
+ }
+
+ //DotDecimal hidden():
+ //
+ // ("+" | "-")? "." INT;
+ public DotDecimalElements getDotDecimalAccess() {
+ return (pDotDecimal != null) ? pDotDecimal : (pDotDecimal = new DotDecimalElements());
+ }
+
+ public ParserRule getDotDecimalRule() {
+ return getDotDecimalAccess().getRule();
+ }
+
+ //DecimalDot hidden():
+ //
+ // ("+" | "-")? INT ".";
+ public DecimalDotElements getDecimalDotAccess() {
+ return (pDecimalDot != null) ? pDecimalDot : (pDecimalDot = new DecimalDotElements());
+ }
+
+ public ParserRule getDecimalDotRule() {
+ return getDecimalDotAccess().getRule();
+ }
+
+ //DecimalExp hidden():
+ //
+ // ("+" | "-")? INT "." INT EXP;
+ public DecimalExpElements getDecimalExpAccess() {
+ return (pDecimalExp != null) ? pDecimalExp : (pDecimalExp = new DecimalExpElements());
+ }
+
+ public ParserRule getDecimalExpRule() {
+ return getDecimalExpAccess().getRule();
+ }
+
+ //terminal EXP:
+ //
+ // ("e" | "E") ("+" | "-")? "0".."9"+;
+ public TerminalRule getEXPRule() {
+ return (tEXP != null) ? tEXP : (tEXP = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "EXP"));
+ }
+
+ //terminal HEX:
+ //
+ // ("0x" | "0X") ("0".."9" | "a".."f" | "A".."F")+;
+ public TerminalRule getHEXRule() {
+ return (tHEX != null) ? tHEX : (tHEX = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "HEX"));
+ }
+
+ //terminal ID:
+ //
+ // "^"? ("a".."z" | "A".."Z" | "_") ("a".."z" | "A".."Z" | "_" | "0".."9")*;
+ public TerminalRule getIDRule() {
+ return gaTerminals.getIDRule();
+ }
+
+ //terminal INT returns ecore::EInt:
+ //
+ // "0".."9"+;
+ public TerminalRule getINTRule() {
+ return gaTerminals.getINTRule();
+ }
+
+ //terminal STRING:
+ //
+ // "\"" ("\\" ("b" | "t" | "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\""))* "\"" | "\'" ("\\" ("b" | "t" |
+ //
+ // "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\'"))* "\'";
+ public TerminalRule getSTRINGRule() {
+ return gaTerminals.getSTRINGRule();
+ }
+
+ //terminal ML_COMMENT:
+ //
+ // "/ *"->"* /";
+ public TerminalRule getML_COMMENTRule() {
+ return gaTerminals.getML_COMMENTRule();
+ }
+
+ //terminal SL_COMMENT:
+ //
+ // "//" !("\n" | "\r")* ("\r"? "\n")?;
+ public TerminalRule getSL_COMMENTRule() {
+ return gaTerminals.getSL_COMMENTRule();
+ }
+
+ //terminal WS:
+ //
+ // (" " | "\t" | "\r" | "\n")+;
+ public TerminalRule getWSRule() {
+ return gaTerminals.getWSRule();
+ }
+
+ //terminal ANY_OTHER:
+ //
+ // .;
+ public TerminalRule getANY_OTHERRule() {
+ return gaTerminals.getANY_OTHERRule();
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/Config.xtext b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/Config.xtext
index 7a1848321..dbe2a9e34 100644
--- a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/Config.xtext
+++ b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/Config.xtext
@@ -13,18 +13,29 @@ grammar org.eclipse.etrice.core.Config with org.eclipse.xtext.common.Terminals
generate config "http://www.eclipse.org/etrice/core/Config"
import "http://www.eclipse.org/emf/2002/Ecore" as ecore
-import 'platform:/resource/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/Room.ecore' as room
+import "platform:/resource/org.eclipse.etrice.core.room/src-gen/org/eclipse/etrice/core/Room.ecore" as room
-/*
- * Postprocessor:
- * getActor(Class|Instance)Config()
- */
ConfigModel:
imports+=Import*
configElements+=ConfigElement*;
ConfigElement:
- ActorClassConfig | ActorInstanceConfig | ProtocolClassConfig;
+ SubSystemConfig | ActorClassConfig | ActorInstanceConfig | ProtocolClassConfig;
+
+SubSystemConfig:
+ 'SubSystemConfig' subSystem=[room::SubSystemClass] '{'
+ dynConfig=DynamicConfig
+ '}';
+
+DynamicConfig:
+ 'dynamic configuration' '{'
+ (
+ (('file path' filePath=STRING) |
+ (('user import' userCode1=STRING)
+ ('user constructor' userCode2=STRING))) &
+ ('polling timer [ms]' polling=INT)?
+ )
+ '}';
/*
* Validation:
@@ -32,7 +43,7 @@ ConfigElement:
*/
ActorClassConfig:
'ActorClassConfig' actor=[room::ActorClass|FQN] '{'
- attributes+=AttrClassConfig*
+ (attributes+=AttrClassConfig)*
'}';
/*
@@ -44,24 +55,28 @@ ActorClassConfig:
*/
ActorInstanceConfig:
'ActorInstanceConfig' root=[room::SubSystemClass|FQN] '/' path=RefPath '{'
- attributes+=AttrInstanceConfig*
- ports+=PortInstanceConfig*
+ (
+ (attributes+=AttrInstanceConfig)* &
+ (ports+=PortInstanceConfig)*
+ )
'}';
ProtocolClassConfig:
'ProtocolClassConfig' protocol=[room::ProtocolClass|FQN] '{'
- (('regular' regular=PortClassConfig)? &
- ('conjugate' conjugated=PortClassConfig)?)
+ (
+ ('regular' regular=PortClassConfig)? &
+ ('conjugate' conjugated=PortClassConfig)?
+ )
'}';
PortClassConfig:
{PortClassConfig} 'Port' '{'
- attributes+=AttrClassConfig*
+ (attributes+=AttrClassConfig)*
'}';
PortInstanceConfig:
'InterfaceItem' item=[room::InterfaceItem|ID] '{'
- attributes+=AttrInstanceConfig*
+ (attributes+=AttrInstanceConfig)*
'}';
/*
@@ -83,12 +98,20 @@ AttrConfig:
*/
AttrClassConfig:
'Attr' attribute=[room::Attribute] ('=' value=LiteralArray)? ('{'
- (('min' '=' min=NumberLiteral)? &
- ('max' '=' max=NumberLiteral)?)
+ (
+ ('min' '=' min=NumberLiteral)?
+ ('max' '=' max=NumberLiteral)?
+ (attributes+=AttrClassConfig)*
+ )
'}')?;
AttrInstanceConfig:
- 'Attr' attribute=[room::Attribute] ('=' value=LiteralArray)?;
+ 'Attr' attribute=[room::Attribute] ('=' value=LiteralArray)? ('{'
+ (
+ (dynConfig?='dynamic configuration' (readOnly?='read' | 'write'))?
+ (attributes+=AttrInstanceConfig*)
+ )
+ '}')?;
/*
* Proposal:
@@ -127,10 +150,9 @@ FQN:
// LiteralArray = BooleanLiteral+|NumberLiteral+
// LiteralArray = StringLiteral
LiteralArray:
- literals+=Literal (',' literals+=Literal)*
-;
+ literals+=Literal (',' literals+=Literal)*;
-// Value Types for Attributes
+ // Value Types for Attributes
Literal:
BooleanLiteral |
NumberLiteral |
@@ -151,7 +173,7 @@ IntLiteral:
StringLiteral:
{StringLiteral} value=STRING;
-Integer returns ecore::EInt:
+Integer returns ecore::ELong:
SignedInteger | Hexadecimal;
SignedInteger hidden():
@@ -173,8 +195,10 @@ DecimalDot hidden():
('+' | '-')? INT '.';
DecimalExp hidden():
- ('+' | '-')? INT '.' INT ID ('+' | '-')? INT;
- //DecimalPosExp hidden():
-// ('+' | '-')? INT '.' INT ID;
+ ('+' | '-')? INT '.' INT EXP;
+
+terminal EXP:
+ ('e'|'E') ('+' | '-')? ('0'..'9')+;
+
terminal HEX:
('0x' | '0X') ('0'..'9' | 'a'..'f' | 'A'..'F')+;
diff --git a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/ConfigPostprocessor.ext b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/ConfigPostprocessor.ext
index 1cb017efa..d785f05db 100644
--- a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/ConfigPostprocessor.ext
+++ b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/ConfigPostprocessor.ext
@@ -52,6 +52,15 @@ process(EClass this) :
if(element instanceof ProtocolClassConfig)
list.add((ProtocolClassConfig) element);
return list;'
+ )->addOperation(
+ "getSubSystemConfigs",
+ ePackage.getEClassifier("SubSystemConfig"),
+ -1,
+ 'EList<SubSystemConfig> list = new org.eclipse.emf.common.util.BasicEList<SubSystemConfig>();
+ for(ConfigElement element : this.getConfigElements())
+ if(element instanceof SubSystemConfig)
+ list.add((SubSystemConfig) element);
+ return list;'
))
default: null
}
diff --git a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/config/util/ConfigUtil.java b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/config/util/ConfigUtil.java
index c2f2bc3a3..4eb476223 100644
--- a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/config/util/ConfigUtil.java
+++ b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/config/util/ConfigUtil.java
@@ -16,10 +16,7 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.eclipse.etrice.core.config.IntLiteral;
-import org.eclipse.etrice.core.config.NumberLiteral;
import org.eclipse.etrice.core.config.PortInstanceConfig;
-import org.eclipse.etrice.core.config.RealLiteral;
import org.eclipse.etrice.core.config.RefPath;
import org.eclipse.etrice.core.room.ActorClass;
import org.eclipse.etrice.core.room.ActorContainerClass;
@@ -35,7 +32,6 @@ import org.eclipse.etrice.core.room.PortClass;
import org.eclipse.etrice.core.room.PrimitiveType;
import org.eclipse.etrice.core.room.ProtocolClass;
import org.eclipse.etrice.core.room.SAPRef;
-import org.eclipse.etrice.core.room.SPPRef;
import org.eclipse.etrice.core.room.SubSystemClass;
import org.eclipse.etrice.core.room.util.RoomHelpers;
@@ -55,11 +51,35 @@ public class ConfigUtil {
return null;
}
- public static ActorContainerClass resolve(ActorContainerClass root,
+ public static ActorClass resolve(ActorContainerClass root,
RefPath path) {
- if (path == null)
- return root;
+ if(path.getRefs().isEmpty())
+ return null;
+
+ ActorContainerClass result = root;
+ for (String ref : path.getRefs()) {
+ ActorRef match = null;
+ for (ActorContainerRef actor : RoomHelpers.getRefs(result, true)) {
+ if (actor instanceof ActorRef && actor.getName().equals(ref)) {
+ match = (ActorRef) actor;
+ break;
+ }
+ }
+ if (match == null)
+ return null;
+ result = match.getType();
+ }
+
+ return (ActorClass) result;
+ }
+
+ public static ActorRef getLastActorRef(ActorContainerClass root,
+ RefPath path) {
+ if(path.getRefs().isEmpty())
+ return null;
+
+ ActorRef lastMatch = null;
ActorContainerClass result = root;
for (String ref : path.getRefs()) {
ActorRef match = null;
@@ -73,9 +93,10 @@ public class ConfigUtil {
if (match == null)
return null;
result = match.getType();
+ lastMatch = match;
}
- return result;
+ return lastMatch;
}
/**
@@ -125,18 +146,6 @@ public class ConfigUtil {
return null;
}
- public static double literalToDouble(NumberLiteral number) {
- double dValue = 0;
- if (number instanceof IntLiteral)
- dValue = ((IntLiteral) number).getValue();
- else if (number instanceof RealLiteral)
- dValue = ((RealLiteral) number).getValue();
- else
- assert (false) : "unexpected type";
-
- return dValue;
- }
-
public static PortClass getPortClass(PortInstanceConfig config) {
InterfaceItem item = config.getItem();
PortClass portClass = null;
diff --git a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/converter/ConfigValueConverterService.java b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/converter/ConfigValueConverterService.java
index 68634f13b..c88c8b7d0 100644
--- a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/converter/ConfigValueConverterService.java
+++ b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/converter/ConfigValueConverterService.java
@@ -16,14 +16,14 @@ import org.eclipse.xtext.conversion.IValueConverter;
import org.eclipse.xtext.conversion.ValueConverter;
import org.eclipse.xtext.conversion.ValueConverterException;
import org.eclipse.xtext.conversion.impl.AbstractLexerBasedConverter;
-import org.eclipse.xtext.conversion.impl.INTValueConverter;
import org.eclipse.xtext.nodemodel.INode;
+import org.eclipse.xtext.util.Strings;
public class ConfigValueConverterService extends DefaultTerminalConverters {
@ValueConverter(rule = "Integer")
- public IValueConverter<Integer> getIntegerConverter() {
- return new IntegerConverter();
+ public IValueConverter<Long> getLongConverter() {
+ return new LongConverter();
}
@ValueConverter(rule = "Real")
@@ -31,23 +31,31 @@ public class ConfigValueConverterService extends DefaultTerminalConverters {
return new DoubleConverter();
}
- public class IntegerConverter extends INTValueConverter {
+ public class LongConverter extends AbstractLexerBasedConverter<Long> {
@Override
- public Integer toValue(String string, INode node)
+ public Long toValue(String string, INode node)
throws ValueConverterException {
+ if (Strings.isEmpty(string))
+ throw new ValueConverterException(
+ "Couldn't convert empty string to integer.", node, null);
if (string.startsWith("0x") || string.startsWith("0X")) {
try {
- int value = Integer.parseInt(string.substring(2), 16);
+ long value = Long.parseLong(string.substring(2), 16);
return value;
} catch (NumberFormatException e) {
throw new ValueConverterException("Couldn't convert '"
+ string + "' to hex.", node, e);
}
- } else if (string.startsWith("+"))
- return toValue(string.substring(1), node);
- else
- return super.toValue(string, node);
+ } else {
+ try {
+ long value = Long.parseLong(string);
+ return value;
+ } catch (NumberFormatException e) {
+ throw new ValueConverterException("Couldn't convert '"
+ + string + "' to integer.", node, e);
+ }
+ }
}
}
@@ -56,12 +64,15 @@ public class ConfigValueConverterService extends DefaultTerminalConverters {
@Override
public Double toValue(String string, INode node)
throws ValueConverterException {
+ if (Strings.isEmpty(string))
+ throw new ValueConverterException(
+ "Couldn't convert empty string to double.", node, null);
try {
double value = Double.parseDouble(string);
return value;
} catch (NumberFormatException e) {
throw new ValueConverterException("Couldn't convert '" + string
- + "' to double.", node, null);
+ + "' to double.", node, e);
}
}
diff --git a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/formatting/ConfigFormatter.java b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/formatting/ConfigFormatter.java
index 0502260cf..a45a48cac 100644
--- a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/formatting/ConfigFormatter.java
+++ b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/formatting/ConfigFormatter.java
@@ -26,7 +26,7 @@ public class ConfigFormatter extends AbstractDeclarativeFormatter {
// general
c.setAutoLinewrap(120);
- c.setLinewrap(2).before(f.getSL_COMMENTRule());
+ c.setLinewrap(1).before(f.getSL_COMMENTRule());
c.setLinewrap(2).before(f.getML_COMMENTRule());
for (Pair<Keyword, Keyword> pair : f.findKeywordPairs("{", "}")) {
diff --git a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/scoping/ConfigScopeProvider.java b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/scoping/ConfigScopeProvider.java
index 1d62c848f..b8fdae79b 100644
--- a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/scoping/ConfigScopeProvider.java
+++ b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/scoping/ConfigScopeProvider.java
@@ -23,8 +23,8 @@ import org.eclipse.etrice.core.config.PortInstanceConfig;
import org.eclipse.etrice.core.config.ProtocolClassConfig;
import org.eclipse.etrice.core.config.util.ConfigUtil;
import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.ActorContainerClass;
import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.DataClass;
import org.eclipse.etrice.core.room.InterfaceItem;
import org.eclipse.etrice.core.room.PortClass;
import org.eclipse.etrice.core.room.SubSystemClass;
@@ -52,10 +52,10 @@ public class ConfigScopeProvider extends AbstractDeclarativeScopeProvider {
.eContainer();
SubSystemClass subsystem = actorConfig.getRoot();
if (subsystem != null) {
- ActorContainerClass acc = ConfigUtil.resolve(subsystem,
- actorConfig.getPath());
+ ActorClass ac = ConfigUtil
+ .resolve(subsystem, actorConfig.getPath());
for (InterfaceItem item : ConfigUtil.getConfigurableInterfaceItems(
- acc, true))
+ ac, true))
scopes.add(EObjectDescription.create(item.getName(), item));
}
@@ -65,7 +65,9 @@ public class ConfigScopeProvider extends AbstractDeclarativeScopeProvider {
public IScope scope_AttrConfig_attribute(AttrConfig ctx, EReference ref) {
final List<IEObjectDescription> scopes = new ArrayList<IEObjectDescription>();
- if (ctx.eContainer() instanceof ActorClassConfig)
+ if (ctx.eContainer() instanceof AttrConfig)
+ collectAttributes((AttrConfig) ctx.eContainer(), scopes);
+ else if (ctx.eContainer() instanceof ActorClassConfig)
collectAttributes((ActorClassConfig) ctx.eContainer(), scopes);
else if (ctx.eContainer() instanceof ActorInstanceConfig)
collectAttributes((ActorInstanceConfig) ctx.eContainer(), scopes);
@@ -76,6 +78,17 @@ public class ConfigScopeProvider extends AbstractDeclarativeScopeProvider {
return new SimpleScope(IScope.NULLSCOPE, scopes);
}
+ private void collectAttributes(AttrConfig config,
+ List<IEObjectDescription> scopes) {
+ if (config.getAttribute().getRefType().getType() instanceof DataClass) {
+ DataClass dc = (DataClass) config.getAttribute().getRefType()
+ .getType();
+ for (Attribute att : RoomHelpers.getAllAttributes(dc)) {
+ scopes.add(EObjectDescription.create(att.getName(), att));
+ }
+ }
+ }
+
private void collectAttributes(ActorClassConfig config,
List<IEObjectDescription> scopes) {
ActorClass actor = config.getActor();
@@ -90,13 +103,9 @@ public class ConfigScopeProvider extends AbstractDeclarativeScopeProvider {
List<IEObjectDescription> scopes) {
SubSystemClass subsystem = config.getRoot();
if (subsystem != null) {
- ActorContainerClass actor = ConfigUtil.resolve(subsystem,
- config.getPath());
- if (actor instanceof ActorClass) {
- for (Attribute att : RoomHelpers
- .getAllAttributes((ActorClass) actor)) {
- scopes.add(EObjectDescription.create(att.getName(), att));
- }
+ ActorClass actor = ConfigUtil.resolve(subsystem, config.getPath());
+ for (Attribute att : RoomHelpers.getAllAttributes(actor)) {
+ scopes.add(EObjectDescription.create(att.getName(), att));
}
}
}
diff --git a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/validation/ConfigJavaValidator.java b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/validation/ConfigJavaValidator.java
index 165a94271..87d9aa487 100644
--- a/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/validation/ConfigJavaValidator.java
+++ b/plugins/org.eclipse.etrice.core.config/src/org/eclipse/etrice/core/validation/ConfigJavaValidator.java
@@ -18,6 +18,7 @@ import java.util.Set;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.etrice.core.config.ActorClassConfig;
import org.eclipse.etrice.core.config.ActorInstanceConfig;
import org.eclipse.etrice.core.config.AttrClassConfig;
@@ -35,19 +36,26 @@ import org.eclipse.etrice.core.config.ProtocolClassConfig;
import org.eclipse.etrice.core.config.RealLiteral;
import org.eclipse.etrice.core.config.RefPath;
import org.eclipse.etrice.core.config.StringLiteral;
+import org.eclipse.etrice.core.config.SubSystemConfig;
import org.eclipse.etrice.core.config.util.ConfigUtil;
+import org.eclipse.etrice.core.converter.ConfigValueConverterService;
import org.eclipse.etrice.core.room.ActorClass;
import org.eclipse.etrice.core.room.ActorContainerClass;
+import org.eclipse.etrice.core.room.ActorRef;
import org.eclipse.etrice.core.room.Attribute;
import org.eclipse.etrice.core.room.DataType;
import org.eclipse.etrice.core.room.InterfaceItem;
import org.eclipse.etrice.core.room.LiteralType;
import org.eclipse.etrice.core.room.PrimitiveType;
import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.SubSystemClass;
+import org.eclipse.xtext.conversion.ValueConverterException;
import org.eclipse.xtext.validation.Check;
public class ConfigJavaValidator extends AbstractConfigJavaValidator {
+ private ConfigValueConverterService converter = new ConfigValueConverterService();
+
@Check
public void checkConfigModel(ConfigModel model) {
// duplicate actor class config check
@@ -88,6 +96,9 @@ public class ConfigJavaValidator extends AbstractConfigJavaValidator {
@Check
public void checkActorClassConfig(ActorClassConfig config) {
+ if (config.getActor().isAbstract())
+ error("abstract actor classes not supported",
+ ConfigPackage.Literals.ACTOR_CLASS_CONFIG__ACTOR);
checkDuplicateAttributes(config.getAttributes(),
ConfigPackage.Literals.ACTOR_CLASS_CONFIG__ATTRIBUTES);
@@ -102,8 +113,17 @@ public class ConfigJavaValidator extends AbstractConfigJavaValidator {
String invalidSegment = ConfigUtil.checkPath(root, path);
if (invalidSegment != null)
error("no match for segment '" + invalidSegment + "'",
- ConfigPackage.eINSTANCE
- .getActorInstanceConfig_Path());
+ ConfigPackage.Literals.ACTOR_INSTANCE_CONFIG__PATH);
+ else {
+ ActorRef aRef = ConfigUtil.getLastActorRef(root, path);
+ if (aRef != null) {
+ if (aRef.getSize() > 1)
+ error("no arrays of actor references supported",
+ ConfigPackage.Literals.ACTOR_INSTANCE_CONFIG__PATH);
+ } else
+ error("invalid actor reference",
+ ConfigPackage.Literals.ACTOR_INSTANCE_CONFIG__PATH);
+ }
}
}
// duplicate port instance config check
@@ -148,15 +168,21 @@ public class ConfigJavaValidator extends AbstractConfigJavaValidator {
@Check
public void checkAttrConfig(AttrConfig config) {
- Attribute attr = config.getAttribute();
- if (attr == null)
+ Attribute a = config.getAttribute();
+ if (a == null)
return;
- DataType type = attr.getRefType().getType();
+ DataType type = a.getRefType().getType();
if (type instanceof PrimitiveType) {
PrimitiveType primitive = (PrimitiveType) type;
-
checkAttrConfigValue(primitive, config);
+ } else if (type instanceof DataType) {
+ if (config.getValue() != null)
+ error("not available",
+ ConfigPackage.Literals.ATTR_CONFIG__VALUE);
+ if (a.getSize() > 0)
+ error("DataClass arrays not supported",
+ ConfigPackage.Literals.ATTR_CLASS_CONFIG__ATTRIBUTES);
}
}
@@ -177,6 +203,32 @@ public class ConfigJavaValidator extends AbstractConfigJavaValidator {
@Check
public void checkAttrInstanceConfig(AttrInstanceConfig config) {
+ Attribute attr = config.getAttribute();
+ if (attr == null)
+ return;
+
+ EStructuralFeature feature = ConfigPackage.eINSTANCE
+ .getAttrInstanceConfig_DynConfig();
+ if (config.isDynConfig()) {
+ if (!(config.eContainer() instanceof ActorInstanceConfig))
+ error("dynamic configuration only at root attributes", feature);
+ if (config.eContainer() instanceof ActorInstanceConfig) {
+ SubSystemClass ssc = ((ActorInstanceConfig) config.eContainer())
+ .getRoot();
+ ConfigModel model = getConfigModel(config);
+ boolean found = false;
+ for (SubSystemConfig c : model.getSubSystemConfigs())
+ if (c.getSubSystem().equals(ssc)) {
+ if (c.getDynConfig() == null)
+ error("no source for dynamic config in SubSystemConfig",
+ feature);
+ found = true;
+ }
+ if (!found)
+ error("no SubSystemConfig found", feature);
+
+ }
+ }
}
@@ -191,10 +243,13 @@ public class ConfigJavaValidator extends AbstractConfigJavaValidator {
LiteralType type = primitive.getType();
Attribute attribute = config.getAttribute();
int attrMult = (attribute.getSize() > 0) ? attribute.getSize() : 1;
- if (values.size() > attrMult)
- error("too many values, multiplicity is " + attrMult, valueRef);
- if (values.size() > 1 && values.size() < attrMult)
- error("not enough values, multiplicity is " + attrMult, valueRef);
+ if (type != LiteralType.CHAR) {
+ if (values.size() > attrMult)
+ error("too many values, multiplicity is " + attrMult, valueRef);
+ if (values.size() > 1 && values.size() < attrMult)
+ error("not enough values, multiplicity is " + attrMult,
+ valueRef);
+ }
// type check
for (Literal value : values) {
switch (type) {
@@ -217,7 +272,8 @@ public class ConfigJavaValidator extends AbstractConfigJavaValidator {
if (values.size() > 1)
error("multiplicity must be one", valueRef);
StringLiteral strValue = (StringLiteral) value;
- if (attrMult < strValue.getValue().length())
+ if (attribute.getSize() > 0
+ && attrMult < strValue.getValue().length())
error("too many characters - maximal length is "
+ attrMult, valueRef);
}
@@ -260,19 +316,38 @@ public class ConfigJavaValidator extends AbstractConfigJavaValidator {
if (!(value instanceof NumberLiteral))
continue;
- double dValue = ConfigUtil
- .literalToDouble((NumberLiteral) value);
- if (min != null) {
- double dMin = ConfigUtil.literalToDouble(min);
- if (dMin > dValue)
- error("value is less than minimum", arrayRef,
- values.indexOf(value));
- }
- if (max != null) {
- double dMax = ConfigUtil.literalToDouble(max);
- if (dMax < dValue)
- error("value exceeds maximum", arrayRef,
- values.indexOf(value));
+ if (value instanceof RealLiteral) {
+ double dbValue = ((RealLiteral) value).getValue();
+ if (min instanceof RealLiteral) {
+ double dbMin = ((RealLiteral) min).getValue();
+ if (dbMin > dbValue)
+ error("value is less than minimum",
+ config.getValue(), arrayRef,
+ values.indexOf(value));
+ }
+ if (max instanceof RealLiteral) {
+ double dbMax = ((RealLiteral) max).getValue();
+ if (dbMax < dbValue)
+ error("value exceeds maximum",
+ config.getValue(), arrayRef,
+ values.indexOf(value));
+ }
+ } else if (value instanceof IntLiteral) {
+ long lValue = ((IntLiteral) value).getValue();
+ if (min instanceof IntLiteral) {
+ long lMin = ((IntLiteral) min).getValue();
+ if (lMin > lValue)
+ error("value is less than minimum",
+ config.getValue(), arrayRef,
+ values.indexOf(value));
+ }
+ if (max instanceof IntLiteral) {
+ long lMax = ((IntLiteral) max).getValue();
+ if (lMax < lValue)
+ error("value exceeds maximum",
+ config.getValue(), arrayRef,
+ values.indexOf(value));
+ }
}
}
}
@@ -287,29 +362,54 @@ public class ConfigJavaValidator extends AbstractConfigJavaValidator {
EReference minRef = ConfigPackage.eINSTANCE.getAttrClassConfig_Min();
LiteralType type = primitive.getType();
- switch (type) {
- case INT:
- if (config instanceof RealLiteral)
- error("must be an integer", minRef);
- break;
- default:
- if (config != null)
- error("no minimum allowed", minRef);
- }
if (type == LiteralType.INT || type == LiteralType.REAL) {
+ if (primitive.getType() == LiteralType.INT) {
+ if (!(min instanceof IntLiteral))
+ error("incompatible datatype: maximum is not int", minRef);
+ } else if (primitive.getType() == LiteralType.REAL) {
+ if (!(min instanceof RealLiteral))
+ error("incompatible datatype: maximum is not real", minRef);
+ }
// check room default if config default is not set
- if (config.getValue() == null) {
- double dMin = ConfigUtil.literalToDouble(min);
- String defaultValue = config.getAttribute()
- .getDefaultValueLiteral();
- try {
- double dDefaulValue = Double.parseDouble(defaultValue);
- if (dMin > dDefaulValue)
- error("default value in ROOM model is less than this minimun",
+ String defaultValue = config.getAttribute()
+ .getDefaultValueLiteral();
+ if (config.getValue() == null && defaultValue != null) {
+ if (type == LiteralType.INT) {
+ if (min instanceof IntLiteral) {
+ try {
+ long lDefaultValue = converter.getLongConverter()
+ .toValue(defaultValue, null);
+ long lMax = ((IntLiteral) min).getValue();
+ if (lMax < lDefaultValue)
+ error("default value in ROOM model is less than this maximum",
+ minRef);
+ } catch (ValueConverterException e) {
+ warning("could not compare with int value in ROOM model (parse error)",
+ minRef);
+ }
+ } else
+ warning("could not compare with int value in ROOM model (incompatible datatypes)",
+ minRef);
+ } else if (type == LiteralType.REAL) {
+ if (min instanceof RealLiteral) {
+ try {
+ double dbDefaultValue = converter
+ .getRealConverter().toValue(defaultValue,
+ null);
+ double dbMax = ((RealLiteral) min).getValue();
+ if (dbMax < dbDefaultValue)
+ error("default value in ROOM model is less than this maximum",
+ minRef);
+ } catch (ValueConverterException e1) {
+ warning("could not compare with real value in ROOM model (parse error)",
+ minRef);
+ }
+ } else
+ warning("could not compare with real value in ROOM model (incompatible datatypes)",
minRef);
- } catch (NumberFormatException e) {
}
+
}
}
@@ -317,35 +417,60 @@ public class ConfigJavaValidator extends AbstractConfigJavaValidator {
private void checkAttrConfigMax(PrimitiveType primitive,
AttrClassConfig config) {
- NumberLiteral max = config.getMin();
+ NumberLiteral max = config.getMax();
if (max == null)
return;
EReference maxRef = ConfigPackage.eINSTANCE.getAttrClassConfig_Max();
LiteralType type = primitive.getType();
- switch (type) {
- case INT:
- if (max instanceof RealLiteral)
- error("must be an integer", maxRef);
- break;
- default:
- if (max != null)
- error("no maximum allowed", maxRef);
- }
if (type == LiteralType.INT || type == LiteralType.REAL) {
+ if (primitive.getType() == LiteralType.INT) {
+ if (!(max instanceof IntLiteral))
+ error("incompatible datatype: maximum is not int", maxRef);
+ } else if (primitive.getType() == LiteralType.REAL) {
+ if (!(max instanceof RealLiteral))
+ error("incompatible datatype: maximum is not real", maxRef);
+ }
// check room default if config default is not set
- if (config.getValue() == null) {
- double dMax = ConfigUtil.literalToDouble(max);
- String defaultValue = config.getAttribute()
- .getDefaultValueLiteral();
- try {
- double dDefaulValue = Double.parseDouble(defaultValue);
- if (dMax < dDefaulValue)
- error("default value in ROOM model exceeds this maximum",
+ String defaultValue = config.getAttribute()
+ .getDefaultValueLiteral();
+ if (config.getValue() == null && defaultValue != null) {
+ if (type == LiteralType.INT) {
+ if (max instanceof IntLiteral) {
+ try {
+ long lDefaultValue = converter.getLongConverter()
+ .toValue(defaultValue, null);
+ long lMax = ((IntLiteral) max).getValue();
+ if (lMax < lDefaultValue)
+ error("default value in ROOM model exceeds this maximum",
+ maxRef);
+ } catch (ValueConverterException e) {
+ warning("could not compare with int value in ROOM model (parse error)",
+ maxRef);
+ }
+ } else
+ warning("could not compare with int value in ROOM model (incompatible datatypes)",
+ maxRef);
+ } else if (type == LiteralType.REAL) {
+ if (max instanceof RealLiteral) {
+ try {
+ double dbDefaultValue = converter
+ .getRealConverter().toValue(defaultValue,
+ null);
+ double dbMax = ((RealLiteral) max).getValue();
+ if (dbMax < dbDefaultValue)
+ error("default value in ROOM model exceeds this maximum",
+ maxRef);
+ } catch (ValueConverterException e1) {
+ warning("could not compare with real value in ROOM model (parse error)",
+ maxRef);
+ }
+ } else
+ warning("could not compare with real value in ROOM model (incompatible datatypes)",
maxRef);
- } catch (NumberFormatException e) {
}
+
}
}
}
diff --git a/plugins/org.eclipse.etrice.core.config/xtend-gen/org/eclipse/etrice/core/generator/ConfigGenerator.java b/plugins/org.eclipse.etrice.core.config/xtend-gen/org/eclipse/etrice/core/generator/ConfigGenerator.java
index fbcb0e7f5..15a186d3d 100644
--- a/plugins/org.eclipse.etrice.core.config/xtend-gen/org/eclipse/etrice/core/generator/ConfigGenerator.java
+++ b/plugins/org.eclipse.etrice.core.config/xtend-gen/org/eclipse/etrice/core/generator/ConfigGenerator.java
@@ -1,11 +1,11 @@
-package org.eclipse.etrice.core.generator;
-
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.eclipse.xtext.generator.IGenerator;
-
-@SuppressWarnings("all")
-public class ConfigGenerator implements IGenerator {
- public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
- }
-}
+package org.eclipse.etrice.core.generator;
+
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.xtext.generator.IFileSystemAccess;
+import org.eclipse.xtext.generator.IGenerator;
+
+@SuppressWarnings("all")
+public class ConfigGenerator implements IGenerator {
+ public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
+ }
+}
diff --git a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/linking/ImportAwareHyperlinkHelper.java b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/linking/ImportAwareHyperlinkHelper.java
index 956c27571..a06afed64 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/linking/ImportAwareHyperlinkHelper.java
+++ b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/linking/ImportAwareHyperlinkHelper.java
@@ -36,10 +36,10 @@ import com.google.inject.Provider;
public class ImportAwareHyperlinkHelper extends HyperlinkHelper {
@Inject
- private Provider<XtextHyperlink> hyperlinkProvider;
+ protected Provider<XtextHyperlink> hyperlinkProvider;
@Inject
- private PlatformRelativeUriResolver uriResolver;
+ protected PlatformRelativeUriResolver uriResolver;
public ImportAwareHyperlinkHelper() {
super();
diff --git a/plugins/org.eclipse.etrice.doc/doc/012-Working-with-Tutorials.textile b/plugins/org.eclipse.etrice.doc/doc/012-Working-with-Tutorials.textile
index 2e81de17d..52014f9b6 100644
--- a/plugins/org.eclipse.etrice.doc/doc/012-Working-with-Tutorials.textile
+++ b/plugins/org.eclipse.etrice.doc/doc/012-Working-with-Tutorials.textile
@@ -1,7 +1,7 @@
h1. Working with the eTrice Tutorials
-The eTrice Tutorials will help you to learn and understand the eTrice Tool and concepts. ETrice supports several target languages. The concepts will not be explained in each language.
+The eTrice Tutorials will help you to learn and understand the eTrice tool and concepts. ETrice supports several target languages. The concepts will not be explained for each language.
Most of the common concepts will be described for Java as target language. To start with a new language the first steps to setup the workspace and to generate and run the first model will be described also. Target language specific aspects will be described as well.
-Therefore the best way to start with eTrice is to perform the Java Tutorials and after that switch to your target language.
+Therefore the best way to start with eTrice is to follow the Java Tutorials and after that switch to your target language.
diff --git a/plugins/org.eclipse.etrice.doc/doc/013-Setting-up-the-Workspace.textile b/plugins/org.eclipse.etrice.doc/doc/013-Setting-up-the-Workspace.textile
index cab1394b5..785e881dc 100644
--- a/plugins/org.eclipse.etrice.doc/doc/013-Setting-up-the-Workspace.textile
+++ b/plugins/org.eclipse.etrice.doc/doc/013-Setting-up-the-Workspace.textile
@@ -1,4 +1,4 @@
-h1. Setting up the Workspace (Java)
+h1. Setting up the Workspace for Java Projects
ETrice generates code out of ROOM models. The code generator and the generated code relies on a runtime framework and on some ready to use model parts. This parts provide services like:
diff --git a/plugins/org.eclipse.etrice.doc/doc/015-getting-started.textile b/plugins/org.eclipse.etrice.doc/doc/015-getting-started.textile
index 4f0b709ec..4bfb01a98 100644
--- a/plugins/org.eclipse.etrice.doc/doc/015-getting-started.textile
+++ b/plugins/org.eclipse.etrice.doc/doc/015-getting-started.textile
@@ -1,4 +1,4 @@
-h1. Tutorial HelloWorld (Java)
+h1. Tutorial HelloWorld for Java
h2. Scope
diff --git a/plugins/org.eclipse.etrice.doc/doc/032-Setting-up-the-Workspace_C.textile b/plugins/org.eclipse.etrice.doc/doc/032-Setting-up-the-Workspace_C.textile
index 0201eda29..e4a01311a 100644
--- a/plugins/org.eclipse.etrice.doc/doc/032-Setting-up-the-Workspace_C.textile
+++ b/plugins/org.eclipse.etrice.doc/doc/032-Setting-up-the-Workspace_C.textile
@@ -1,4 +1,4 @@
-h1. Setting up the Workspace ( C )
+h1. Setting up the Workspace for C Projects
Before you can start with C, some preconditions must be fulfilled:
@@ -25,7 +25,7 @@ From the main menu select _File->New->C Project_.
!images/032-SetupWorkspaceC02.png!
-Name the Project. Select an _Executable->Hello World ANSI C_ as Project type, _MinGW GCC_ as Tool chain and click _Finish_.
+Name the project. Select an _Executable->Hello World ANSI C_ as project type, _MinGW GCC_ as tool chain and click _Finish_.
!images/032-SetupWorkspaceC04.png!
@@ -50,7 +50,7 @@ The C runtime system contains some basic functionalities to run the generated mo
After changing the configuration, the runtime must be built.
-Open the properties of the _org.eclipse.runtime.c_ project and select _C/C++ Build->Settins->Tool Settings_ and select _Includes_.
+Open the properties of the _org.eclipse.runtime.c_ project and select _C/C++ Build->Settings->Tool Settings_ and select _Includes_.
!images/032-SetupWorkspaceC08.png!
diff --git a/plugins/org.eclipse.etrice.doc/doc/034-getting-started_C.textile b/plugins/org.eclipse.etrice.doc/doc/034-getting-started_C.textile
index 35e55b58d..4dd229b72 100644
--- a/plugins/org.eclipse.etrice.doc/doc/034-getting-started_C.textile
+++ b/plugins/org.eclipse.etrice.doc/doc/034-getting-started_C.textile
@@ -1,149 +1,149 @@
-h1. Tutorial HelloWorld ( C )
-
-h2. Scope
-
-In this tutorial you will learn how to create a model for C from scratch. There are some more steps to do in C as in Java. The goal is to get familiar with the additional steps. The Java tutorial is a prerequisite for the following explanations.
-You will perform the following steps:
-
-# create a new model from scratch for C
-# create structure and behavior similar to Java
-# create a launch configuration for the C code generator
-# setup the C environment
-# generate the source code
-# run the model
-
-Make sure that you have set up the workspace as described in _Setting up the workspace ( C )_.
-
-
-h2. Create a new model from scratch
-
-Before you can create a new C-model, you have to create a new C project as described in _Setting up the workspace ( C )_.
-Remember:
-- select the _C/C++_ perspective
-- From the main menue select _File->New->C Project_
-- Name the project _HelloWorldC_
-- Project type is _Executable / Empty C Project_
-- Toolchain is _MinGW_
-
-The workspace should look like this:
-
-!images/034-HelloWorldC01.png!
-
-The next step is to add the model folder:
-Right click on the new project. Select _New->Folder_ and name it _model_.
-
-!images/034-HelloWorldC02.png!
-
-Add the model file to the folder. Right click on the new folder. Select _New->file_ and name it _HelloWorldC.room_.
-
-!images/034-HelloWorldC03.png!
-
-Due to the file ending _.room_, the tool will ask you to add the Xtext nature. Answer with _Yes_.
-
-!images/034-HelloWorldC04.png!
-
-The workspace should look like this:
-
-!images/034-HelloWorldC05.png!
-
-
-
-h2. Create the HelloWorld model
-
-Once the model file is created and the Xtext nature is added, you can create the model as you did it for Java.
-Creating the model is not the focus of this tutorial. Therefore copy and paste the following code into your model file. Optionally you can open and layout the diagrams.
-Recognize the C specific parts:
-- Import CTypes instead of JavaTypes
-- The action code contains C instead of Java. Later versions will contain a common action language, but for the moment the action language is target specific.
-- The application must be shutdown on model level (see also _etRuntimeConfig.h_)
-
-ToDo: shutdown must not depend on the subsystem.
-
-bc..
-RoomModel HelloWorldCModel {
- import room.basic.types.c.* from "../../org.eclipse.etrice.modellib.c/model/CTypes.room"
- SubSystemClass HelloWorldCSubSysClass {
- ActorRef HelloETriceTopRef:AHelloWorldCTop
- }
- ActorClass AHelloWorldCTop {
- Structure { }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 { }
- State state0 {
- entry {
- "printf(\"HelloWorldC !\\n\");"
- "HelloWorldCSubSysClass_shutdown();//exit(0);"
- "\t\t\t\t\t\t"
- }
- }
- }
- }
- }
-}
-bq.
-
-h2. Create a launch configuration to start the C code generator
-
-Other than in Java a launch configuration for the C code generator must be created.
-
-From the _Run_ menu select _Run Configurations_
-
-!images/034-HelloWorldC06.png!
-
-Within the dialog select _eTrice C Generator_ and click the _New_ button to create a new launch configuration.
-
-!images/034-HelloWorldC07.png!
-
-A new configuration should be created. Name it _gen_HelloWorldC_ and add the model via one of the _add_ buttons.
-
-!images/034-HelloWorldC08.png!
-
-In the _Refresh_ tab select _The entire workspace_
-
-!images/034-HelloWorldC09.png!
-
-In the _Common_ tab select _Shared file_ and add the _HelloWorldC_ project via the _Browse_ button.
-
-!images/034-HelloWorldC10.png!
-
-Apply your changes. The new configuration should now exist in your workspace.
-
-!images/034-HelloWorldC11.png!
-
-
-h2. Generate the code
-
-Now you can generate the code as you know it from Java. Right click to the launch configuration and run it as _gen_HelloWorldC_.
-
-!images/034-HelloWorldC12.png!
-
-The code should be generated.
-
-!images/034-HelloWorldC13.png!
-
-h2. Setup the include path
-
-Before you can build the application you must setup the include path for the runtime system. Right click the project and select _Properties_. Add the include path as described in _setting up the workspace_.
-
-!images/034-HelloWorldC14.png!
-
-Add the runtime library.
-
-!images/034-HelloWorldC15.png!
-
-Recognize the name of the library ("org.eclipse.etrice.runtime.c"). The library file on your disk is "liborg.eclipse.etrice.runtime.c.a".
-
-h2. Build and run the model
-
-Now you can build the application. Click the build button to build the application.
-Run the application as _Local C/C++ Application_.
-Verify the output.
-
-!images/034-HelloWorldC16.png!
-
-h2. Summary
-
-You are now familiar with all necessary steps to create, build and run an eTrice C model from scratch. You are able to create a launch configuration to start the code generator and to perform all necessary settings to compile and link the application.
-
+h1. Tutorial HelloWorld for C
+
+h2. Scope
+
+In this tutorial you will learn how to create a model for C from scratch. There are some more steps to do in C compared to Java. The goal is to get familiar with the additional steps. The Java tutorial is a prerequisite for the following explanations.
+You will perform the following steps:
+
+# create a new model from scratch for C
+# create structure and behavior similar to Java
+# create a launch configuration for the C code generator
+# setup the C environment
+# generate the source code
+# run the model
+
+Make sure that you have set up the workspace as described in _Setting up the Workspace for C Projects_.
+
+
+h2. Create a new model from scratch
+
+Before you can create a new C-model, you have to create a new C project as described in _Setting up the Workspace for C Projects_.
+Remember:
+- select the _C/C++_ perspective
+- From the main menue select _File->New->C Project_
+- Name the project _HelloWorldC_
+- Project type is _Executable / Empty C Project_
+- Toolchain is _MinGW_
+
+The workspace should look like this:
+
+!images/034-HelloWorldC01.png!
+
+The next step is to add the model folder:
+Right click on the new project. Select _New->Folder_ and name it _model_.
+
+!images/034-HelloWorldC02.png!
+
+Add the model file to the folder. Right click on the new folder. Select _New->file_ and name it _HelloWorldC.room_.
+
+!images/034-HelloWorldC03.png!
+
+Due to the file ending _.room_, the tool will ask you to add the Xtext nature. Answer with _Yes_.
+
+!images/034-HelloWorldC04.png!
+
+The workspace should look like this:
+
+!images/034-HelloWorldC05.png!
+
+
+
+h2. Create the HelloWorld model
+
+Once the model file is created and the Xtext nature is added, you can create the model as you did it for Java.
+Creating the model is not the focus of this tutorial. Therefore copy and paste the following code into your model file. Optionally you can open and layout the diagrams.
+Recognize the C specific parts:
+- Import CTypes instead of JavaTypes
+- The action code contains C instead of Java. Later versions will contain a common action language, but for the moment the action language is target specific.
+- The application must be shutdown on model level (see also _etRuntimeConfig.h_)
+
+ToDo: shutdown must not depend on the subsystem.
+
+bc..
+RoomModel HelloWorldCModel {
+ import room.basic.types.c.* from "../../org.eclipse.etrice.modellib.c/model/CTypes.room"
+ SubSystemClass HelloWorldCSubSysClass {
+ ActorRef HelloETriceTopRef:AHelloWorldCTop
+ }
+ ActorClass AHelloWorldCTop {
+ Structure { }
+ Behavior {
+ StateMachine {
+ Transition init: initial -> state0 { }
+ State state0 {
+ entry {
+ "printf(\"HelloWorldC !\\n\");"
+ "HelloWorldCSubSysClass_shutdown();//exit(0);"
+ "\t\t\t\t\t\t"
+ }
+ }
+ }
+ }
+ }
+}
+bq.
+
+h2. Create a launch configuration to start the C code generator
+
+Other than in Java a launch configuration for the C code generator must be created.
+
+From the _Run_ menu select _Run Configurations_
+
+!images/034-HelloWorldC06.png!
+
+Within the dialog select _eTrice C Generator_ and click the _New_ button to create a new launch configuration.
+
+!images/034-HelloWorldC07.png!
+
+A new configuration should be created. Name it _gen_HelloWorldC_ and add the model via one of the _add_ buttons.
+
+!images/034-HelloWorldC08.png!
+
+In the _Refresh_ tab select _The entire workspace_
+
+!images/034-HelloWorldC09.png!
+
+In the _Common_ tab select _Shared file_ and add the _HelloWorldC_ project via the _Browse_ button.
+
+!images/034-HelloWorldC10.png!
+
+Apply your changes. The new configuration should now exist in your workspace.
+
+!images/034-HelloWorldC11.png!
+
+
+h2. Generate the code
+
+Now you can generate the code as you know it from Java. Right click on the launch configuration and run it as _gen_HelloWorldC_.
+
+!images/034-HelloWorldC12.png!
+
+The code should be generated.
+
+!images/034-HelloWorldC13.png!
+
+h2. Setup the include path
+
+Before you can build the application you must setup the include path for the runtime system. Right click the project and select _Properties_. Add the include path as described in _setting up the workspace_.
+
+!images/034-HelloWorldC14.png!
+
+Add the runtime library.
+
+!images/034-HelloWorldC15.png!
+
+Recognize the name of the library ("org.eclipse.etrice.runtime.c"). The library file on your disk is "liborg.eclipse.etrice.runtime.c.a".
+
+h2. Build and run the model
+
+Now you can build the application. Click the build button to build the application.
+Run the application as _Local C/C++ Application_.
+Verify the output.
+
+!images/034-HelloWorldC16.png!
+
+h2. Summary
+
+You are now familiar with all necessary steps to create, build and run an eTrice C model from scratch. You are able to create a launch configuration to start the code generator and to perform all necessary settings to compile and link the application.
+
The next tutorial provides an exercise to get more familiar with these working steps. \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/CExtensions.xtend b/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/CExtensions.xtend
index e4afca200..9ab45875c 100644
--- a/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/CExtensions.xtend
+++ b/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/CExtensions.xtend
@@ -21,6 +21,7 @@ package org.eclipse.etrice.generator.c.gen
import com.google.inject.Inject
import com.google.inject.Singleton
import org.eclipse.etrice.core.room.Message
+import org.eclipse.etrice.core.room.PrimitiveType
import org.eclipse.etrice.core.room.RoomClass
import org.eclipse.etrice.generator.generic.ILanguageExtension
import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator
@@ -153,4 +154,7 @@ class CExtensions implements ILanguageExtension {
override String superCall(String baseClassName, String method, String args) {
""
}
+ override String toValueLiteral(PrimitiveType type, String value){
+ throw new UnsupportedOperationException("TODO Config for C");
+ }
} \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ActorClassGen.java b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ActorClassGen.java
index b798d9355..c174aa5c4 100644
--- a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ActorClassGen.java
+++ b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ActorClassGen.java
@@ -1,781 +1,781 @@
-package org.eclipse.etrice.generator.c.gen;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.HashSet;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.ActorCommunicationType;
-import org.eclipse.etrice.core.room.Annotation;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.CommunicationType;
-import org.eclipse.etrice.core.room.DataClass;
-import org.eclipse.etrice.core.room.GeneralProtocolClass;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.SAPRef;
-import org.eclipse.etrice.core.room.SPPRef;
-import org.eclipse.etrice.core.room.ServiceImplementation;
-import org.eclipse.etrice.core.room.StandardOperation;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.core.room.util.RoomHelpers;
-import org.eclipse.etrice.generator.c.gen.CExtensions;
-import org.eclipse.etrice.generator.c.gen.StateMachineGen;
-import org.eclipse.etrice.generator.generic.GenericActorClassGenerator;
-import org.eclipse.etrice.generator.generic.ProcedureHelpers;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-import org.eclipse.xtext.xbase.lib.Functions.Function1;
-import org.eclipse.xtext.xbase.lib.IterableExtensions;
-
-@Singleton
-@SuppressWarnings("all")
-public class ActorClassGen extends GenericActorClassGenerator {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private CExtensions _cExtensions;
-
- @Inject
- private RoomExtensions _roomExtensions;
-
- @Inject
- private ProcedureHelpers _procedureHelpers;
-
- @Inject
- private StateMachineGen _stateMachineGen;
-
- @Inject
- private ILogger logger;
-
- public void doGenerate(final Root root) {
- EList<ExpandedActorClass> _xpActorClasses = root.getXpActorClasses();
- for (final ExpandedActorClass xpac : _xpActorClasses) {
- {
- ActorClass _actorClass = xpac.getActorClass();
- String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(_actorClass);
- ActorClass _actorClass_1 = xpac.getActorClass();
- String _path = this._roomExtensions.getPath(_actorClass_1);
- String path = (_generationTargetPath + _path);
- ActorClass _actorClass_2 = xpac.getActorClass();
- String _cHeaderFileName = this._cExtensions.getCHeaderFileName(_actorClass_2);
- String _plus = ("generating ActorClass header \'" + _cHeaderFileName);
- String _plus_1 = (_plus + "\' in \'");
- String _plus_2 = (_plus_1 + path);
- String _plus_3 = (_plus_2 + "\'");
- this.logger.logInfo(_plus_3);
- this.fileAccess.setOutputPath(path);
- ActorClass _actorClass_3 = xpac.getActorClass();
- String _cHeaderFileName_1 = this._cExtensions.getCHeaderFileName(_actorClass_3);
- ActorClass _actorClass_4 = xpac.getActorClass();
- CharSequence _generateHeaderFile = this.generateHeaderFile(root, xpac, _actorClass_4);
- this.fileAccess.generateFile(_cHeaderFileName_1, _generateHeaderFile);
- boolean _hasBehaviorAnnotation = this.hasBehaviorAnnotation(xpac, "BehaviorManual");
- if (_hasBehaviorAnnotation) {
- ActorClass _actorClass_5 = xpac.getActorClass();
- String _name = _actorClass_5.getName();
- String _plus_4 = ("omitting ActorClass source for \'" + _name);
- String _plus_5 = (_plus_4 + "\' since @BehaviorManual is specified");
- this.logger.logInfo(_plus_5);
- } else {
- ActorClass _actorClass_6 = xpac.getActorClass();
- String _cSourceFileName = this._cExtensions.getCSourceFileName(_actorClass_6);
- String _plus_6 = ("generating ActorClass source \'" + _cSourceFileName);
- String _plus_7 = (_plus_6 + "\' in \'");
- String _plus_8 = (_plus_7 + path);
- String _plus_9 = (_plus_8 + "\'");
- this.logger.logInfo(_plus_9);
- this.fileAccess.setOutputPath(path);
- ActorClass _actorClass_7 = xpac.getActorClass();
- String _cSourceFileName_1 = this._cExtensions.getCSourceFileName(_actorClass_7);
- ActorClass _actorClass_8 = xpac.getActorClass();
- CharSequence _generateSourceFile = this.generateSourceFile(root, xpac, _actorClass_8);
- this.fileAccess.generateFile(_cSourceFileName_1, _generateSourceFile);
- }
- }
- }
- }
-
- private boolean hasBehaviorAnnotation(final ExpandedActorClass xpac, final String annotation) {
- ActorClass _actorClass = xpac.getActorClass();
- EList<Annotation> _behaviorAnnotations = _actorClass.getBehaviorAnnotations();
- boolean _notEquals = (!Objects.equal(_behaviorAnnotations, null));
- if (_notEquals) {
- ActorClass _actorClass_1 = xpac.getActorClass();
- EList<Annotation> _behaviorAnnotations_1 = _actorClass_1.getBehaviorAnnotations();
- final Function1<Annotation,Boolean> _function = new Function1<Annotation,Boolean>() {
- public Boolean apply(final Annotation e) {
- String _name = e.getName();
- boolean _equals = Objects.equal(_name, annotation);
- return Boolean.valueOf(_equals);
- }
- };
- Annotation _findFirst = IterableExtensions.<Annotation>findFirst(_behaviorAnnotations_1, _function);
- boolean _notEquals_1 = (!Objects.equal(_findFirst, null));
- if (_notEquals_1) {
- return true;
- }
- }
- return false;
- }
-
- private CharSequence generateHeaderFile(final Root root, final ExpandedActorClass xpac, final ActorClass ac) {
- CharSequence _xblockexpression = null;
- {
- List<Port> _allEndPorts = this._roomExtensions.getAllEndPorts(ac);
- final Function1<Port,Boolean> _function = new Function1<Port,Boolean>() {
- public Boolean apply(final Port p) {
- GeneralProtocolClass _protocol = p.getProtocol();
- CommunicationType _commType = ((ProtocolClass) _protocol).getCommType();
- boolean _equals = Objects.equal(_commType, CommunicationType.EVENT_DRIVEN);
- return Boolean.valueOf(_equals);
- }
- };
- Iterable<Port> eventPorts = IterableExtensions.<Port>filter(_allEndPorts, _function);
- List<Port> _allEndPorts_1 = this._roomExtensions.getAllEndPorts(ac);
- final Function1<Port,Boolean> _function_1 = new Function1<Port,Boolean>() {
- public Boolean apply(final Port p) {
- boolean _and = false;
- GeneralProtocolClass _protocol = p.getProtocol();
- CommunicationType _commType = ((ProtocolClass) _protocol).getCommType();
- boolean _equals = Objects.equal(_commType, CommunicationType.DATA_DRIVEN);
- if (!_equals) {
- _and = false;
- } else {
- boolean _isConjugated = p.isConjugated();
- _and = (_equals && _isConjugated);
- }
- return Boolean.valueOf(_and);
- }
- };
- Iterable<Port> sendPorts = IterableExtensions.<Port>filter(_allEndPorts_1, _function_1);
- List<Port> _allEndPorts_2 = this._roomExtensions.getAllEndPorts(ac);
- final Function1<Port,Boolean> _function_2 = new Function1<Port,Boolean>() {
- public Boolean apply(final Port p) {
- boolean _and = false;
- GeneralProtocolClass _protocol = p.getProtocol();
- CommunicationType _commType = ((ProtocolClass) _protocol).getCommType();
- boolean _equals = Objects.equal(_commType, CommunicationType.DATA_DRIVEN);
- if (!_equals) {
- _and = false;
- } else {
- boolean _isConjugated = p.isConjugated();
- boolean _not = (!_isConjugated);
- _and = (_equals && _not);
- }
- return Boolean.valueOf(_and);
- }
- };
- Iterable<Port> recvPorts = IterableExtensions.<Port>filter(_allEndPorts_2, _function_2);
- ActorCommunicationType _commType = ac.getCommType();
- boolean dataDriven = Objects.equal(_commType, ActorCommunicationType.DATA_DRIVEN);
- ActorCommunicationType _commType_1 = ac.getCommType();
- boolean async = Objects.equal(_commType_1, ActorCommunicationType.ASYNCHRONOUS);
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @author generated by eTrice");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* Header File of ActorClass ");
- String _name = ac.getName();
- _builder.append(_name, " ");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("* ");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.newLine();
- String _name_1 = ac.getName();
- CharSequence _generateIncludeGuardBegin = this._cExtensions.generateIncludeGuardBegin(_name_1);
- _builder.append(_generateIncludeGuardBegin, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("#include \"etDatatypes.h\"");
- _builder.newLine();
- _builder.append("#include \"messaging/etMessage.h\"");
- _builder.newLine();
- _builder.newLine();
- {
- HashSet<DataClass> _referencedDataClasses = root.getReferencedDataClasses(ac);
- for(final DataClass dataClass : _referencedDataClasses) {
- _builder.append("#include \"");
- String _name_2 = dataClass.getName();
- _builder.append(_name_2, "");
- _builder.append(".h\"");
- _builder.newLineIfNotEmpty();
- }
- }
- {
- EList<ProtocolClass> _referencedProtocolClasses = root.getReferencedProtocolClasses(ac);
- for(final ProtocolClass pc : _referencedProtocolClasses) {
- _builder.append("#include \"");
- String _name_3 = pc.getName();
- _builder.append(_name_3, "");
- _builder.append(".h\"");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(ac, 1);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("typedef struct ");
- String _name_4 = ac.getName();
- _builder.append(_name_4, "");
- _builder.append(" ");
- String _name_5 = ac.getName();
- _builder.append(_name_5, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/* const part of ActorClass (ROM) */");
- _builder.newLine();
- {
- boolean _and = false;
- boolean _and_1 = false;
- boolean _and_2 = false;
- boolean _isEmpty = IterableExtensions.isEmpty(eventPorts);
- if (!_isEmpty) {
- _and_2 = false;
- } else {
- boolean _isEmpty_1 = IterableExtensions.isEmpty(recvPorts);
- _and_2 = (_isEmpty && _isEmpty_1);
- }
- if (!_and_2) {
- _and_1 = false;
- } else {
- List<SAPRef> _allSAPs = this._roomExtensions.getAllSAPs(ac);
- boolean _isEmpty_2 = _allSAPs.isEmpty();
- _and_1 = (_and_2 && _isEmpty_2);
- }
- if (!_and_1) {
- _and = false;
- } else {
- List<ServiceImplementation> _allServiceImplementations = this._roomExtensions.getAllServiceImplementations(ac);
- boolean _isEmpty_3 = _allServiceImplementations.isEmpty();
- _and = (_and_1 && _isEmpty_3);
- }
- if (_and) {
- _builder.append("/* this actor class has no ports and thus no constant data */");
- _builder.newLine();
- } else {
- _builder.append("typedef struct ");
- String _name_6 = ac.getName();
- _builder.append(_name_6, "");
- _builder.append("_const {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("/* simple ports */");
- _builder.newLine();
- {
- for(final Port ep : eventPorts) {
- {
- int _multiplicity = ep.getMultiplicity();
- boolean _equals = (_multiplicity == 1);
- if (_equals) {
- _builder.append("\t");
- _builder.append("const ");
- String _portClassName = this._roomExtensions.getPortClassName(ep);
- _builder.append(_portClassName, " ");
- _builder.append(" ");
- String _name_7 = ep.getName();
- _builder.append(_name_7, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("/* data receive ports */");
- _builder.newLine();
- {
- for(final Port ep_1 : recvPorts) {
- {
- int _multiplicity_1 = ep_1.getMultiplicity();
- boolean _equals_1 = (_multiplicity_1 == 1);
- if (_equals_1) {
- _builder.append("\t");
- _builder.append("const ");
- String _portClassName_1 = this._roomExtensions.getPortClassName(ep_1);
- _builder.append(_portClassName_1, " ");
- _builder.append(" ");
- String _name_8 = ep_1.getName();
- _builder.append(_name_8, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.newLine();
- _builder.append("\t");
- _builder.append("/* saps */");
- _builder.newLine();
- {
- List<SAPRef> _allSAPs_1 = this._roomExtensions.getAllSAPs(ac);
- for(final SAPRef sap : _allSAPs_1) {
- _builder.append("\t");
- _builder.append("const ");
- String _portClassName_2 = this._roomExtensions.getPortClassName(sap);
- _builder.append(_portClassName_2, " ");
- _builder.append(" ");
- String _name_9 = sap.getName();
- _builder.append(_name_9, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("/* replicated ports */");
- _builder.newLine();
- {
- List<Port> _allEndPorts_3 = this._roomExtensions.getAllEndPorts(ac);
- for(final Port ep_2 : _allEndPorts_3) {
- {
- int _multiplicity_2 = ep_2.getMultiplicity();
- boolean _notEquals = (_multiplicity_2 != 1);
- if (_notEquals) {
- _builder.append("\t");
- _builder.append("const etReplPort ");
- String _name_10 = ep_2.getName();
- _builder.append(_name_10, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("/* services */");
- _builder.newLine();
- {
- List<ServiceImplementation> _allServiceImplementations_1 = this._roomExtensions.getAllServiceImplementations(ac);
- for(final ServiceImplementation svc : _allServiceImplementations_1) {
- _builder.append("\t");
- _builder.append("const etReplPort ");
- SPPRef _spp = svc.getSpp();
- String _name_11 = _spp.getName();
- _builder.append(_name_11, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("} ");
- String _name_12 = ac.getName();
- _builder.append(_name_12, "");
- _builder.append("_const;");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- {
- StateGraph _stateMachine = xpac.getStateMachine();
- boolean _isEmpty_4 = RoomHelpers.isEmpty(_stateMachine);
- boolean _not = (!_isEmpty_4);
- if (_not) {
- _builder.newLine();
- CharSequence _genHeaderConstants = this._stateMachineGen.genHeaderConstants(xpac);
- _builder.append(_genHeaderConstants, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _builder.append("/* variable part of ActorClass (RAM) */");
- _builder.newLine();
- _builder.append("struct ");
- String _name_13 = ac.getName();
- _builder.append(_name_13, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- {
- boolean _and_3 = false;
- boolean _and_4 = false;
- boolean _and_5 = false;
- boolean _isEmpty_5 = IterableExtensions.isEmpty(eventPorts);
- if (!_isEmpty_5) {
- _and_5 = false;
- } else {
- boolean _isEmpty_6 = IterableExtensions.isEmpty(recvPorts);
- _and_5 = (_isEmpty_5 && _isEmpty_6);
- }
- if (!_and_5) {
- _and_4 = false;
- } else {
- List<SAPRef> _allSAPs_2 = this._roomExtensions.getAllSAPs(ac);
- boolean _isEmpty_7 = _allSAPs_2.isEmpty();
- _and_4 = (_and_5 && _isEmpty_7);
- }
- if (!_and_4) {
- _and_3 = false;
- } else {
- List<ServiceImplementation> _allServiceImplementations_2 = this._roomExtensions.getAllServiceImplementations(ac);
- boolean _isEmpty_8 = _allServiceImplementations_2.isEmpty();
- _and_3 = (_and_4 && _isEmpty_8);
- }
- boolean _not_1 = (!_and_3);
- if (_not_1) {
- _builder.append("\t");
- _builder.append("const ");
- String _name_14 = ac.getName();
- _builder.append(_name_14, " ");
- _builder.append("_const* const constData;");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.newLine();
- }
- }
- _builder.append("\t");
- _builder.append("/* data send ports */");
- _builder.newLine();
- {
- for(final Port ep_3 : sendPorts) {
- {
- int _multiplicity_3 = ep_3.getMultiplicity();
- boolean _equals_2 = (_multiplicity_3 == 1);
- if (_equals_2) {
- _builder.append("\t");
- String _portClassName_3 = this._roomExtensions.getPortClassName(ep_3);
- _builder.append(_portClassName_3, " ");
- _builder.append(" ");
- String _name_15 = ep_3.getName();
- _builder.append(_name_15, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.newLine();
- _builder.append("\t");
- List<Attribute> _allAttributes = this._roomExtensions.getAllAttributes(ac);
- CharSequence _attributes = this._procedureHelpers.attributes(_allAttributes);
- _builder.append(_attributes, " ");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- {
- List<Attribute> _allAttributes_1 = this._roomExtensions.getAllAttributes(ac);
- for(final Attribute a : _allAttributes_1) {
- {
- String _defaultValueLiteral = a.getDefaultValueLiteral();
- boolean _notEquals_1 = (!Objects.equal(_defaultValueLiteral, null));
- if (_notEquals_1) {
- String _name_16 = ac.getName();
- String _plus = (_name_16 + " ");
- String _name_17 = a.getName();
- String _plus_1 = (_plus + _name_17);
- String _plus_2 = (_plus_1 + ": Attribute initialization not supported in C");
- this.logger.logInfo(_plus_2);
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.append("\t");
- _builder.newLine();
- {
- StateGraph _stateMachine_1 = xpac.getStateMachine();
- boolean _isEmpty_9 = RoomHelpers.isEmpty(_stateMachine_1);
- boolean _not_2 = (!_isEmpty_9);
- if (_not_2) {
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- CharSequence _genDataMembers = this._stateMachineGen.genDataMembers(xpac);
- _builder.append(_genDataMembers, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("};");
- _builder.newLine();
- _builder.newLine();
- _builder.append("void ");
- String _name_18 = ac.getName();
- _builder.append(_name_18, "");
- _builder.append("_init(");
- String _name_19 = ac.getName();
- _builder.append(_name_19, "");
- _builder.append("* self);");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("void ");
- String _name_20 = ac.getName();
- _builder.append(_name_20, "");
- _builder.append("_receiveMessage(void* self, void* ifitem, const etMessage* msg);");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- {
- boolean _or = false;
- if (dataDriven) {
- _or = true;
- } else {
- _or = (dataDriven || async);
- }
- if (_or) {
- _builder.append("void ");
- String _name_21 = ac.getName();
- _builder.append(_name_21, "");
- _builder.append("_execute(");
- String _name_22 = ac.getName();
- _builder.append(_name_22, "");
- _builder.append("* self);");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- EList<StandardOperation> _operations = ac.getOperations();
- String _name_23 = ac.getName();
- CharSequence _operationsDeclaration = this._procedureHelpers.operationsDeclaration(_operations, _name_23);
- _builder.append(_operationsDeclaration, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- CharSequence _userCode_1 = this._procedureHelpers.userCode(ac, 2);
- _builder.append(_userCode_1, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- String _name_24 = ac.getName();
- CharSequence _generateIncludeGuardEnd = this._cExtensions.generateIncludeGuardEnd(_name_24);
- _builder.append(_generateIncludeGuardEnd, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private CharSequence generateSourceFile(final Root root, final ExpandedActorClass xpac, final ActorClass ac) {
- CharSequence _xblockexpression = null;
- {
- ActorCommunicationType _commType = ac.getCommType();
- boolean async = Objects.equal(_commType, ActorCommunicationType.ASYNCHRONOUS);
- ActorCommunicationType _commType_1 = ac.getCommType();
- boolean eventDriven = Objects.equal(_commType_1, ActorCommunicationType.EVENT_DRIVEN);
- ActorCommunicationType _commType_2 = ac.getCommType();
- boolean dataDriven = Objects.equal(_commType_2, ActorCommunicationType.DATA_DRIVEN);
- boolean _or = false;
- if (async) {
- _or = true;
- } else {
- _or = (async || eventDriven);
- }
- boolean handleEvents = _or;
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @author generated by eTrice");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* Source File of ActorClass ");
- String _name = ac.getName();
- _builder.append(_name, " ");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("* ");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.newLine();
- _builder.append("#include \"");
- String _cHeaderFileName = this._cExtensions.getCHeaderFileName(ac);
- _builder.append(_cHeaderFileName, "");
- _builder.append("\"");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("#include \"modelbase/etActor.h\"");
- _builder.newLine();
- _builder.append("#include \"debugging/etLogger.h\"");
- _builder.newLine();
- _builder.append("#include \"debugging/etMSCLogger.h\"");
- _builder.newLine();
- _builder.append("#include \"etUnit/etUnit.h\"");
- _builder.newLine();
- _builder.append("#include \"platform/etMemory.h\"");
- _builder.newLine();
- _builder.newLine();
- {
- EList<ProtocolClass> _referencedProtocolClasses = root.getReferencedProtocolClasses(ac);
- for(final ProtocolClass pc : _referencedProtocolClasses) {
- _builder.append("#include \"");
- String _cHeaderFileName_1 = this._cExtensions.getCHeaderFileName(pc);
- _builder.append(_cHeaderFileName_1, "");
- _builder.append("\"");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(ac, 3);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/* interface item IDs */");
- _builder.newLine();
- String _genInterfaceItemConstants = this.genInterfaceItemConstants(xpac, ac);
- _builder.append(_genInterfaceItemConstants, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- {
- StateGraph _stateMachine = xpac.getStateMachine();
- boolean _isEmpty = RoomHelpers.isEmpty(_stateMachine);
- boolean _not = (!_isEmpty);
- if (_not) {
- CharSequence _genStateMachine = this._stateMachineGen.genStateMachine(xpac);
- _builder.append(_genStateMachine, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _builder.append("void ");
- String _name_1 = ac.getName();
- _builder.append(_name_1, "");
- _builder.append("_init(");
- String _name_2 = ac.getName();
- _builder.append(_name_2, "");
- _builder.append("* self){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
- String _name_3 = ac.getName();
- _builder.append(_name_3, " ");
- _builder.append("\", \"init\")");
- _builder.newLineIfNotEmpty();
- {
- StateGraph _stateMachine_1 = xpac.getStateMachine();
- boolean _isEmpty_1 = RoomHelpers.isEmpty(_stateMachine_1);
- boolean _not_1 = (!_isEmpty_1);
- if (_not_1) {
- _builder.append("\t");
- CharSequence _genInitialization = this._stateMachineGen.genInitialization(xpac);
- _builder.append(_genInitialization, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.newLine();
- _builder.append("void ");
- String _name_4 = ac.getName();
- _builder.append(_name_4, "");
- _builder.append("_receiveMessage(void* self, void* ifitem, const etMessage* msg){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
- String _name_5 = ac.getName();
- _builder.append(_name_5, " ");
- _builder.append("\", \"_receiveMessage\")");
- _builder.newLineIfNotEmpty();
- {
- StateGraph _stateMachine_2 = xpac.getStateMachine();
- boolean _isEmpty_2 = RoomHelpers.isEmpty(_stateMachine_2);
- boolean _not_2 = (!_isEmpty_2);
- if (_not_2) {
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("receiveEvent(self");
- {
- if (handleEvents) {
- _builder.append(", (etPort*)ifitem, msg->evtID, (void*)(((char*)msg)+MEM_CEIL(sizeof(etMessage)))");
- }
- }
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- {
- boolean _or_1 = false;
- if (dataDriven) {
- _or_1 = true;
- } else {
- _or_1 = (dataDriven || async);
- }
- if (_or_1) {
- _builder.append("void ");
- String _name_6 = ac.getName();
- _builder.append(_name_6, "");
- _builder.append("_execute(");
- String _name_7 = ac.getName();
- _builder.append(_name_7, "");
- _builder.append("* self) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
- String _name_8 = ac.getName();
- _builder.append(_name_8, " ");
- _builder.append("\", \"_execute\")");
- _builder.newLineIfNotEmpty();
- {
- StateGraph _stateMachine_3 = xpac.getStateMachine();
- boolean _isEmpty_3 = RoomHelpers.isEmpty(_stateMachine_3);
- boolean _not_3 = (!_isEmpty_3);
- if (_not_3) {
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("receiveEvent(self");
- {
- if (handleEvents) {
- _builder.append(", NULL, 0, NULL");
- }
- }
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- }
- }
- _builder.newLine();
- CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(ac);
- _builder.append(_operationsImplementation, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-}
+package org.eclipse.etrice.generator.c.gen;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.HashSet;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.ActorCommunicationType;
+import org.eclipse.etrice.core.room.Annotation;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.CommunicationType;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.GeneralProtocolClass;
+import org.eclipse.etrice.core.room.Port;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.SAPRef;
+import org.eclipse.etrice.core.room.SPPRef;
+import org.eclipse.etrice.core.room.ServiceImplementation;
+import org.eclipse.etrice.core.room.StandardOperation;
+import org.eclipse.etrice.core.room.StateGraph;
+import org.eclipse.etrice.core.room.util.RoomHelpers;
+import org.eclipse.etrice.generator.c.gen.CExtensions;
+import org.eclipse.etrice.generator.c.gen.StateMachineGen;
+import org.eclipse.etrice.generator.generic.GenericActorClassGenerator;
+import org.eclipse.etrice.generator.generic.ProcedureHelpers;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class ActorClassGen extends GenericActorClassGenerator {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private CExtensions _cExtensions;
+
+ @Inject
+ private RoomExtensions _roomExtensions;
+
+ @Inject
+ private ProcedureHelpers _procedureHelpers;
+
+ @Inject
+ private StateMachineGen _stateMachineGen;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root) {
+ EList<ExpandedActorClass> _xpActorClasses = root.getXpActorClasses();
+ for (final ExpandedActorClass xpac : _xpActorClasses) {
+ {
+ ActorClass _actorClass = xpac.getActorClass();
+ String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(_actorClass);
+ ActorClass _actorClass_1 = xpac.getActorClass();
+ String _path = this._roomExtensions.getPath(_actorClass_1);
+ String path = (_generationTargetPath + _path);
+ ActorClass _actorClass_2 = xpac.getActorClass();
+ String _cHeaderFileName = this._cExtensions.getCHeaderFileName(_actorClass_2);
+ String _plus = ("generating ActorClass header \'" + _cHeaderFileName);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ this.fileAccess.setOutputPath(path);
+ ActorClass _actorClass_3 = xpac.getActorClass();
+ String _cHeaderFileName_1 = this._cExtensions.getCHeaderFileName(_actorClass_3);
+ ActorClass _actorClass_4 = xpac.getActorClass();
+ CharSequence _generateHeaderFile = this.generateHeaderFile(root, xpac, _actorClass_4);
+ this.fileAccess.generateFile(_cHeaderFileName_1, _generateHeaderFile);
+ boolean _hasBehaviorAnnotation = this.hasBehaviorAnnotation(xpac, "BehaviorManual");
+ if (_hasBehaviorAnnotation) {
+ ActorClass _actorClass_5 = xpac.getActorClass();
+ String _name = _actorClass_5.getName();
+ String _plus_4 = ("omitting ActorClass source for \'" + _name);
+ String _plus_5 = (_plus_4 + "\' since @BehaviorManual is specified");
+ this.logger.logInfo(_plus_5);
+ } else {
+ ActorClass _actorClass_6 = xpac.getActorClass();
+ String _cSourceFileName = this._cExtensions.getCSourceFileName(_actorClass_6);
+ String _plus_6 = ("generating ActorClass source \'" + _cSourceFileName);
+ String _plus_7 = (_plus_6 + "\' in \'");
+ String _plus_8 = (_plus_7 + path);
+ String _plus_9 = (_plus_8 + "\'");
+ this.logger.logInfo(_plus_9);
+ this.fileAccess.setOutputPath(path);
+ ActorClass _actorClass_7 = xpac.getActorClass();
+ String _cSourceFileName_1 = this._cExtensions.getCSourceFileName(_actorClass_7);
+ ActorClass _actorClass_8 = xpac.getActorClass();
+ CharSequence _generateSourceFile = this.generateSourceFile(root, xpac, _actorClass_8);
+ this.fileAccess.generateFile(_cSourceFileName_1, _generateSourceFile);
+ }
+ }
+ }
+ }
+
+ private boolean hasBehaviorAnnotation(final ExpandedActorClass xpac, final String annotation) {
+ ActorClass _actorClass = xpac.getActorClass();
+ EList<Annotation> _behaviorAnnotations = _actorClass.getBehaviorAnnotations();
+ boolean _notEquals = (!Objects.equal(_behaviorAnnotations, null));
+ if (_notEquals) {
+ ActorClass _actorClass_1 = xpac.getActorClass();
+ EList<Annotation> _behaviorAnnotations_1 = _actorClass_1.getBehaviorAnnotations();
+ final Function1<Annotation,Boolean> _function = new Function1<Annotation,Boolean>() {
+ public Boolean apply(final Annotation e) {
+ String _name = e.getName();
+ boolean _equals = Objects.equal(_name, annotation);
+ return Boolean.valueOf(_equals);
+ }
+ };
+ Annotation _findFirst = IterableExtensions.<Annotation>findFirst(_behaviorAnnotations_1, _function);
+ boolean _notEquals_1 = (!Objects.equal(_findFirst, null));
+ if (_notEquals_1) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private CharSequence generateHeaderFile(final Root root, final ExpandedActorClass xpac, final ActorClass ac) {
+ CharSequence _xblockexpression = null;
+ {
+ List<Port> _allEndPorts = this._roomExtensions.getAllEndPorts(ac);
+ final Function1<Port,Boolean> _function = new Function1<Port,Boolean>() {
+ public Boolean apply(final Port p) {
+ GeneralProtocolClass _protocol = p.getProtocol();
+ CommunicationType _commType = ((ProtocolClass) _protocol).getCommType();
+ boolean _equals = Objects.equal(_commType, CommunicationType.EVENT_DRIVEN);
+ return Boolean.valueOf(_equals);
+ }
+ };
+ Iterable<Port> eventPorts = IterableExtensions.<Port>filter(_allEndPorts, _function);
+ List<Port> _allEndPorts_1 = this._roomExtensions.getAllEndPorts(ac);
+ final Function1<Port,Boolean> _function_1 = new Function1<Port,Boolean>() {
+ public Boolean apply(final Port p) {
+ boolean _and = false;
+ GeneralProtocolClass _protocol = p.getProtocol();
+ CommunicationType _commType = ((ProtocolClass) _protocol).getCommType();
+ boolean _equals = Objects.equal(_commType, CommunicationType.DATA_DRIVEN);
+ if (!_equals) {
+ _and = false;
+ } else {
+ boolean _isConjugated = p.isConjugated();
+ _and = (_equals && _isConjugated);
+ }
+ return Boolean.valueOf(_and);
+ }
+ };
+ Iterable<Port> sendPorts = IterableExtensions.<Port>filter(_allEndPorts_1, _function_1);
+ List<Port> _allEndPorts_2 = this._roomExtensions.getAllEndPorts(ac);
+ final Function1<Port,Boolean> _function_2 = new Function1<Port,Boolean>() {
+ public Boolean apply(final Port p) {
+ boolean _and = false;
+ GeneralProtocolClass _protocol = p.getProtocol();
+ CommunicationType _commType = ((ProtocolClass) _protocol).getCommType();
+ boolean _equals = Objects.equal(_commType, CommunicationType.DATA_DRIVEN);
+ if (!_equals) {
+ _and = false;
+ } else {
+ boolean _isConjugated = p.isConjugated();
+ boolean _not = (!_isConjugated);
+ _and = (_equals && _not);
+ }
+ return Boolean.valueOf(_and);
+ }
+ };
+ Iterable<Port> recvPorts = IterableExtensions.<Port>filter(_allEndPorts_2, _function_2);
+ ActorCommunicationType _commType = ac.getCommType();
+ boolean dataDriven = Objects.equal(_commType, ActorCommunicationType.DATA_DRIVEN);
+ ActorCommunicationType _commType_1 = ac.getCommType();
+ boolean async = Objects.equal(_commType_1, ActorCommunicationType.ASYNCHRONOUS);
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @author generated by eTrice");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* Header File of ActorClass ");
+ String _name = ac.getName();
+ _builder.append(_name, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("* ");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.newLine();
+ String _name_1 = ac.getName();
+ CharSequence _generateIncludeGuardBegin = this._cExtensions.generateIncludeGuardBegin(_name_1);
+ _builder.append(_generateIncludeGuardBegin, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("#include \"etDatatypes.h\"");
+ _builder.newLine();
+ _builder.append("#include \"messaging/etMessage.h\"");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ HashSet<DataClass> _referencedDataClasses = root.getReferencedDataClasses(ac);
+ for(final DataClass dataClass : _referencedDataClasses) {
+ _builder.append("#include \"");
+ String _name_2 = dataClass.getName();
+ _builder.append(_name_2, "");
+ _builder.append(".h\"");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ {
+ EList<ProtocolClass> _referencedProtocolClasses = root.getReferencedProtocolClasses(ac);
+ for(final ProtocolClass pc : _referencedProtocolClasses) {
+ _builder.append("#include \"");
+ String _name_3 = pc.getName();
+ _builder.append(_name_3, "");
+ _builder.append(".h\"");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(ac, 1);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("typedef struct ");
+ String _name_4 = ac.getName();
+ _builder.append(_name_4, "");
+ _builder.append(" ");
+ String _name_5 = ac.getName();
+ _builder.append(_name_5, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/* const part of ActorClass (ROM) */");
+ _builder.newLine();
+ {
+ boolean _and = false;
+ boolean _and_1 = false;
+ boolean _and_2 = false;
+ boolean _isEmpty = IterableExtensions.isEmpty(eventPorts);
+ if (!_isEmpty) {
+ _and_2 = false;
+ } else {
+ boolean _isEmpty_1 = IterableExtensions.isEmpty(recvPorts);
+ _and_2 = (_isEmpty && _isEmpty_1);
+ }
+ if (!_and_2) {
+ _and_1 = false;
+ } else {
+ List<SAPRef> _allSAPs = this._roomExtensions.getAllSAPs(ac);
+ boolean _isEmpty_2 = _allSAPs.isEmpty();
+ _and_1 = (_and_2 && _isEmpty_2);
+ }
+ if (!_and_1) {
+ _and = false;
+ } else {
+ List<ServiceImplementation> _allServiceImplementations = this._roomExtensions.getAllServiceImplementations(ac);
+ boolean _isEmpty_3 = _allServiceImplementations.isEmpty();
+ _and = (_and_1 && _isEmpty_3);
+ }
+ if (_and) {
+ _builder.append("/* this actor class has no ports and thus no constant data */");
+ _builder.newLine();
+ } else {
+ _builder.append("typedef struct ");
+ String _name_6 = ac.getName();
+ _builder.append(_name_6, "");
+ _builder.append("_const {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("/* simple ports */");
+ _builder.newLine();
+ {
+ for(final Port ep : eventPorts) {
+ {
+ int _multiplicity = ep.getMultiplicity();
+ boolean _equals = (_multiplicity == 1);
+ if (_equals) {
+ _builder.append("\t");
+ _builder.append("const ");
+ String _portClassName = this._roomExtensions.getPortClassName(ep);
+ _builder.append(_portClassName, " ");
+ _builder.append(" ");
+ String _name_7 = ep.getName();
+ _builder.append(_name_7, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("/* data receive ports */");
+ _builder.newLine();
+ {
+ for(final Port ep_1 : recvPorts) {
+ {
+ int _multiplicity_1 = ep_1.getMultiplicity();
+ boolean _equals_1 = (_multiplicity_1 == 1);
+ if (_equals_1) {
+ _builder.append("\t");
+ _builder.append("const ");
+ String _portClassName_1 = this._roomExtensions.getPortClassName(ep_1);
+ _builder.append(_portClassName_1, " ");
+ _builder.append(" ");
+ String _name_8 = ep_1.getName();
+ _builder.append(_name_8, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("/* saps */");
+ _builder.newLine();
+ {
+ List<SAPRef> _allSAPs_1 = this._roomExtensions.getAllSAPs(ac);
+ for(final SAPRef sap : _allSAPs_1) {
+ _builder.append("\t");
+ _builder.append("const ");
+ String _portClassName_2 = this._roomExtensions.getPortClassName(sap);
+ _builder.append(_portClassName_2, " ");
+ _builder.append(" ");
+ String _name_9 = sap.getName();
+ _builder.append(_name_9, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("/* replicated ports */");
+ _builder.newLine();
+ {
+ List<Port> _allEndPorts_3 = this._roomExtensions.getAllEndPorts(ac);
+ for(final Port ep_2 : _allEndPorts_3) {
+ {
+ int _multiplicity_2 = ep_2.getMultiplicity();
+ boolean _notEquals = (_multiplicity_2 != 1);
+ if (_notEquals) {
+ _builder.append("\t");
+ _builder.append("const etReplPort ");
+ String _name_10 = ep_2.getName();
+ _builder.append(_name_10, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("/* services */");
+ _builder.newLine();
+ {
+ List<ServiceImplementation> _allServiceImplementations_1 = this._roomExtensions.getAllServiceImplementations(ac);
+ for(final ServiceImplementation svc : _allServiceImplementations_1) {
+ _builder.append("\t");
+ _builder.append("const etReplPort ");
+ SPPRef _spp = svc.getSpp();
+ String _name_11 = _spp.getName();
+ _builder.append(_name_11, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("} ");
+ String _name_12 = ac.getName();
+ _builder.append(_name_12, "");
+ _builder.append("_const;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ {
+ StateGraph _stateMachine = xpac.getStateMachine();
+ boolean _isEmpty_4 = RoomHelpers.isEmpty(_stateMachine);
+ boolean _not = (!_isEmpty_4);
+ if (_not) {
+ _builder.newLine();
+ CharSequence _genHeaderConstants = this._stateMachineGen.genHeaderConstants(xpac);
+ _builder.append(_genHeaderConstants, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.append("/* variable part of ActorClass (RAM) */");
+ _builder.newLine();
+ _builder.append("struct ");
+ String _name_13 = ac.getName();
+ _builder.append(_name_13, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _and_3 = false;
+ boolean _and_4 = false;
+ boolean _and_5 = false;
+ boolean _isEmpty_5 = IterableExtensions.isEmpty(eventPorts);
+ if (!_isEmpty_5) {
+ _and_5 = false;
+ } else {
+ boolean _isEmpty_6 = IterableExtensions.isEmpty(recvPorts);
+ _and_5 = (_isEmpty_5 && _isEmpty_6);
+ }
+ if (!_and_5) {
+ _and_4 = false;
+ } else {
+ List<SAPRef> _allSAPs_2 = this._roomExtensions.getAllSAPs(ac);
+ boolean _isEmpty_7 = _allSAPs_2.isEmpty();
+ _and_4 = (_and_5 && _isEmpty_7);
+ }
+ if (!_and_4) {
+ _and_3 = false;
+ } else {
+ List<ServiceImplementation> _allServiceImplementations_2 = this._roomExtensions.getAllServiceImplementations(ac);
+ boolean _isEmpty_8 = _allServiceImplementations_2.isEmpty();
+ _and_3 = (_and_4 && _isEmpty_8);
+ }
+ boolean _not_1 = (!_and_3);
+ if (_not_1) {
+ _builder.append("\t");
+ _builder.append("const ");
+ String _name_14 = ac.getName();
+ _builder.append(_name_14, " ");
+ _builder.append("_const* const constData;");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("/* data send ports */");
+ _builder.newLine();
+ {
+ for(final Port ep_3 : sendPorts) {
+ {
+ int _multiplicity_3 = ep_3.getMultiplicity();
+ boolean _equals_2 = (_multiplicity_3 == 1);
+ if (_equals_2) {
+ _builder.append("\t");
+ String _portClassName_3 = this._roomExtensions.getPortClassName(ep_3);
+ _builder.append(_portClassName_3, " ");
+ _builder.append(" ");
+ String _name_15 = ep_3.getName();
+ _builder.append(_name_15, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ _builder.append("\t");
+ List<Attribute> _allAttributes = this._roomExtensions.getAllAttributes(ac);
+ CharSequence _attributes = this._procedureHelpers.attributes(_allAttributes);
+ _builder.append(_attributes, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ List<Attribute> _allAttributes_1 = this._roomExtensions.getAllAttributes(ac);
+ for(final Attribute a : _allAttributes_1) {
+ {
+ String _defaultValueLiteral = a.getDefaultValueLiteral();
+ boolean _notEquals_1 = (!Objects.equal(_defaultValueLiteral, null));
+ if (_notEquals_1) {
+ String _name_16 = ac.getName();
+ String _plus = (_name_16 + " ");
+ String _name_17 = a.getName();
+ String _plus_1 = (_plus + _name_17);
+ String _plus_2 = (_plus_1 + ": Attribute initialization not supported in C");
+ this.logger.logInfo(_plus_2);
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ {
+ StateGraph _stateMachine_1 = xpac.getStateMachine();
+ boolean _isEmpty_9 = RoomHelpers.isEmpty(_stateMachine_1);
+ boolean _not_2 = (!_isEmpty_9);
+ if (_not_2) {
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ CharSequence _genDataMembers = this._stateMachineGen.genDataMembers(xpac);
+ _builder.append(_genDataMembers, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("};");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("void ");
+ String _name_18 = ac.getName();
+ _builder.append(_name_18, "");
+ _builder.append("_init(");
+ String _name_19 = ac.getName();
+ _builder.append(_name_19, "");
+ _builder.append("* self);");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("void ");
+ String _name_20 = ac.getName();
+ _builder.append(_name_20, "");
+ _builder.append("_receiveMessage(void* self, void* ifitem, const etMessage* msg);");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ boolean _or = false;
+ if (dataDriven) {
+ _or = true;
+ } else {
+ _or = (dataDriven || async);
+ }
+ if (_or) {
+ _builder.append("void ");
+ String _name_21 = ac.getName();
+ _builder.append(_name_21, "");
+ _builder.append("_execute(");
+ String _name_22 = ac.getName();
+ _builder.append(_name_22, "");
+ _builder.append("* self);");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ EList<StandardOperation> _operations = ac.getOperations();
+ String _name_23 = ac.getName();
+ CharSequence _operationsDeclaration = this._procedureHelpers.operationsDeclaration(_operations, _name_23);
+ _builder.append(_operationsDeclaration, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ CharSequence _userCode_1 = this._procedureHelpers.userCode(ac, 2);
+ _builder.append(_userCode_1, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ String _name_24 = ac.getName();
+ CharSequence _generateIncludeGuardEnd = this._cExtensions.generateIncludeGuardEnd(_name_24);
+ _builder.append(_generateIncludeGuardEnd, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private CharSequence generateSourceFile(final Root root, final ExpandedActorClass xpac, final ActorClass ac) {
+ CharSequence _xblockexpression = null;
+ {
+ ActorCommunicationType _commType = ac.getCommType();
+ boolean async = Objects.equal(_commType, ActorCommunicationType.ASYNCHRONOUS);
+ ActorCommunicationType _commType_1 = ac.getCommType();
+ boolean eventDriven = Objects.equal(_commType_1, ActorCommunicationType.EVENT_DRIVEN);
+ ActorCommunicationType _commType_2 = ac.getCommType();
+ boolean dataDriven = Objects.equal(_commType_2, ActorCommunicationType.DATA_DRIVEN);
+ boolean _or = false;
+ if (async) {
+ _or = true;
+ } else {
+ _or = (async || eventDriven);
+ }
+ boolean handleEvents = _or;
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @author generated by eTrice");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* Source File of ActorClass ");
+ String _name = ac.getName();
+ _builder.append(_name, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("* ");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("#include \"");
+ String _cHeaderFileName = this._cExtensions.getCHeaderFileName(ac);
+ _builder.append(_cHeaderFileName, "");
+ _builder.append("\"");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("#include \"modelbase/etActor.h\"");
+ _builder.newLine();
+ _builder.append("#include \"debugging/etLogger.h\"");
+ _builder.newLine();
+ _builder.append("#include \"debugging/etMSCLogger.h\"");
+ _builder.newLine();
+ _builder.append("#include \"etUnit/etUnit.h\"");
+ _builder.newLine();
+ _builder.append("#include \"platform/etMemory.h\"");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ EList<ProtocolClass> _referencedProtocolClasses = root.getReferencedProtocolClasses(ac);
+ for(final ProtocolClass pc : _referencedProtocolClasses) {
+ _builder.append("#include \"");
+ String _cHeaderFileName_1 = this._cExtensions.getCHeaderFileName(pc);
+ _builder.append(_cHeaderFileName_1, "");
+ _builder.append("\"");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(ac, 3);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/* interface item IDs */");
+ _builder.newLine();
+ String _genInterfaceItemConstants = this.genInterfaceItemConstants(xpac, ac);
+ _builder.append(_genInterfaceItemConstants, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ StateGraph _stateMachine = xpac.getStateMachine();
+ boolean _isEmpty = RoomHelpers.isEmpty(_stateMachine);
+ boolean _not = (!_isEmpty);
+ if (_not) {
+ CharSequence _genStateMachine = this._stateMachineGen.genStateMachine(xpac);
+ _builder.append(_genStateMachine, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.append("void ");
+ String _name_1 = ac.getName();
+ _builder.append(_name_1, "");
+ _builder.append("_init(");
+ String _name_2 = ac.getName();
+ _builder.append(_name_2, "");
+ _builder.append("* self){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
+ String _name_3 = ac.getName();
+ _builder.append(_name_3, " ");
+ _builder.append("\", \"init\")");
+ _builder.newLineIfNotEmpty();
+ {
+ StateGraph _stateMachine_1 = xpac.getStateMachine();
+ boolean _isEmpty_1 = RoomHelpers.isEmpty(_stateMachine_1);
+ boolean _not_1 = (!_isEmpty_1);
+ if (_not_1) {
+ _builder.append("\t");
+ CharSequence _genInitialization = this._stateMachineGen.genInitialization(xpac);
+ _builder.append(_genInitialization, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("void ");
+ String _name_4 = ac.getName();
+ _builder.append(_name_4, "");
+ _builder.append("_receiveMessage(void* self, void* ifitem, const etMessage* msg){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
+ String _name_5 = ac.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("\", \"_receiveMessage\")");
+ _builder.newLineIfNotEmpty();
+ {
+ StateGraph _stateMachine_2 = xpac.getStateMachine();
+ boolean _isEmpty_2 = RoomHelpers.isEmpty(_stateMachine_2);
+ boolean _not_2 = (!_isEmpty_2);
+ if (_not_2) {
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("receiveEvent(self");
+ {
+ if (handleEvents) {
+ _builder.append(", (etPort*)ifitem, msg->evtID, (void*)(((char*)msg)+MEM_CEIL(sizeof(etMessage)))");
+ }
+ }
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ boolean _or_1 = false;
+ if (dataDriven) {
+ _or_1 = true;
+ } else {
+ _or_1 = (dataDriven || async);
+ }
+ if (_or_1) {
+ _builder.append("void ");
+ String _name_6 = ac.getName();
+ _builder.append(_name_6, "");
+ _builder.append("_execute(");
+ String _name_7 = ac.getName();
+ _builder.append(_name_7, "");
+ _builder.append("* self) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
+ String _name_8 = ac.getName();
+ _builder.append(_name_8, " ");
+ _builder.append("\", \"_execute\")");
+ _builder.newLineIfNotEmpty();
+ {
+ StateGraph _stateMachine_3 = xpac.getStateMachine();
+ boolean _isEmpty_3 = RoomHelpers.isEmpty(_stateMachine_3);
+ boolean _not_3 = (!_isEmpty_3);
+ if (_not_3) {
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("receiveEvent(self");
+ {
+ if (handleEvents) {
+ _builder.append(", NULL, 0, NULL");
+ }
+ }
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.newLine();
+ CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(ac);
+ _builder.append(_operationsImplementation, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/CExtensions.java b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/CExtensions.java
index d63a7ff0d..628d1c15f 100644
--- a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/CExtensions.java
+++ b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/CExtensions.java
@@ -1,240 +1,246 @@
-package org.eclipse.etrice.generator.c.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.List;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.RoomClass;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator;
-import org.eclipse.etrice.generator.generic.ILanguageExtension;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.util.Pair;
-
-@Singleton
-@SuppressWarnings("all")
-public class CExtensions implements ILanguageExtension {
- @Inject
- private AbstractTransitionChainGenerator chainGenerator;
-
- public String getTypedDataDefinition(final Message m) {
- VarDecl _data = m.getData();
- return this.chainGenerator.generateTypedData(_data);
- }
-
- public String accessLevelPrivate() {
- return "static ";
- }
-
- public String accessLevelProtected() {
- return "static ";
- }
-
- public String accessLevelPublic() {
- return "";
- }
-
- public String memberAccess() {
- return "self->";
- }
-
- public String selfPointer(final String classname, final boolean hasArgs) {
- String _xifexpression = null;
- if (hasArgs) {
- _xifexpression = "* self, ";
- } else {
- _xifexpression = "* self";
- }
- String _plus = (classname + _xifexpression);
- return _plus;
- }
-
- public String selfPointer(final boolean hasArgs) {
- String _xifexpression = null;
- if (hasArgs) {
- _xifexpression = "self, ";
- } else {
- _xifexpression = "self";
- }
- return _xifexpression;
- }
-
- public String operationScope(final String classname, final boolean isDeclaration) {
- String _plus = (classname + "_");
- return _plus;
- }
-
- public String memberInDeclaration(final String namespace, final String member) {
- String _plus = (namespace + "_");
- return (_plus + member);
- }
-
- public String memberInUse(final String namespace, final String member) {
- String _plus = (namespace + "_");
- return (_plus + member);
- }
-
- /**
- * TODO: move specific code elsewhere
- */
- public String getCHeaderFileName(final RoomClass rc) {
- String _name = rc.getName();
- return (_name + ".h");
- }
-
- public String getCSourceFileName(final RoomClass rc) {
- String _name = rc.getName();
- return (_name + ".c");
- }
-
- public String getInstSourceFileName(final RoomClass rc) {
- String _name = rc.getName();
- return (_name + "_Inst.h");
- }
-
- public String getDispSourceFileName(final RoomClass rc) {
- String _name = rc.getName();
- return (_name + "_Disp.h");
- }
-
- public CharSequence getIncludeGuardString(final String filename) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("_");
- String _upperCase = filename.toUpperCase();
- _builder.append(_upperCase, "");
- _builder.append("_H_");
- return _builder;
- }
-
- public CharSequence generateIncludeGuardBegin(final String filename) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("#ifndef ");
- CharSequence _includeGuardString = this.getIncludeGuardString(filename);
- _builder.append(_includeGuardString, "");
- _builder.newLineIfNotEmpty();
- _builder.append("#define ");
- CharSequence _includeGuardString_1 = this.getIncludeGuardString(filename);
- _builder.append(_includeGuardString_1, "");
- _builder.newLineIfNotEmpty();
- return _builder;
- }
-
- public CharSequence generateIncludeGuardEnd(final String filename) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("#endif /* ");
- CharSequence _includeGuardString = this.getIncludeGuardString(filename);
- _builder.append(_includeGuardString, "");
- _builder.append(" */");
- _builder.newLineIfNotEmpty();
- return _builder;
- }
-
- public boolean usesInheritance() {
- return false;
- }
-
- public String genEnumeration(final String name, final List<Pair<String,String>> entries) {
- String _xblockexpression = null;
- {
- boolean _isEmpty = entries.isEmpty();
- if (_isEmpty) {
- return "/* empty enum not generated */";
- }
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("enum ");
- _builder.append(name, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- {
- boolean _hasElements = false;
- for(final Pair<String,String> entry : entries) {
- if (!_hasElements) {
- _hasElements = true;
- } else {
- _builder.appendImmediate(",", " ");
- }
- _builder.append("\t");
- String _first = entry.getFirst();
- _builder.append(_first, " ");
- _builder.append(" = ");
- String _second = entry.getSecond();
- _builder.append(_second, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("};");
- _builder.newLine();
- String _string = _builder.toString();
- _xblockexpression = (_string);
- }
- return _xblockexpression;
- }
-
- public String booleanConstant(final boolean b) {
- String _xifexpression = null;
- if (b) {
- _xifexpression = "TRUE";
- } else {
- _xifexpression = "FALSE";
- }
- return _xifexpression;
- }
-
- public String pointerLiteral() {
- return "*";
- }
-
- public String nullPointer() {
- return "NULL";
- }
-
- public String voidPointer() {
- return "void*";
- }
-
- public String arrayDeclaration(final String type, final int size, final String name, final boolean isRef) {
- String _xifexpression = null;
- if (isRef) {
- String _plus = (type + "* ");
- String _plus_1 = (_plus + name);
- String _plus_2 = (_plus_1 + "[");
- String _plus_3 = (_plus_2 + Integer.valueOf(size));
- String _plus_4 = (_plus_3 + "]");
- _xifexpression = _plus_4;
- } else {
- String _plus_5 = (type + " ");
- String _plus_6 = (_plus_5 + name);
- String _plus_7 = (_plus_6 + "[");
- String _plus_8 = (_plus_7 + Integer.valueOf(size));
- String _plus_9 = (_plus_8 + "]");
- _xifexpression = _plus_9;
- }
- return _xifexpression;
- }
-
- public String constructorName(final String cls) {
- return "ctor";
- }
-
- public String destructorName(final String cls) {
- return "dtor";
- }
-
- public String constructorReturnType() {
- return "void";
- }
-
- public String destructorReturnType() {
- return "void";
- }
-
- public String toCharArrayExpr(final String s) {
- String _plus = ("\"" + s);
- String _plus_1 = (_plus + "\"");
- return _plus_1;
- }
-
- public String superCall(final String baseClassName, final String method, final String args) {
- return "";
- }
-}
+package org.eclipse.etrice.generator.c.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.List;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.PrimitiveType;
+import org.eclipse.etrice.core.room.RoomClass;
+import org.eclipse.etrice.core.room.VarDecl;
+import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator;
+import org.eclipse.etrice.generator.generic.ILanguageExtension;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.util.Pair;
+
+@Singleton
+@SuppressWarnings("all")
+public class CExtensions implements ILanguageExtension {
+ @Inject
+ private AbstractTransitionChainGenerator chainGenerator;
+
+ public String getTypedDataDefinition(final Message m) {
+ VarDecl _data = m.getData();
+ return this.chainGenerator.generateTypedData(_data);
+ }
+
+ public String accessLevelPrivate() {
+ return "static ";
+ }
+
+ public String accessLevelProtected() {
+ return "static ";
+ }
+
+ public String accessLevelPublic() {
+ return "";
+ }
+
+ public String memberAccess() {
+ return "self->";
+ }
+
+ public String selfPointer(final String classname, final boolean hasArgs) {
+ String _xifexpression = null;
+ if (hasArgs) {
+ _xifexpression = "* self, ";
+ } else {
+ _xifexpression = "* self";
+ }
+ String _plus = (classname + _xifexpression);
+ return _plus;
+ }
+
+ public String selfPointer(final boolean hasArgs) {
+ String _xifexpression = null;
+ if (hasArgs) {
+ _xifexpression = "self, ";
+ } else {
+ _xifexpression = "self";
+ }
+ return _xifexpression;
+ }
+
+ public String operationScope(final String classname, final boolean isDeclaration) {
+ String _plus = (classname + "_");
+ return _plus;
+ }
+
+ public String memberInDeclaration(final String namespace, final String member) {
+ String _plus = (namespace + "_");
+ return (_plus + member);
+ }
+
+ public String memberInUse(final String namespace, final String member) {
+ String _plus = (namespace + "_");
+ return (_plus + member);
+ }
+
+ /**
+ * TODO: move specific code elsewhere
+ */
+ public String getCHeaderFileName(final RoomClass rc) {
+ String _name = rc.getName();
+ return (_name + ".h");
+ }
+
+ public String getCSourceFileName(final RoomClass rc) {
+ String _name = rc.getName();
+ return (_name + ".c");
+ }
+
+ public String getInstSourceFileName(final RoomClass rc) {
+ String _name = rc.getName();
+ return (_name + "_Inst.h");
+ }
+
+ public String getDispSourceFileName(final RoomClass rc) {
+ String _name = rc.getName();
+ return (_name + "_Disp.h");
+ }
+
+ public CharSequence getIncludeGuardString(final String filename) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("_");
+ String _upperCase = filename.toUpperCase();
+ _builder.append(_upperCase, "");
+ _builder.append("_H_");
+ return _builder;
+ }
+
+ public CharSequence generateIncludeGuardBegin(final String filename) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("#ifndef ");
+ CharSequence _includeGuardString = this.getIncludeGuardString(filename);
+ _builder.append(_includeGuardString, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("#define ");
+ CharSequence _includeGuardString_1 = this.getIncludeGuardString(filename);
+ _builder.append(_includeGuardString_1, "");
+ _builder.newLineIfNotEmpty();
+ return _builder;
+ }
+
+ public CharSequence generateIncludeGuardEnd(final String filename) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("#endif /* ");
+ CharSequence _includeGuardString = this.getIncludeGuardString(filename);
+ _builder.append(_includeGuardString, "");
+ _builder.append(" */");
+ _builder.newLineIfNotEmpty();
+ return _builder;
+ }
+
+ public boolean usesInheritance() {
+ return false;
+ }
+
+ public String genEnumeration(final String name, final List<Pair<String,String>> entries) {
+ String _xblockexpression = null;
+ {
+ boolean _isEmpty = entries.isEmpty();
+ if (_isEmpty) {
+ return "/* empty enum not generated */";
+ }
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("enum ");
+ _builder.append(name, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _hasElements = false;
+ for(final Pair<String,String> entry : entries) {
+ if (!_hasElements) {
+ _hasElements = true;
+ } else {
+ _builder.appendImmediate(",", " ");
+ }
+ _builder.append("\t");
+ String _first = entry.getFirst();
+ _builder.append(_first, " ");
+ _builder.append(" = ");
+ String _second = entry.getSecond();
+ _builder.append(_second, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("};");
+ _builder.newLine();
+ String _string = _builder.toString();
+ _xblockexpression = (_string);
+ }
+ return _xblockexpression;
+ }
+
+ public String booleanConstant(final boolean b) {
+ String _xifexpression = null;
+ if (b) {
+ _xifexpression = "TRUE";
+ } else {
+ _xifexpression = "FALSE";
+ }
+ return _xifexpression;
+ }
+
+ public String pointerLiteral() {
+ return "*";
+ }
+
+ public String nullPointer() {
+ return "NULL";
+ }
+
+ public String voidPointer() {
+ return "void*";
+ }
+
+ public String arrayDeclaration(final String type, final int size, final String name, final boolean isRef) {
+ String _xifexpression = null;
+ if (isRef) {
+ String _plus = (type + "* ");
+ String _plus_1 = (_plus + name);
+ String _plus_2 = (_plus_1 + "[");
+ String _plus_3 = (_plus_2 + Integer.valueOf(size));
+ String _plus_4 = (_plus_3 + "]");
+ _xifexpression = _plus_4;
+ } else {
+ String _plus_5 = (type + " ");
+ String _plus_6 = (_plus_5 + name);
+ String _plus_7 = (_plus_6 + "[");
+ String _plus_8 = (_plus_7 + Integer.valueOf(size));
+ String _plus_9 = (_plus_8 + "]");
+ _xifexpression = _plus_9;
+ }
+ return _xifexpression;
+ }
+
+ public String constructorName(final String cls) {
+ return "ctor";
+ }
+
+ public String destructorName(final String cls) {
+ return "dtor";
+ }
+
+ public String constructorReturnType() {
+ return "void";
+ }
+
+ public String destructorReturnType() {
+ return "void";
+ }
+
+ public String toCharArrayExpr(final String s) {
+ String _plus = ("\"" + s);
+ String _plus_1 = (_plus + "\"");
+ return _plus_1;
+ }
+
+ public String superCall(final String baseClassName, final String method, final String args) {
+ return "";
+ }
+
+ public String toValueLiteral(final PrimitiveType type, final String value) {
+ UnsupportedOperationException _unsupportedOperationException = new UnsupportedOperationException("TODO Config for C");
+ throw _unsupportedOperationException;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/DataClassGen.java b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/DataClassGen.java
index 991eef03f..61236fc9c 100644
--- a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/DataClassGen.java
+++ b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/DataClassGen.java
@@ -1,247 +1,247 @@
-package org.eclipse.etrice.generator.c.gen;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.HashSet;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.DataClass;
-import org.eclipse.etrice.core.room.StandardOperation;
-import org.eclipse.etrice.generator.c.gen.CExtensions;
-import org.eclipse.etrice.generator.generic.ProcedureHelpers;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-
-@Singleton
-@SuppressWarnings("all")
-public class DataClassGen {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private CExtensions _cExtensions;
-
- @Inject
- private RoomExtensions _roomExtensions;
-
- @Inject
- private ProcedureHelpers _procedureHelpers;
-
- @Inject
- private ILogger logger;
-
- public void doGenerate(final Root root) {
- EList<DataClass> _usedDataClasses = root.getUsedDataClasses();
- for (final DataClass dc : _usedDataClasses) {
- {
- String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(dc);
- String _path = this._roomExtensions.getPath(dc);
- String path = (_generationTargetPath + _path);
- String _cHeaderFileName = this._cExtensions.getCHeaderFileName(dc);
- String _plus = ("generating DataClass header \'" + _cHeaderFileName);
- String _plus_1 = (_plus + "\' in \'");
- String _plus_2 = (_plus_1 + path);
- String _plus_3 = (_plus_2 + "\'");
- this.logger.logInfo(_plus_3);
- this.fileAccess.setOutputPath(path);
- String _cHeaderFileName_1 = this._cExtensions.getCHeaderFileName(dc);
- CharSequence _generateHeaderFile = this.generateHeaderFile(root, dc);
- this.fileAccess.generateFile(_cHeaderFileName_1, _generateHeaderFile);
- String _cSourceFileName = this._cExtensions.getCSourceFileName(dc);
- String _plus_4 = ("generating DataClass source \'" + _cSourceFileName);
- String _plus_5 = (_plus_4 + "\' in \'");
- String _plus_6 = (_plus_5 + path);
- String _plus_7 = (_plus_6 + "\'");
- this.logger.logInfo(_plus_7);
- this.fileAccess.setOutputPath(path);
- String _cSourceFileName_1 = this._cExtensions.getCSourceFileName(dc);
- CharSequence _generateSourceFile = this.generateSourceFile(root, dc);
- this.fileAccess.generateFile(_cSourceFileName_1, _generateSourceFile);
- }
- }
- }
-
- public CharSequence generateHeaderFile(final Root root, final DataClass dc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @author generated by eTrice");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* Header File of DataClass ");
- String _name = dc.getName();
- _builder.append(_name, " ");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("* ");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.newLine();
- String _name_1 = dc.getName();
- CharSequence _generateIncludeGuardBegin = this._cExtensions.generateIncludeGuardBegin(_name_1);
- _builder.append(_generateIncludeGuardBegin, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("#include \"etDatatypes.h\"");
- _builder.newLine();
- _builder.newLine();
- {
- HashSet<DataClass> _referencedDataClasses = root.getReferencedDataClasses(dc);
- for(final DataClass dataClass : _referencedDataClasses) {
- _builder.append("#include \"");
- String _name_2 = dataClass.getName();
- _builder.append(_name_2, "");
- _builder.append(".h\"");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(dc, 1);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("typedef struct {");
- _builder.newLine();
- _builder.append("\t");
- List<Attribute> _allAttributes = this._roomExtensions.getAllAttributes(dc);
- CharSequence _attributes = this._procedureHelpers.attributes(_allAttributes);
- _builder.append(_attributes, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("} ");
- String _name_3 = dc.getName();
- _builder.append(_name_3, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- {
- List<Attribute> _allAttributes_1 = this._roomExtensions.getAllAttributes(dc);
- for(final Attribute a : _allAttributes_1) {
- {
- String _defaultValueLiteral = a.getDefaultValueLiteral();
- boolean _notEquals = (!Objects.equal(_defaultValueLiteral, null));
- if (_notEquals) {
- String _name_4 = dc.getName();
- String _plus = (_name_4 + " ");
- String _name_5 = a.getName();
- String _plus_1 = (_plus + _name_5);
- String _plus_2 = (_plus_1 + ": Attribute initialization not supported in C");
- this.logger.logInfo(_plus_2);
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.newLine();
- _builder.newLine();
- EList<StandardOperation> _operations = dc.getOperations();
- String _name_6 = dc.getName();
- CharSequence _operationsDeclaration = this._procedureHelpers.operationsDeclaration(_operations, _name_6);
- _builder.append(_operationsDeclaration, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/* deep copy */");
- _builder.newLine();
- _builder.append("void ");
- String _name_7 = dc.getName();
- _builder.append(_name_7, "");
- _builder.append("_deepCopy(");
- String _name_8 = dc.getName();
- _builder.append(_name_8, "");
- _builder.append("* source, ");
- String _name_9 = dc.getName();
- _builder.append(_name_9, "");
- _builder.append("* target);");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- CharSequence _userCode_1 = this._procedureHelpers.userCode(dc, 2);
- _builder.append(_userCode_1, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- String _name_10 = dc.getName();
- CharSequence _generateIncludeGuardEnd = this._cExtensions.generateIncludeGuardEnd(_name_10);
- _builder.append(_generateIncludeGuardEnd, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- return _builder;
- }
-
- public CharSequence generateSourceFile(final Root root, final DataClass dc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @author generated by eTrice");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* Source File of DataClass ");
- String _name = dc.getName();
- _builder.append(_name, " ");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("* ");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.newLine();
- _builder.append("#include \"");
- String _cHeaderFileName = this._cExtensions.getCHeaderFileName(dc);
- _builder.append(_cHeaderFileName, "");
- _builder.append("\"");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("#include <string.h>");
- _builder.newLine();
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(dc, 3);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.newLine();
- EList<StandardOperation> _operations = dc.getOperations();
- String _name_1 = dc.getName();
- CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(_operations, _name_1);
- _builder.append(_operationsImplementation, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("// deep copy");
- _builder.newLine();
- _builder.append("void ");
- String _name_2 = dc.getName();
- _builder.append(_name_2, "");
- _builder.append("_deepCopy(");
- String _name_3 = dc.getName();
- _builder.append(_name_3, "");
- _builder.append("* source, ");
- String _name_4 = dc.getName();
- _builder.append(_name_4, "");
- _builder.append("* target) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("memcpy(target, source, sizeof(");
- String _name_5 = dc.getName();
- _builder.append(_name_5, " ");
- _builder.append("));");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.newLine();
- return _builder;
- }
-}
+package org.eclipse.etrice.generator.c.gen;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.HashSet;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.StandardOperation;
+import org.eclipse.etrice.generator.c.gen.CExtensions;
+import org.eclipse.etrice.generator.generic.ProcedureHelpers;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+
+@Singleton
+@SuppressWarnings("all")
+public class DataClassGen {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private CExtensions _cExtensions;
+
+ @Inject
+ private RoomExtensions _roomExtensions;
+
+ @Inject
+ private ProcedureHelpers _procedureHelpers;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root) {
+ EList<DataClass> _usedDataClasses = root.getUsedDataClasses();
+ for (final DataClass dc : _usedDataClasses) {
+ {
+ String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(dc);
+ String _path = this._roomExtensions.getPath(dc);
+ String path = (_generationTargetPath + _path);
+ String _cHeaderFileName = this._cExtensions.getCHeaderFileName(dc);
+ String _plus = ("generating DataClass header \'" + _cHeaderFileName);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ this.fileAccess.setOutputPath(path);
+ String _cHeaderFileName_1 = this._cExtensions.getCHeaderFileName(dc);
+ CharSequence _generateHeaderFile = this.generateHeaderFile(root, dc);
+ this.fileAccess.generateFile(_cHeaderFileName_1, _generateHeaderFile);
+ String _cSourceFileName = this._cExtensions.getCSourceFileName(dc);
+ String _plus_4 = ("generating DataClass source \'" + _cSourceFileName);
+ String _plus_5 = (_plus_4 + "\' in \'");
+ String _plus_6 = (_plus_5 + path);
+ String _plus_7 = (_plus_6 + "\'");
+ this.logger.logInfo(_plus_7);
+ this.fileAccess.setOutputPath(path);
+ String _cSourceFileName_1 = this._cExtensions.getCSourceFileName(dc);
+ CharSequence _generateSourceFile = this.generateSourceFile(root, dc);
+ this.fileAccess.generateFile(_cSourceFileName_1, _generateSourceFile);
+ }
+ }
+ }
+
+ public CharSequence generateHeaderFile(final Root root, final DataClass dc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @author generated by eTrice");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* Header File of DataClass ");
+ String _name = dc.getName();
+ _builder.append(_name, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("* ");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.newLine();
+ String _name_1 = dc.getName();
+ CharSequence _generateIncludeGuardBegin = this._cExtensions.generateIncludeGuardBegin(_name_1);
+ _builder.append(_generateIncludeGuardBegin, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("#include \"etDatatypes.h\"");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ HashSet<DataClass> _referencedDataClasses = root.getReferencedDataClasses(dc);
+ for(final DataClass dataClass : _referencedDataClasses) {
+ _builder.append("#include \"");
+ String _name_2 = dataClass.getName();
+ _builder.append(_name_2, "");
+ _builder.append(".h\"");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(dc, 1);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("typedef struct {");
+ _builder.newLine();
+ _builder.append("\t");
+ List<Attribute> _allAttributes = this._roomExtensions.getAllAttributes(dc);
+ CharSequence _attributes = this._procedureHelpers.attributes(_allAttributes);
+ _builder.append(_attributes, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("} ");
+ String _name_3 = dc.getName();
+ _builder.append(_name_3, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ List<Attribute> _allAttributes_1 = this._roomExtensions.getAllAttributes(dc);
+ for(final Attribute a : _allAttributes_1) {
+ {
+ String _defaultValueLiteral = a.getDefaultValueLiteral();
+ boolean _notEquals = (!Objects.equal(_defaultValueLiteral, null));
+ if (_notEquals) {
+ String _name_4 = dc.getName();
+ String _plus = (_name_4 + " ");
+ String _name_5 = a.getName();
+ String _plus_1 = (_plus + _name_5);
+ String _plus_2 = (_plus_1 + ": Attribute initialization not supported in C");
+ this.logger.logInfo(_plus_2);
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ _builder.newLine();
+ EList<StandardOperation> _operations = dc.getOperations();
+ String _name_6 = dc.getName();
+ CharSequence _operationsDeclaration = this._procedureHelpers.operationsDeclaration(_operations, _name_6);
+ _builder.append(_operationsDeclaration, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/* deep copy */");
+ _builder.newLine();
+ _builder.append("void ");
+ String _name_7 = dc.getName();
+ _builder.append(_name_7, "");
+ _builder.append("_deepCopy(");
+ String _name_8 = dc.getName();
+ _builder.append(_name_8, "");
+ _builder.append("* source, ");
+ String _name_9 = dc.getName();
+ _builder.append(_name_9, "");
+ _builder.append("* target);");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ CharSequence _userCode_1 = this._procedureHelpers.userCode(dc, 2);
+ _builder.append(_userCode_1, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ String _name_10 = dc.getName();
+ CharSequence _generateIncludeGuardEnd = this._cExtensions.generateIncludeGuardEnd(_name_10);
+ _builder.append(_generateIncludeGuardEnd, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ return _builder;
+ }
+
+ public CharSequence generateSourceFile(final Root root, final DataClass dc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @author generated by eTrice");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* Source File of DataClass ");
+ String _name = dc.getName();
+ _builder.append(_name, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("* ");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("#include \"");
+ String _cHeaderFileName = this._cExtensions.getCHeaderFileName(dc);
+ _builder.append(_cHeaderFileName, "");
+ _builder.append("\"");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("#include <string.h>");
+ _builder.newLine();
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(dc, 3);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.newLine();
+ EList<StandardOperation> _operations = dc.getOperations();
+ String _name_1 = dc.getName();
+ CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(_operations, _name_1);
+ _builder.append(_operationsImplementation, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("// deep copy");
+ _builder.newLine();
+ _builder.append("void ");
+ String _name_2 = dc.getName();
+ _builder.append(_name_2, "");
+ _builder.append("_deepCopy(");
+ String _name_3 = dc.getName();
+ _builder.append(_name_3, "");
+ _builder.append("* source, ");
+ String _name_4 = dc.getName();
+ _builder.append(_name_4, "");
+ _builder.append("* target) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("memcpy(target, source, sizeof(");
+ String _name_5 = dc.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("));");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.newLine();
+ return _builder;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/MainGen.java b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/MainGen.java
index 4443dd84c..26daa4b46 100644
--- a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/MainGen.java
+++ b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/MainGen.java
@@ -1,60 +1,60 @@
-package org.eclipse.etrice.generator.c.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.generator.c.gen.ActorClassGen;
-import org.eclipse.etrice.generator.c.gen.DataClassGen;
-import org.eclipse.etrice.generator.c.gen.ProtocolClassGen;
-import org.eclipse.etrice.generator.c.gen.SubSystemClassGen;
-import org.eclipse.etrice.generator.c.gen.SubSystemRunnerGen;
-import org.eclipse.etrice.generator.generic.PrepareFileSystem;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.eclipse.xtext.generator.IGenerator;
-
-@Singleton
-@SuppressWarnings("all")
-public class MainGen implements IGenerator {
- @Inject
- private DataClassGen dataClassGen;
-
- @Inject
- private ProtocolClassGen protocolClassGen;
-
- @Inject
- private ActorClassGen actorClassGen;
-
- @Inject
- private SubSystemClassGen subsystemClassGen;
-
- @Inject
- private SubSystemRunnerGen subsystemRunnerGen;
-
- @Inject
- private PrepareFileSystem prepFS;
-
- public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
- this.prepFS.prepare(resource);
- EList<EObject> _contents = resource.getContents();
- for (final EObject e : _contents) {
- if ((e instanceof Root)) {
- this.doGenerate(((Root) e));
- }
- }
- }
-
- public void doGenerate(final Root e) {
- this.dataClassGen.doGenerate(e);
- this.protocolClassGen.doGenerate(e);
- this.actorClassGen.doGenerate(e);
- this.subsystemClassGen.doGenerate(e);
- boolean _isLibrary = e.isLibrary();
- boolean _not = (!_isLibrary);
- if (_not) {
- this.subsystemRunnerGen.doGenerate(e);
- }
- }
-}
+package org.eclipse.etrice.generator.c.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.generator.c.gen.ActorClassGen;
+import org.eclipse.etrice.generator.c.gen.DataClassGen;
+import org.eclipse.etrice.generator.c.gen.ProtocolClassGen;
+import org.eclipse.etrice.generator.c.gen.SubSystemClassGen;
+import org.eclipse.etrice.generator.c.gen.SubSystemRunnerGen;
+import org.eclipse.etrice.generator.generic.PrepareFileSystem;
+import org.eclipse.xtext.generator.IFileSystemAccess;
+import org.eclipse.xtext.generator.IGenerator;
+
+@Singleton
+@SuppressWarnings("all")
+public class MainGen implements IGenerator {
+ @Inject
+ private DataClassGen dataClassGen;
+
+ @Inject
+ private ProtocolClassGen protocolClassGen;
+
+ @Inject
+ private ActorClassGen actorClassGen;
+
+ @Inject
+ private SubSystemClassGen subsystemClassGen;
+
+ @Inject
+ private SubSystemRunnerGen subsystemRunnerGen;
+
+ @Inject
+ private PrepareFileSystem prepFS;
+
+ public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
+ this.prepFS.prepare(resource);
+ EList<EObject> _contents = resource.getContents();
+ for (final EObject e : _contents) {
+ if ((e instanceof Root)) {
+ this.doGenerate(((Root) e));
+ }
+ }
+ }
+
+ public void doGenerate(final Root e) {
+ this.dataClassGen.doGenerate(e);
+ this.protocolClassGen.doGenerate(e);
+ this.actorClassGen.doGenerate(e);
+ this.subsystemClassGen.doGenerate(e);
+ boolean _isLibrary = e.isLibrary();
+ boolean _not = (!_isLibrary);
+ if (_not) {
+ this.subsystemRunnerGen.doGenerate(e);
+ }
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ProtocolClassGen.java b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ProtocolClassGen.java
index 65d3e54b6..91dcd5e39 100644
--- a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ProtocolClassGen.java
+++ b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/ProtocolClassGen.java
@@ -1,1185 +1,1185 @@
-package org.eclipse.etrice.generator.c.gen;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.HashSet;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.CommunicationType;
-import org.eclipse.etrice.core.room.DataClass;
-import org.eclipse.etrice.core.room.DataType;
-import org.eclipse.etrice.core.room.DetailCode;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.MessageHandler;
-import org.eclipse.etrice.core.room.PortClass;
-import org.eclipse.etrice.core.room.PortOperation;
-import org.eclipse.etrice.core.room.PrimitiveType;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.eclipse.etrice.generator.c.gen.CExtensions;
-import org.eclipse.etrice.generator.generic.GenericProtocolClassGenerator;
-import org.eclipse.etrice.generator.generic.ProcedureHelpers;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.etrice.generator.generic.TypeHelpers;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-import org.eclipse.xtext.xbase.lib.Functions.Function1;
-import org.eclipse.xtext.xbase.lib.IterableExtensions;
-
-@Singleton
-@SuppressWarnings("all")
-public class ProtocolClassGen extends GenericProtocolClassGenerator {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private CExtensions _cExtensions;
-
- @Inject
- private RoomExtensions _roomExtensions;
-
- @Inject
- private ProcedureHelpers _procedureHelpers;
-
- @Inject
- private TypeHelpers _typeHelpers;
-
- @Inject
- private ILogger logger;
-
- public void doGenerate(final Root root) {
- EList<ProtocolClass> _usedProtocolClasses = root.getUsedProtocolClasses();
- for (final ProtocolClass pc : _usedProtocolClasses) {
- {
- String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(pc);
- String _path = this._roomExtensions.getPath(pc);
- String path = (_generationTargetPath + _path);
- String _cHeaderFileName = this._cExtensions.getCHeaderFileName(pc);
- String _plus = ("generating ProtocolClass header \'" + _cHeaderFileName);
- String _plus_1 = (_plus + "\' in \'");
- String _plus_2 = (_plus_1 + path);
- String _plus_3 = (_plus_2 + "\'");
- this.logger.logInfo(_plus_3);
- this.fileAccess.setOutputPath(path);
- String _cHeaderFileName_1 = this._cExtensions.getCHeaderFileName(pc);
- CharSequence _generateHeaderFile = this.generateHeaderFile(root, pc);
- this.fileAccess.generateFile(_cHeaderFileName_1, _generateHeaderFile);
- String _cSourceFileName = this._cExtensions.getCSourceFileName(pc);
- String _plus_4 = ("generating ProtocolClass source \'" + _cSourceFileName);
- String _plus_5 = (_plus_4 + "\' in \'");
- String _plus_6 = (_plus_5 + path);
- String _plus_7 = (_plus_6 + "\'");
- this.logger.logInfo(_plus_7);
- this.fileAccess.setOutputPath(path);
- String _cSourceFileName_1 = this._cExtensions.getCSourceFileName(pc);
- CharSequence _generateSourceFile = this.generateSourceFile(root, pc);
- this.fileAccess.generateFile(_cSourceFileName_1, _generateSourceFile);
- }
- }
- }
-
- private CharSequence generateHeaderFile(final Root root, final ProtocolClass pc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @author generated by eTrice");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* Header File of ProtocolClass ");
- String _name = pc.getName();
- _builder.append(_name, " ");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("* ");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.newLine();
- String _name_1 = pc.getName();
- CharSequence _generateIncludeGuardBegin = this._cExtensions.generateIncludeGuardBegin(_name_1);
- _builder.append(_generateIncludeGuardBegin, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("#include \"etDatatypes.h\"");
- _builder.newLine();
- _builder.append("#include \"modelbase/etPort.h\"");
- _builder.newLine();
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(pc, 1);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- {
- HashSet<DataClass> _referencedDataClasses = root.getReferencedDataClasses(pc);
- for(final DataClass dataClass : _referencedDataClasses) {
- _builder.append("#include \"");
- String _name_2 = dataClass.getName();
- _builder.append(_name_2, "");
- _builder.append(".h\"");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- {
- CommunicationType _commType = pc.getCommType();
- boolean _equals = Objects.equal(_commType, CommunicationType.EVENT_DRIVEN);
- if (_equals) {
- _builder.newLine();
- _builder.append("/* message IDs */");
- _builder.newLine();
- String _genMessageIDs = this.genMessageIDs(pc);
- _builder.append(_genMessageIDs, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/*--------------------- port structs and methods */");
- _builder.newLine();
- CharSequence _portClassHeader = this.portClassHeader(pc, Boolean.valueOf(false));
- _builder.append(_portClassHeader, "");
- _builder.newLineIfNotEmpty();
- CharSequence _portClassHeader_1 = this.portClassHeader(pc, Boolean.valueOf(true));
- _builder.append(_portClassHeader_1, "");
- _builder.newLineIfNotEmpty();
- } else {
- CommunicationType _commType_1 = pc.getCommType();
- boolean _equals_1 = Objects.equal(_commType_1, CommunicationType.DATA_DRIVEN);
- if (_equals_1) {
- _builder.append("/*--------------------- port structs and methods */");
- _builder.newLine();
- CharSequence _genDataDrivenPortHeaders = this.genDataDrivenPortHeaders(pc);
- _builder.append(_genDataDrivenPortHeaders, "");
- _builder.newLineIfNotEmpty();
- } else {
- CommunicationType _commType_2 = pc.getCommType();
- boolean _equals_2 = Objects.equal(_commType_2, CommunicationType.SYNCHRONOUS);
- if (_equals_2) {
- _builder.append("#error \"synchronoue protocols not implemented yet\"");
- _builder.newLine();
- }
- }
- }
- }
- _builder.newLine();
- _builder.append("/*--------------------- debug helpers */");
- _builder.newLine();
- _builder.newLine();
- _builder.append("/* get message string for message id */");
- _builder.newLine();
- _builder.append("const char* ");
- String _name_3 = pc.getName();
- _builder.append(_name_3, "");
- _builder.append("_getMessageString(int msg_id);");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- CharSequence _userCode_1 = this._procedureHelpers.userCode(pc, 2);
- _builder.append(_userCode_1, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- String _name_4 = pc.getName();
- CharSequence _generateIncludeGuardEnd = this._cExtensions.generateIncludeGuardEnd(_name_4);
- _builder.append(_generateIncludeGuardEnd, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- return _builder;
- }
-
- private CharSequence generateSourceFile(final Root root, final ProtocolClass pc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @author generated by eTrice");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* Source File of ProtocolClass ");
- String _name = pc.getName();
- _builder.append(_name, " ");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("* ");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.newLine();
- _builder.append("#include \"");
- String _cHeaderFileName = this._cExtensions.getCHeaderFileName(pc);
- _builder.append(_cHeaderFileName, "");
- _builder.append("\"");
- _builder.newLineIfNotEmpty();
- _builder.append("#include \"debugging/etMSCLogger.h\"");
- _builder.newLine();
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(pc, 3);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/*--------------------- port methods */");
- _builder.newLine();
- {
- CommunicationType _commType = pc.getCommType();
- boolean _equals = Objects.equal(_commType, CommunicationType.EVENT_DRIVEN);
- if (_equals) {
- CharSequence _portClassSource = this.portClassSource(pc, Boolean.valueOf(false));
- _builder.append(_portClassSource, "");
- _builder.newLineIfNotEmpty();
- CharSequence _portClassSource_1 = this.portClassSource(pc, Boolean.valueOf(true));
- _builder.append(_portClassSource_1, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/*--------------------- debug helpers */");
- _builder.newLine();
- CharSequence _generateDebugHelpersImplementation = this.generateDebugHelpersImplementation(root, pc);
- _builder.append(_generateDebugHelpersImplementation, "");
- _builder.newLineIfNotEmpty();
- } else {
- CommunicationType _commType_1 = pc.getCommType();
- boolean _equals_1 = Objects.equal(_commType_1, CommunicationType.DATA_DRIVEN);
- if (_equals_1) {
- CharSequence _genDataDrivenPortSources = this.genDataDrivenPortSources(pc);
- _builder.append(_genDataDrivenPortSources, "");
- _builder.newLineIfNotEmpty();
- } else {
- CommunicationType _commType_2 = pc.getCommType();
- boolean _equals_2 = Objects.equal(_commType_2, CommunicationType.SYNCHRONOUS);
- if (_equals_2) {
- _builder.append("#error \"synchronous protocols not implemented yet\"");
- _builder.newLine();
- }
- }
- }
- }
- return _builder;
- }
-
- private CharSequence portClassHeader(final ProtocolClass pc, final Boolean conj) {
- CharSequence _xblockexpression = null;
- {
- String portClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue());
- String replPortClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue(), true);
- List<Message> _xifexpression = null;
- if ((conj).booleanValue()) {
- List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
- _xifexpression = _allIncomingMessages;
- } else {
- List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
- _xifexpression = _allOutgoingMessages;
- }
- List<Message> messages = _xifexpression;
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("typedef etPort ");
- _builder.append(portClassName, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("typedef etReplPort ");
- _builder.append(replPortClassName, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- {
- PortClass _portClass = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- boolean _notEquals = (!Objects.equal(_portClass, null));
- if (_notEquals) {
- {
- PortClass _portClass_1 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- EList<Attribute> _attributes = _portClass_1.getAttributes();
- boolean _isEmpty = _attributes.isEmpty();
- boolean _not = (!_isEmpty);
- if (_not) {
- _builder.append("/* variable part of PortClass (RAM) */");
- _builder.newLine();
- _builder.append("typedef struct ");
- _builder.append(portClassName, "");
- _builder.append("_var ");
- _builder.append(portClassName, "");
- _builder.append("_var; ");
- _builder.newLineIfNotEmpty();
- _builder.append("struct ");
- _builder.append(portClassName, "");
- _builder.append("_var {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- PortClass _portClass_2 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- EList<Attribute> _attributes_1 = _portClass_2.getAttributes();
- CharSequence _attributes_2 = this._procedureHelpers.attributes(_attributes_1);
- _builder.append(_attributes_2, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("};");
- _builder.newLine();
- {
- PortClass _portClass_3 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- EList<Attribute> _attributes_3 = _portClass_3.getAttributes();
- for(final Attribute a : _attributes_3) {
- {
- String _defaultValueLiteral = a.getDefaultValueLiteral();
- boolean _notEquals_1 = (!Objects.equal(_defaultValueLiteral, null));
- if (_notEquals_1) {
- String _plus = (portClassName + " ");
- String _name = a.getName();
- String _plus_1 = (_plus + _name);
- String _plus_2 = (_plus_1 + ": Attribute initialization not supported in C");
- this.logger.logInfo(_plus_2);
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- }
- }
- }
- }
- _builder.newLine();
- {
- for(final Message message : messages) {
- VarDecl _data = message.getData();
- boolean hasData = (!Objects.equal(_data, null));
- _builder.newLineIfNotEmpty();
- String _xifexpression_1 = null;
- if (hasData) {
- VarDecl _data_1 = message.getData();
- RefableType _refType = _data_1.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- _xifexpression_1 = _typeName;
- } else {
- _xifexpression_1 = "";
- }
- String typeName = _xifexpression_1;
- _builder.newLineIfNotEmpty();
- String _xifexpression_2 = null;
- boolean _and = false;
- if (!hasData) {
- _and = false;
- } else {
- boolean _or = false;
- VarDecl _data_2 = message.getData();
- RefableType _refType_1 = _data_2.getRefType();
- DataType _type_1 = _refType_1.getType();
- boolean _not_1 = (!(_type_1 instanceof PrimitiveType));
- if (_not_1) {
- _or = true;
- } else {
- VarDecl _data_3 = message.getData();
- RefableType _refType_2 = _data_3.getRefType();
- boolean _isRef = _refType_2.isRef();
- _or = (_not_1 || _isRef);
- }
- _and = (hasData && _or);
- }
- if (_and) {
- _xifexpression_2 = "*";
- } else {
- _xifexpression_2 = "";
- }
- String refp = _xifexpression_2;
- _builder.newLineIfNotEmpty();
- String _xifexpression_3 = null;
- if (hasData) {
- String _plus_3 = (", " + typeName);
- String _plus_4 = (_plus_3 + refp);
- String _plus_5 = (_plus_4 + " data");
- _xifexpression_3 = _plus_5;
- } else {
- _xifexpression_3 = "";
- }
- String data = _xifexpression_3;
- _builder.newLineIfNotEmpty();
- String _name_1 = message.getName();
- String _messageSignature = this.messageSignature(portClassName, _name_1, "", data);
- _builder.append(_messageSignature, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- String _name_2 = message.getName();
- String _messageSignature_1 = this.messageSignature(replPortClassName, _name_2, "_broadcast", data);
- _builder.append(_messageSignature_1, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- String _name_3 = message.getName();
- String _plus_6 = (", int idx" + data);
- String _messageSignature_2 = this.messageSignature(replPortClassName, _name_3, "", _plus_6);
- _builder.append(_messageSignature_2, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- {
- PortClass _portClass_4 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- boolean _notEquals_2 = (!Objects.equal(_portClass_4, null));
- if (_notEquals_2) {
- PortClass _portClass_5 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- EList<PortOperation> _operations = _portClass_5.getOperations();
- CharSequence _operationsDeclaration = this._procedureHelpers.operationsDeclaration(_operations, portClassName);
- _builder.append(_operationsDeclaration, "");
- _builder.newLineIfNotEmpty();
- PortClass _portClass_6 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- EList<PortOperation> _operations_1 = _portClass_6.getOperations();
- CharSequence _operationsDeclaration_1 = this._procedureHelpers.operationsDeclaration(_operations_1, replPortClassName);
- _builder.append(_operationsDeclaration_1, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- {
- boolean _handlesReceive = this._roomExtensions.handlesReceive(pc, (conj).booleanValue());
- if (_handlesReceive) {
- {
- List<MessageHandler> _receiveHandlers = this._roomExtensions.getReceiveHandlers(pc, (conj).booleanValue());
- for(final MessageHandler h : _receiveHandlers) {
- _builder.append("void ");
- _builder.append(portClassName, "");
- _builder.append("_");
- Message _msg = h.getMsg();
- String _name_4 = _msg.getName();
- _builder.append(_name_4, "");
- _builder.append("_receiveHandler(");
- _builder.append(portClassName, "");
- _builder.append("* self, const etMessage* msg, void * actor, etActorReceiveMessage receiveMessageFunc);");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.append("etInt32 ");
- _builder.append(replPortClassName, "");
- _builder.append("_getReplication(const ");
- _builder.append(replPortClassName, "");
- _builder.append("* self);");
- _builder.newLineIfNotEmpty();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private CharSequence genDataDrivenPortHeaders(final ProtocolClass pc) {
- CharSequence _xblockexpression = null;
- {
- List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
- final Function1<Message,Boolean> _function = new Function1<Message,Boolean>() {
- public Boolean apply(final Message m) {
- VarDecl _data = m.getData();
- boolean _notEquals = (!Objects.equal(_data, null));
- return Boolean.valueOf(_notEquals);
- }
- };
- Iterable<Message> sentMsgs = IterableExtensions.<Message>filter(_allIncomingMessages, _function);
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/* data driven send port (conjugated) */");
- _builder.newLine();
- _builder.append("typedef struct {");
- _builder.newLine();
- {
- for(final Message msg : sentMsgs) {
- _builder.append("\t");
- VarDecl _data = msg.getData();
- RefableType _refType = _data.getRefType();
- DataType _type = _refType.getType();
- String typeName = this._typeHelpers.typeName(_type);
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- String _xifexpression = null;
- VarDecl _data_1 = msg.getData();
- RefableType _refType_1 = _data_1.getRefType();
- boolean _isRef = _refType_1.isRef();
- if (_isRef) {
- _xifexpression = "*";
- } else {
- _xifexpression = "";
- }
- String refp = _xifexpression;
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append(typeName, " ");
- _builder.append(refp, " ");
- _builder.append(" ");
- String _name = msg.getName();
- _builder.append(_name, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("}");
- _builder.newLine();
- String _portClassName = this._roomExtensions.getPortClassName(pc, true);
- _builder.append(_portClassName, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/* data driven receive port (regular) */");
- _builder.newLine();
- _builder.append("typedef struct {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("const ");
- String _portClassName_1 = this._roomExtensions.getPortClassName(pc, true);
- _builder.append(_portClassName_1, " ");
- _builder.append("* peer;");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- String _portClassName_2 = this._roomExtensions.getPortClassName(pc, false);
- _builder.append(_portClassName_2, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- {
- for(final Message message : sentMsgs) {
- VarDecl _data_2 = message.getData();
- boolean hasData = (!Objects.equal(_data_2, null));
- _builder.newLineIfNotEmpty();
- String _xifexpression_1 = null;
- if (hasData) {
- VarDecl _data_3 = message.getData();
- RefableType _refType_2 = _data_3.getRefType();
- DataType _type_1 = _refType_2.getType();
- String _typeName = this._typeHelpers.typeName(_type_1);
- _xifexpression_1 = _typeName;
- } else {
- _xifexpression_1 = "";
- }
- String typeName_1 = _xifexpression_1;
- _builder.newLineIfNotEmpty();
- String _xifexpression_2 = null;
- boolean _and = false;
- if (!hasData) {
- _and = false;
- } else {
- VarDecl _data_4 = message.getData();
- RefableType _refType_3 = _data_4.getRefType();
- DataType _type_2 = _refType_3.getType();
- boolean _not = (!(_type_2 instanceof PrimitiveType));
- _and = (hasData && _not);
- }
- if (_and) {
- _xifexpression_2 = "*";
- } else {
- _xifexpression_2 = "";
- }
- String refp_1 = _xifexpression_2;
- _builder.newLineIfNotEmpty();
- String _xifexpression_3 = null;
- if (hasData) {
- String _plus = (", " + typeName_1);
- String _plus_1 = (_plus + refp_1);
- String _plus_2 = (_plus_1 + " data");
- _xifexpression_3 = _plus_2;
- } else {
- _xifexpression_3 = "";
- }
- String data = _xifexpression_3;
- _builder.newLineIfNotEmpty();
- String _portClassName_3 = this._roomExtensions.getPortClassName(pc, true);
- String _name_1 = message.getName();
- String _messageSetterSignature = this.messageSetterSignature(_portClassName_3, _name_1, data);
- _builder.append(_messageSetterSignature, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- String _portClassName_4 = this._roomExtensions.getPortClassName(pc, false);
- String _name_2 = message.getName();
- String _messageGetterSignature = this.messageGetterSignature(_portClassName_4, _name_2, typeName_1);
- _builder.append(_messageGetterSignature, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private CharSequence genDataDrivenPortSources(final ProtocolClass pc) {
- CharSequence _xblockexpression = null;
- {
- List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
- final Function1<Message,Boolean> _function = new Function1<Message,Boolean>() {
- public Boolean apply(final Message m) {
- VarDecl _data = m.getData();
- boolean _notEquals = (!Objects.equal(_data, null));
- return Boolean.valueOf(_notEquals);
- }
- };
- Iterable<Message> messages = IterableExtensions.<Message>filter(_allIncomingMessages, _function);
- StringConcatenation _builder = new StringConcatenation();
- {
- for(final Message message : messages) {
- VarDecl _data = message.getData();
- RefableType _refType = _data.getRefType();
- DataType _type = _refType.getType();
- String typeName = this._typeHelpers.typeName(_type);
- _builder.newLineIfNotEmpty();
- String _xifexpression = null;
- VarDecl _data_1 = message.getData();
- RefableType _refType_1 = _data_1.getRefType();
- DataType _type_1 = _refType_1.getType();
- boolean _not = (!(_type_1 instanceof PrimitiveType));
- if (_not) {
- _xifexpression = "*";
- } else {
- _xifexpression = "";
- }
- String refp = _xifexpression;
- _builder.newLineIfNotEmpty();
- String _plus = (", " + typeName);
- String _plus_1 = (_plus + refp);
- String data = (_plus_1 + " data");
- _builder.newLineIfNotEmpty();
- String _portClassName = this._roomExtensions.getPortClassName(pc, true);
- String _name = message.getName();
- String _messageSetterSignature = this.messageSetterSignature(_portClassName, _name, data);
- _builder.append(_messageSetterSignature, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("self->");
- String _name_1 = message.getName();
- _builder.append(_name_1, " ");
- _builder.append(" = data;");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- String _portClassName_1 = this._roomExtensions.getPortClassName(pc, false);
- String _name_2 = message.getName();
- String _messageGetterSignature = this.messageGetterSignature(_portClassName_1, _name_2, typeName);
- _builder.append(_messageGetterSignature, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("return self->peer->");
- String _name_3 = message.getName();
- _builder.append(_name_3, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private CharSequence portClassSource(final ProtocolClass pc, final Boolean conj) {
- CharSequence _xblockexpression = null;
- {
- String portClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue());
- String replPortClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue(), true);
- List<Message> _xifexpression = null;
- if ((conj).booleanValue()) {
- List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
- _xifexpression = _allIncomingMessages;
- } else {
- List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
- _xifexpression = _allOutgoingMessages;
- }
- List<Message> messages = _xifexpression;
- String _xifexpression_1 = null;
- if ((conj).booleanValue()) {
- _xifexpression_1 = "IN_";
- } else {
- _xifexpression_1 = "OUT_";
- }
- String dir = _xifexpression_1;
- StringConcatenation _builder = new StringConcatenation();
- {
- for(final Message message : messages) {
- VarDecl _data = message.getData();
- boolean hasData = (!Objects.equal(_data, null));
- _builder.newLineIfNotEmpty();
- String _xifexpression_2 = null;
- if (hasData) {
- VarDecl _data_1 = message.getData();
- RefableType _refType = _data_1.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- _xifexpression_2 = _typeName;
- } else {
- _xifexpression_2 = "";
- }
- String typeName = _xifexpression_2;
- _builder.newLineIfNotEmpty();
- String _xifexpression_3 = null;
- boolean _and = false;
- if (!hasData) {
- _and = false;
- } else {
- VarDecl _data_2 = message.getData();
- RefableType _refType_1 = _data_2.getRefType();
- boolean _isRef = _refType_1.isRef();
- _and = (hasData && _isRef);
- }
- if (_and) {
- _xifexpression_3 = "*";
- } else {
- _xifexpression_3 = "";
- }
- String refp = _xifexpression_3;
- _builder.newLineIfNotEmpty();
- String _xifexpression_4 = null;
- boolean _and_1 = false;
- if (!hasData) {
- _and_1 = false;
- } else {
- boolean _or = false;
- VarDecl _data_3 = message.getData();
- RefableType _refType_2 = _data_3.getRefType();
- DataType _type_1 = _refType_2.getType();
- boolean _not = (!(_type_1 instanceof PrimitiveType));
- if (_not) {
- _or = true;
- } else {
- VarDecl _data_4 = message.getData();
- RefableType _refType_3 = _data_4.getRefType();
- boolean _isRef_1 = _refType_3.isRef();
- _or = (_not || _isRef_1);
- }
- _and_1 = (hasData && _or);
- }
- if (_and_1) {
- _xifexpression_4 = "*";
- } else {
- _xifexpression_4 = "";
- }
- String refpd = _xifexpression_4;
- _builder.newLineIfNotEmpty();
- String _xifexpression_5 = null;
- boolean _and_2 = false;
- boolean _and_3 = false;
- if (!hasData) {
- _and_3 = false;
- } else {
- VarDecl _data_5 = message.getData();
- RefableType _refType_4 = _data_5.getRefType();
- DataType _type_2 = _refType_4.getType();
- boolean _not_1 = (!(_type_2 instanceof PrimitiveType));
- _and_3 = (hasData && _not_1);
- }
- if (!_and_3) {
- _and_2 = false;
- } else {
- VarDecl _data_6 = message.getData();
- RefableType _refType_5 = _data_6.getRefType();
- boolean _isRef_2 = _refType_5.isRef();
- boolean _not_2 = (!_isRef_2);
- _and_2 = (_and_3 && _not_2);
- }
- if (_and_2) {
- _xifexpression_5 = "";
- } else {
- _xifexpression_5 = "&";
- }
- String refa = _xifexpression_5;
- _builder.newLineIfNotEmpty();
- String _xifexpression_6 = null;
- if (hasData) {
- String _plus = (", " + typeName);
- String _plus_1 = (_plus + refpd);
- String _plus_2 = (_plus_1 + " data");
- _xifexpression_6 = _plus_2;
- } else {
- _xifexpression_6 = "";
- }
- String data = _xifexpression_6;
- _builder.newLineIfNotEmpty();
- String _xifexpression_7 = null;
- if (hasData) {
- _xifexpression_7 = ", data";
- } else {
- _xifexpression_7 = "";
- }
- String dataCall = _xifexpression_7;
- _builder.newLineIfNotEmpty();
- MessageHandler hdlr = this._roomExtensions.getSendHandler(message, (conj).booleanValue());
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- String _name = message.getName();
- String _messageSignature = this.messageSignature(portClassName, _name, "", data);
- _builder.append(_messageSignature, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- {
- boolean _notEquals = (!Objects.equal(hdlr, null));
- if (_notEquals) {
- _builder.append("\t");
- {
- DetailCode _detailCode = hdlr.getDetailCode();
- EList<String> _commands = _detailCode.getCommands();
- for(final String command : _commands) {
- _builder.append("\t");
- _builder.append(command, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- } else {
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
- _builder.append(portClassName, " ");
- _builder.append("\", \"");
- String _name_1 = message.getName();
- _builder.append(_name_1, " ");
- _builder.append("\")");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- String _name_2 = pc.getName();
- String _name_3 = message.getName();
- String _plus_3 = (dir + _name_3);
- String _memberInUse = this._cExtensions.memberInUse(_name_2, _plus_3);
- String _plus_4 = (typeName + refp);
- String _plus_5 = (refa + "data");
- String _sendMessageCall = this.sendMessageCall(hasData, "self", _memberInUse, _plus_4, _plus_5);
- _builder.append(_sendMessageCall, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
- _builder.newLine();
- }
- }
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- String _name_4 = message.getName();
- String _messageSignature_1 = this.messageSignature(replPortClassName, _name_4, "_broadcast", data);
- _builder.append(_messageSignature_1, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- {
- boolean _notEquals_1 = (!Objects.equal(hdlr, null));
- if (_notEquals_1) {
- _builder.append("\t");
- _builder.append("int i;");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("for (i=0; i<((etReplPort*)self)->size; ++i) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append(portClassName, " ");
- _builder.append("_");
- String _name_5 = message.getName();
- _builder.append(_name_5, " ");
- _builder.append("((etPort*)&((etReplPort*)self)->ports[i]");
- _builder.append(dataCall, " ");
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}\t\t\t\t\t");
- _builder.newLine();
- } else {
- _builder.append("\t");
- _builder.append("int i;");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
- _builder.append(replPortClassName, " ");
- _builder.append("\", \"");
- String _name_6 = message.getName();
- _builder.append(_name_6, " ");
- _builder.append("\")");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("for (i=0; i<((etReplPort*)self)->size; ++i) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- String _name_7 = pc.getName();
- String _name_8 = message.getName();
- String _plus_6 = (dir + _name_8);
- String _memberInUse_1 = this._cExtensions.memberInUse(_name_7, _plus_6);
- String _plus_7 = (typeName + refp);
- String _plus_8 = (refa + "data");
- String _sendMessageCall_1 = this.sendMessageCall(hasData, "((etPort*)&((etReplPort*)self)->ports[i])", _memberInUse_1, _plus_7, _plus_8);
- _builder.append(_sendMessageCall_1, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
- _builder.newLine();
- }
- }
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- String _name_9 = message.getName();
- String _plus_9 = (", int idx" + data);
- String _messageSignature_2 = this.messageSignature(replPortClassName, _name_9, "", _plus_9);
- _builder.append(_messageSignature_2, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- {
- boolean _notEquals_2 = (!Objects.equal(hdlr, null));
- if (_notEquals_2) {
- _builder.append("\t");
- _builder.append(portClassName, " ");
- _builder.append("_");
- String _name_10 = message.getName();
- _builder.append(_name_10, " ");
- _builder.append("((etPort*)&((etReplPort*)self)->ports[idx]");
- _builder.append(dataCall, " ");
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- } else {
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
- _builder.append(replPortClassName, " ");
- _builder.append("\", \"");
- String _name_11 = message.getName();
- _builder.append(_name_11, " ");
- _builder.append("\")");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("if (0<=idx && idx<((etReplPort*)self)->size) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- String _name_12 = pc.getName();
- String _name_13 = message.getName();
- String _plus_10 = (dir + _name_13);
- String _memberInUse_2 = this._cExtensions.memberInUse(_name_12, _plus_10);
- String _plus_11 = (typeName + refp);
- String _plus_12 = (refa + "data");
- String _sendMessageCall_2 = this.sendMessageCall(hasData, "((etPort*)&((etReplPort*)self)->ports[idx])", _memberInUse_2, _plus_11, _plus_12);
- _builder.append(_sendMessageCall_2, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
- _builder.newLine();
- }
- }
- _builder.append("}");
- _builder.newLine();
- }
- }
- _builder.newLine();
- {
- PortClass _portClass = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- boolean _notEquals_3 = (!Objects.equal(_portClass, null));
- if (_notEquals_3) {
- PortClass _portClass_1 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- EList<PortOperation> _operations = _portClass_1.getOperations();
- CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(_operations, portClassName);
- _builder.append(_operationsImplementation, "");
- _builder.newLineIfNotEmpty();
- PortClass _portClass_2 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- EList<PortOperation> _operations_1 = _portClass_2.getOperations();
- CharSequence _operationsImplementation_1 = this._procedureHelpers.operationsImplementation(_operations_1, replPortClassName);
- _builder.append(_operationsImplementation_1, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _builder.append("// getReplication");
- _builder.newLine();
- _builder.append("etInt32 ");
- _builder.append(replPortClassName, "");
- _builder.append("_getReplication(const ");
- _builder.append(replPortClassName, "");
- _builder.append("* self) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("return ((etReplPort*)self)->size;");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- {
- boolean _handlesReceive = this._roomExtensions.handlesReceive(pc, (conj).booleanValue());
- if (_handlesReceive) {
- CharSequence _genReceiveHandlers = this.genReceiveHandlers(pc, conj);
- _builder.append(_genReceiveHandlers, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private String sendMessageCall(final boolean hasData, final String self, final String msg, final String typeName, final String data) {
- String _xifexpression = null;
- if (hasData) {
- String _plus = ("etPort_sendMessage(" + self);
- String _plus_1 = (_plus + ", ");
- String _plus_2 = (_plus_1 + msg);
- String _plus_3 = (_plus_2 + ", sizeof(");
- String _plus_4 = (_plus_3 + typeName);
- String _plus_5 = (_plus_4 + "), ");
- String _plus_6 = (_plus_5 + data);
- String _plus_7 = (_plus_6 + ");");
- _xifexpression = _plus_7;
- } else {
- String _plus_8 = ("etPort_sendMessage(" + self);
- String _plus_9 = (_plus_8 + ", ");
- String _plus_10 = (_plus_9 + msg);
- String _plus_11 = (_plus_10 + ", 0, NULL);");
- _xifexpression = _plus_11;
- }
- return _xifexpression;
- }
-
- private String messageSignature(final String className, final String messageName, final String methodSuffix, final String data) {
- String _plus = ("void " + className);
- String _plus_1 = (_plus + "_");
- String _plus_2 = (_plus_1 + messageName);
- String _plus_3 = (_plus_2 + methodSuffix);
- String _plus_4 = (_plus_3 + "(const ");
- String _plus_5 = (_plus_4 + className);
- String _plus_6 = (_plus_5 + "* self");
- String _plus_7 = (_plus_6 + data);
- String _plus_8 = (_plus_7 + ")");
- return _plus_8;
- }
-
- private String messageSetterSignature(final String className, final String messageName, final String data) {
- String _plus = ("void " + className);
- String _plus_1 = (_plus + "_");
- String _plus_2 = (_plus_1 + messageName);
- String _plus_3 = (_plus_2 + "_set(");
- String _plus_4 = (_plus_3 + className);
- String _plus_5 = (_plus_4 + "* self");
- String _plus_6 = (_plus_5 + data);
- String _plus_7 = (_plus_6 + ")");
- return _plus_7;
- }
-
- private String messageGetterSignature(final String className, final String messageName, final String type) {
- String _plus = (type + " ");
- String _plus_1 = (_plus + className);
- String _plus_2 = (_plus_1 + "_");
- String _plus_3 = (_plus_2 + messageName);
- String _plus_4 = (_plus_3 + "_get(const ");
- String _plus_5 = (_plus_4 + className);
- String _plus_6 = (_plus_5 + "* const self)");
- return _plus_6;
- }
-
- private CharSequence genReceiveHandlers(final ProtocolClass pc, final Boolean conj) {
- CharSequence _xblockexpression = null;
- {
- String portClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue());
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/* receiver handlers */");
- _builder.newLine();
- {
- List<MessageHandler> _receiveHandlers = this._roomExtensions.getReceiveHandlers(pc, (conj).booleanValue());
- for(final MessageHandler h : _receiveHandlers) {
- _builder.append("void ");
- _builder.append(portClassName, "");
- _builder.append("_");
- Message _msg = h.getMsg();
- String _name = _msg.getName();
- _builder.append(_name, "");
- _builder.append("_receiveHandler(");
- _builder.append(portClassName, "");
- _builder.append("* self, const etMessage* msg, void * actor, etActorReceiveMessage receiveMessageFunc){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- DetailCode _detailCode = h.getDetailCode();
- CharSequence _userCode = this._procedureHelpers.userCode(_detailCode);
- _builder.append(_userCode, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("/* hand over the message to the actor: */");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("/* (*receiveMessageFunc)(actor, self, msg); */");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private CharSequence generateDebugHelpersImplementation(final Root root, final ProtocolClass pc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.newLine();
- _builder.append("/* message names as strings for debugging (generate MSC) */");
- _builder.newLine();
- _builder.append("static const char* const ");
- String _name = pc.getName();
- _builder.append(_name, "");
- _builder.append("_messageStrings[] = {\"MIN\", ");
- {
- List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
- for(final Message m : _allOutgoingMessages) {
- _builder.append("\"");
- String _name_1 = m.getName();
- _builder.append(_name_1, "");
- _builder.append("\",");
- }
- }
- {
- List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
- for(final Message m_1 : _allIncomingMessages) {
- _builder.append("\"");
- String _name_2 = m_1.getName();
- _builder.append(_name_2, "");
- _builder.append("\", ");
- }
- }
- _builder.append("\"MAX\"};");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("const char* ");
- String _name_3 = pc.getName();
- _builder.append(_name_3, "");
- _builder.append("_getMessageString(int msg_id) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("if (msg_id<");
- String _name_4 = pc.getName();
- _builder.append(_name_4, " ");
- _builder.append("_MSG_MIN || msg_id>");
- String _name_5 = pc.getName();
- _builder.append(_name_5, " ");
- _builder.append("_MSG_MAX+1){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("/* id out of range */");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("return \"Message ID out of range\";");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("else{");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("return ");
- String _name_6 = pc.getName();
- _builder.append(_name_6, " ");
- _builder.append("_messageStrings[msg_id];");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- return _builder;
- }
-}
+package org.eclipse.etrice.generator.c.gen;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.HashSet;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.CommunicationType;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DataType;
+import org.eclipse.etrice.core.room.DetailCode;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.MessageHandler;
+import org.eclipse.etrice.core.room.PortClass;
+import org.eclipse.etrice.core.room.PortOperation;
+import org.eclipse.etrice.core.room.PrimitiveType;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.core.room.VarDecl;
+import org.eclipse.etrice.generator.c.gen.CExtensions;
+import org.eclipse.etrice.generator.generic.GenericProtocolClassGenerator;
+import org.eclipse.etrice.generator.generic.ProcedureHelpers;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.etrice.generator.generic.TypeHelpers;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class ProtocolClassGen extends GenericProtocolClassGenerator {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private CExtensions _cExtensions;
+
+ @Inject
+ private RoomExtensions _roomExtensions;
+
+ @Inject
+ private ProcedureHelpers _procedureHelpers;
+
+ @Inject
+ private TypeHelpers _typeHelpers;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root) {
+ EList<ProtocolClass> _usedProtocolClasses = root.getUsedProtocolClasses();
+ for (final ProtocolClass pc : _usedProtocolClasses) {
+ {
+ String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(pc);
+ String _path = this._roomExtensions.getPath(pc);
+ String path = (_generationTargetPath + _path);
+ String _cHeaderFileName = this._cExtensions.getCHeaderFileName(pc);
+ String _plus = ("generating ProtocolClass header \'" + _cHeaderFileName);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ this.fileAccess.setOutputPath(path);
+ String _cHeaderFileName_1 = this._cExtensions.getCHeaderFileName(pc);
+ CharSequence _generateHeaderFile = this.generateHeaderFile(root, pc);
+ this.fileAccess.generateFile(_cHeaderFileName_1, _generateHeaderFile);
+ String _cSourceFileName = this._cExtensions.getCSourceFileName(pc);
+ String _plus_4 = ("generating ProtocolClass source \'" + _cSourceFileName);
+ String _plus_5 = (_plus_4 + "\' in \'");
+ String _plus_6 = (_plus_5 + path);
+ String _plus_7 = (_plus_6 + "\'");
+ this.logger.logInfo(_plus_7);
+ this.fileAccess.setOutputPath(path);
+ String _cSourceFileName_1 = this._cExtensions.getCSourceFileName(pc);
+ CharSequence _generateSourceFile = this.generateSourceFile(root, pc);
+ this.fileAccess.generateFile(_cSourceFileName_1, _generateSourceFile);
+ }
+ }
+ }
+
+ private CharSequence generateHeaderFile(final Root root, final ProtocolClass pc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @author generated by eTrice");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* Header File of ProtocolClass ");
+ String _name = pc.getName();
+ _builder.append(_name, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("* ");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.newLine();
+ String _name_1 = pc.getName();
+ CharSequence _generateIncludeGuardBegin = this._cExtensions.generateIncludeGuardBegin(_name_1);
+ _builder.append(_generateIncludeGuardBegin, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("#include \"etDatatypes.h\"");
+ _builder.newLine();
+ _builder.append("#include \"modelbase/etPort.h\"");
+ _builder.newLine();
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(pc, 1);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ HashSet<DataClass> _referencedDataClasses = root.getReferencedDataClasses(pc);
+ for(final DataClass dataClass : _referencedDataClasses) {
+ _builder.append("#include \"");
+ String _name_2 = dataClass.getName();
+ _builder.append(_name_2, "");
+ _builder.append(".h\"");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ {
+ CommunicationType _commType = pc.getCommType();
+ boolean _equals = Objects.equal(_commType, CommunicationType.EVENT_DRIVEN);
+ if (_equals) {
+ _builder.newLine();
+ _builder.append("/* message IDs */");
+ _builder.newLine();
+ String _genMessageIDs = this.genMessageIDs(pc);
+ _builder.append(_genMessageIDs, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/*--------------------- port structs and methods */");
+ _builder.newLine();
+ CharSequence _portClassHeader = this.portClassHeader(pc, Boolean.valueOf(false));
+ _builder.append(_portClassHeader, "");
+ _builder.newLineIfNotEmpty();
+ CharSequence _portClassHeader_1 = this.portClassHeader(pc, Boolean.valueOf(true));
+ _builder.append(_portClassHeader_1, "");
+ _builder.newLineIfNotEmpty();
+ } else {
+ CommunicationType _commType_1 = pc.getCommType();
+ boolean _equals_1 = Objects.equal(_commType_1, CommunicationType.DATA_DRIVEN);
+ if (_equals_1) {
+ _builder.append("/*--------------------- port structs and methods */");
+ _builder.newLine();
+ CharSequence _genDataDrivenPortHeaders = this.genDataDrivenPortHeaders(pc);
+ _builder.append(_genDataDrivenPortHeaders, "");
+ _builder.newLineIfNotEmpty();
+ } else {
+ CommunicationType _commType_2 = pc.getCommType();
+ boolean _equals_2 = Objects.equal(_commType_2, CommunicationType.SYNCHRONOUS);
+ if (_equals_2) {
+ _builder.append("#error \"synchronoue protocols not implemented yet\"");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ _builder.append("/*--------------------- debug helpers */");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("/* get message string for message id */");
+ _builder.newLine();
+ _builder.append("const char* ");
+ String _name_3 = pc.getName();
+ _builder.append(_name_3, "");
+ _builder.append("_getMessageString(int msg_id);");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ CharSequence _userCode_1 = this._procedureHelpers.userCode(pc, 2);
+ _builder.append(_userCode_1, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ String _name_4 = pc.getName();
+ CharSequence _generateIncludeGuardEnd = this._cExtensions.generateIncludeGuardEnd(_name_4);
+ _builder.append(_generateIncludeGuardEnd, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ return _builder;
+ }
+
+ private CharSequence generateSourceFile(final Root root, final ProtocolClass pc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @author generated by eTrice");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* Source File of ProtocolClass ");
+ String _name = pc.getName();
+ _builder.append(_name, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("* ");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("#include \"");
+ String _cHeaderFileName = this._cExtensions.getCHeaderFileName(pc);
+ _builder.append(_cHeaderFileName, "");
+ _builder.append("\"");
+ _builder.newLineIfNotEmpty();
+ _builder.append("#include \"debugging/etMSCLogger.h\"");
+ _builder.newLine();
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(pc, 3);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/*--------------------- port methods */");
+ _builder.newLine();
+ {
+ CommunicationType _commType = pc.getCommType();
+ boolean _equals = Objects.equal(_commType, CommunicationType.EVENT_DRIVEN);
+ if (_equals) {
+ CharSequence _portClassSource = this.portClassSource(pc, Boolean.valueOf(false));
+ _builder.append(_portClassSource, "");
+ _builder.newLineIfNotEmpty();
+ CharSequence _portClassSource_1 = this.portClassSource(pc, Boolean.valueOf(true));
+ _builder.append(_portClassSource_1, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/*--------------------- debug helpers */");
+ _builder.newLine();
+ CharSequence _generateDebugHelpersImplementation = this.generateDebugHelpersImplementation(root, pc);
+ _builder.append(_generateDebugHelpersImplementation, "");
+ _builder.newLineIfNotEmpty();
+ } else {
+ CommunicationType _commType_1 = pc.getCommType();
+ boolean _equals_1 = Objects.equal(_commType_1, CommunicationType.DATA_DRIVEN);
+ if (_equals_1) {
+ CharSequence _genDataDrivenPortSources = this.genDataDrivenPortSources(pc);
+ _builder.append(_genDataDrivenPortSources, "");
+ _builder.newLineIfNotEmpty();
+ } else {
+ CommunicationType _commType_2 = pc.getCommType();
+ boolean _equals_2 = Objects.equal(_commType_2, CommunicationType.SYNCHRONOUS);
+ if (_equals_2) {
+ _builder.append("#error \"synchronous protocols not implemented yet\"");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ return _builder;
+ }
+
+ private CharSequence portClassHeader(final ProtocolClass pc, final Boolean conj) {
+ CharSequence _xblockexpression = null;
+ {
+ String portClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue());
+ String replPortClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue(), true);
+ List<Message> _xifexpression = null;
+ if ((conj).booleanValue()) {
+ List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
+ _xifexpression = _allIncomingMessages;
+ } else {
+ List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
+ _xifexpression = _allOutgoingMessages;
+ }
+ List<Message> messages = _xifexpression;
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("typedef etPort ");
+ _builder.append(portClassName, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("typedef etReplPort ");
+ _builder.append(replPortClassName, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ PortClass _portClass = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ boolean _notEquals = (!Objects.equal(_portClass, null));
+ if (_notEquals) {
+ {
+ PortClass _portClass_1 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ EList<Attribute> _attributes = _portClass_1.getAttributes();
+ boolean _isEmpty = _attributes.isEmpty();
+ boolean _not = (!_isEmpty);
+ if (_not) {
+ _builder.append("/* variable part of PortClass (RAM) */");
+ _builder.newLine();
+ _builder.append("typedef struct ");
+ _builder.append(portClassName, "");
+ _builder.append("_var ");
+ _builder.append(portClassName, "");
+ _builder.append("_var; ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("struct ");
+ _builder.append(portClassName, "");
+ _builder.append("_var {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ PortClass _portClass_2 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ EList<Attribute> _attributes_1 = _portClass_2.getAttributes();
+ CharSequence _attributes_2 = this._procedureHelpers.attributes(_attributes_1);
+ _builder.append(_attributes_2, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("};");
+ _builder.newLine();
+ {
+ PortClass _portClass_3 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ EList<Attribute> _attributes_3 = _portClass_3.getAttributes();
+ for(final Attribute a : _attributes_3) {
+ {
+ String _defaultValueLiteral = a.getDefaultValueLiteral();
+ boolean _notEquals_1 = (!Objects.equal(_defaultValueLiteral, null));
+ if (_notEquals_1) {
+ String _plus = (portClassName + " ");
+ String _name = a.getName();
+ String _plus_1 = (_plus + _name);
+ String _plus_2 = (_plus_1 + ": Attribute initialization not supported in C");
+ this.logger.logInfo(_plus_2);
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ {
+ for(final Message message : messages) {
+ VarDecl _data = message.getData();
+ boolean hasData = (!Objects.equal(_data, null));
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_1 = null;
+ if (hasData) {
+ VarDecl _data_1 = message.getData();
+ RefableType _refType = _data_1.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ _xifexpression_1 = _typeName;
+ } else {
+ _xifexpression_1 = "";
+ }
+ String typeName = _xifexpression_1;
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_2 = null;
+ boolean _and = false;
+ if (!hasData) {
+ _and = false;
+ } else {
+ boolean _or = false;
+ VarDecl _data_2 = message.getData();
+ RefableType _refType_1 = _data_2.getRefType();
+ DataType _type_1 = _refType_1.getType();
+ boolean _not_1 = (!(_type_1 instanceof PrimitiveType));
+ if (_not_1) {
+ _or = true;
+ } else {
+ VarDecl _data_3 = message.getData();
+ RefableType _refType_2 = _data_3.getRefType();
+ boolean _isRef = _refType_2.isRef();
+ _or = (_not_1 || _isRef);
+ }
+ _and = (hasData && _or);
+ }
+ if (_and) {
+ _xifexpression_2 = "*";
+ } else {
+ _xifexpression_2 = "";
+ }
+ String refp = _xifexpression_2;
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_3 = null;
+ if (hasData) {
+ String _plus_3 = (", " + typeName);
+ String _plus_4 = (_plus_3 + refp);
+ String _plus_5 = (_plus_4 + " data");
+ _xifexpression_3 = _plus_5;
+ } else {
+ _xifexpression_3 = "";
+ }
+ String data = _xifexpression_3;
+ _builder.newLineIfNotEmpty();
+ String _name_1 = message.getName();
+ String _messageSignature = this.messageSignature(portClassName, _name_1, "", data);
+ _builder.append(_messageSignature, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ String _name_2 = message.getName();
+ String _messageSignature_1 = this.messageSignature(replPortClassName, _name_2, "_broadcast", data);
+ _builder.append(_messageSignature_1, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ String _name_3 = message.getName();
+ String _plus_6 = (", int idx" + data);
+ String _messageSignature_2 = this.messageSignature(replPortClassName, _name_3, "", _plus_6);
+ _builder.append(_messageSignature_2, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ {
+ PortClass _portClass_4 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ boolean _notEquals_2 = (!Objects.equal(_portClass_4, null));
+ if (_notEquals_2) {
+ PortClass _portClass_5 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ EList<PortOperation> _operations = _portClass_5.getOperations();
+ CharSequence _operationsDeclaration = this._procedureHelpers.operationsDeclaration(_operations, portClassName);
+ _builder.append(_operationsDeclaration, "");
+ _builder.newLineIfNotEmpty();
+ PortClass _portClass_6 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ EList<PortOperation> _operations_1 = _portClass_6.getOperations();
+ CharSequence _operationsDeclaration_1 = this._procedureHelpers.operationsDeclaration(_operations_1, replPortClassName);
+ _builder.append(_operationsDeclaration_1, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ {
+ boolean _handlesReceive = this._roomExtensions.handlesReceive(pc, (conj).booleanValue());
+ if (_handlesReceive) {
+ {
+ List<MessageHandler> _receiveHandlers = this._roomExtensions.getReceiveHandlers(pc, (conj).booleanValue());
+ for(final MessageHandler h : _receiveHandlers) {
+ _builder.append("void ");
+ _builder.append(portClassName, "");
+ _builder.append("_");
+ Message _msg = h.getMsg();
+ String _name_4 = _msg.getName();
+ _builder.append(_name_4, "");
+ _builder.append("_receiveHandler(");
+ _builder.append(portClassName, "");
+ _builder.append("* self, const etMessage* msg, void * actor, etActorReceiveMessage receiveMessageFunc);");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.append("etInt32 ");
+ _builder.append(replPortClassName, "");
+ _builder.append("_getReplication(const ");
+ _builder.append(replPortClassName, "");
+ _builder.append("* self);");
+ _builder.newLineIfNotEmpty();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private CharSequence genDataDrivenPortHeaders(final ProtocolClass pc) {
+ CharSequence _xblockexpression = null;
+ {
+ List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
+ final Function1<Message,Boolean> _function = new Function1<Message,Boolean>() {
+ public Boolean apply(final Message m) {
+ VarDecl _data = m.getData();
+ boolean _notEquals = (!Objects.equal(_data, null));
+ return Boolean.valueOf(_notEquals);
+ }
+ };
+ Iterable<Message> sentMsgs = IterableExtensions.<Message>filter(_allIncomingMessages, _function);
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/* data driven send port (conjugated) */");
+ _builder.newLine();
+ _builder.append("typedef struct {");
+ _builder.newLine();
+ {
+ for(final Message msg : sentMsgs) {
+ _builder.append("\t");
+ VarDecl _data = msg.getData();
+ RefableType _refType = _data.getRefType();
+ DataType _type = _refType.getType();
+ String typeName = this._typeHelpers.typeName(_type);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ String _xifexpression = null;
+ VarDecl _data_1 = msg.getData();
+ RefableType _refType_1 = _data_1.getRefType();
+ boolean _isRef = _refType_1.isRef();
+ if (_isRef) {
+ _xifexpression = "*";
+ } else {
+ _xifexpression = "";
+ }
+ String refp = _xifexpression;
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append(typeName, " ");
+ _builder.append(refp, " ");
+ _builder.append(" ");
+ String _name = msg.getName();
+ _builder.append(_name, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ String _portClassName = this._roomExtensions.getPortClassName(pc, true);
+ _builder.append(_portClassName, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/* data driven receive port (regular) */");
+ _builder.newLine();
+ _builder.append("typedef struct {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("const ");
+ String _portClassName_1 = this._roomExtensions.getPortClassName(pc, true);
+ _builder.append(_portClassName_1, " ");
+ _builder.append("* peer;");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ String _portClassName_2 = this._roomExtensions.getPortClassName(pc, false);
+ _builder.append(_portClassName_2, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ for(final Message message : sentMsgs) {
+ VarDecl _data_2 = message.getData();
+ boolean hasData = (!Objects.equal(_data_2, null));
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_1 = null;
+ if (hasData) {
+ VarDecl _data_3 = message.getData();
+ RefableType _refType_2 = _data_3.getRefType();
+ DataType _type_1 = _refType_2.getType();
+ String _typeName = this._typeHelpers.typeName(_type_1);
+ _xifexpression_1 = _typeName;
+ } else {
+ _xifexpression_1 = "";
+ }
+ String typeName_1 = _xifexpression_1;
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_2 = null;
+ boolean _and = false;
+ if (!hasData) {
+ _and = false;
+ } else {
+ VarDecl _data_4 = message.getData();
+ RefableType _refType_3 = _data_4.getRefType();
+ DataType _type_2 = _refType_3.getType();
+ boolean _not = (!(_type_2 instanceof PrimitiveType));
+ _and = (hasData && _not);
+ }
+ if (_and) {
+ _xifexpression_2 = "*";
+ } else {
+ _xifexpression_2 = "";
+ }
+ String refp_1 = _xifexpression_2;
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_3 = null;
+ if (hasData) {
+ String _plus = (", " + typeName_1);
+ String _plus_1 = (_plus + refp_1);
+ String _plus_2 = (_plus_1 + " data");
+ _xifexpression_3 = _plus_2;
+ } else {
+ _xifexpression_3 = "";
+ }
+ String data = _xifexpression_3;
+ _builder.newLineIfNotEmpty();
+ String _portClassName_3 = this._roomExtensions.getPortClassName(pc, true);
+ String _name_1 = message.getName();
+ String _messageSetterSignature = this.messageSetterSignature(_portClassName_3, _name_1, data);
+ _builder.append(_messageSetterSignature, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ String _portClassName_4 = this._roomExtensions.getPortClassName(pc, false);
+ String _name_2 = message.getName();
+ String _messageGetterSignature = this.messageGetterSignature(_portClassName_4, _name_2, typeName_1);
+ _builder.append(_messageGetterSignature, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private CharSequence genDataDrivenPortSources(final ProtocolClass pc) {
+ CharSequence _xblockexpression = null;
+ {
+ List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
+ final Function1<Message,Boolean> _function = new Function1<Message,Boolean>() {
+ public Boolean apply(final Message m) {
+ VarDecl _data = m.getData();
+ boolean _notEquals = (!Objects.equal(_data, null));
+ return Boolean.valueOf(_notEquals);
+ }
+ };
+ Iterable<Message> messages = IterableExtensions.<Message>filter(_allIncomingMessages, _function);
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ for(final Message message : messages) {
+ VarDecl _data = message.getData();
+ RefableType _refType = _data.getRefType();
+ DataType _type = _refType.getType();
+ String typeName = this._typeHelpers.typeName(_type);
+ _builder.newLineIfNotEmpty();
+ String _xifexpression = null;
+ VarDecl _data_1 = message.getData();
+ RefableType _refType_1 = _data_1.getRefType();
+ DataType _type_1 = _refType_1.getType();
+ boolean _not = (!(_type_1 instanceof PrimitiveType));
+ if (_not) {
+ _xifexpression = "*";
+ } else {
+ _xifexpression = "";
+ }
+ String refp = _xifexpression;
+ _builder.newLineIfNotEmpty();
+ String _plus = (", " + typeName);
+ String _plus_1 = (_plus + refp);
+ String data = (_plus_1 + " data");
+ _builder.newLineIfNotEmpty();
+ String _portClassName = this._roomExtensions.getPortClassName(pc, true);
+ String _name = message.getName();
+ String _messageSetterSignature = this.messageSetterSignature(_portClassName, _name, data);
+ _builder.append(_messageSetterSignature, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("self->");
+ String _name_1 = message.getName();
+ _builder.append(_name_1, " ");
+ _builder.append(" = data;");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ String _portClassName_1 = this._roomExtensions.getPortClassName(pc, false);
+ String _name_2 = message.getName();
+ String _messageGetterSignature = this.messageGetterSignature(_portClassName_1, _name_2, typeName);
+ _builder.append(_messageGetterSignature, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("return self->peer->");
+ String _name_3 = message.getName();
+ _builder.append(_name_3, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private CharSequence portClassSource(final ProtocolClass pc, final Boolean conj) {
+ CharSequence _xblockexpression = null;
+ {
+ String portClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue());
+ String replPortClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue(), true);
+ List<Message> _xifexpression = null;
+ if ((conj).booleanValue()) {
+ List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
+ _xifexpression = _allIncomingMessages;
+ } else {
+ List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
+ _xifexpression = _allOutgoingMessages;
+ }
+ List<Message> messages = _xifexpression;
+ String _xifexpression_1 = null;
+ if ((conj).booleanValue()) {
+ _xifexpression_1 = "IN_";
+ } else {
+ _xifexpression_1 = "OUT_";
+ }
+ String dir = _xifexpression_1;
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ for(final Message message : messages) {
+ VarDecl _data = message.getData();
+ boolean hasData = (!Objects.equal(_data, null));
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_2 = null;
+ if (hasData) {
+ VarDecl _data_1 = message.getData();
+ RefableType _refType = _data_1.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ _xifexpression_2 = _typeName;
+ } else {
+ _xifexpression_2 = "";
+ }
+ String typeName = _xifexpression_2;
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_3 = null;
+ boolean _and = false;
+ if (!hasData) {
+ _and = false;
+ } else {
+ VarDecl _data_2 = message.getData();
+ RefableType _refType_1 = _data_2.getRefType();
+ boolean _isRef = _refType_1.isRef();
+ _and = (hasData && _isRef);
+ }
+ if (_and) {
+ _xifexpression_3 = "*";
+ } else {
+ _xifexpression_3 = "";
+ }
+ String refp = _xifexpression_3;
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_4 = null;
+ boolean _and_1 = false;
+ if (!hasData) {
+ _and_1 = false;
+ } else {
+ boolean _or = false;
+ VarDecl _data_3 = message.getData();
+ RefableType _refType_2 = _data_3.getRefType();
+ DataType _type_1 = _refType_2.getType();
+ boolean _not = (!(_type_1 instanceof PrimitiveType));
+ if (_not) {
+ _or = true;
+ } else {
+ VarDecl _data_4 = message.getData();
+ RefableType _refType_3 = _data_4.getRefType();
+ boolean _isRef_1 = _refType_3.isRef();
+ _or = (_not || _isRef_1);
+ }
+ _and_1 = (hasData && _or);
+ }
+ if (_and_1) {
+ _xifexpression_4 = "*";
+ } else {
+ _xifexpression_4 = "";
+ }
+ String refpd = _xifexpression_4;
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_5 = null;
+ boolean _and_2 = false;
+ boolean _and_3 = false;
+ if (!hasData) {
+ _and_3 = false;
+ } else {
+ VarDecl _data_5 = message.getData();
+ RefableType _refType_4 = _data_5.getRefType();
+ DataType _type_2 = _refType_4.getType();
+ boolean _not_1 = (!(_type_2 instanceof PrimitiveType));
+ _and_3 = (hasData && _not_1);
+ }
+ if (!_and_3) {
+ _and_2 = false;
+ } else {
+ VarDecl _data_6 = message.getData();
+ RefableType _refType_5 = _data_6.getRefType();
+ boolean _isRef_2 = _refType_5.isRef();
+ boolean _not_2 = (!_isRef_2);
+ _and_2 = (_and_3 && _not_2);
+ }
+ if (_and_2) {
+ _xifexpression_5 = "";
+ } else {
+ _xifexpression_5 = "&";
+ }
+ String refa = _xifexpression_5;
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_6 = null;
+ if (hasData) {
+ String _plus = (", " + typeName);
+ String _plus_1 = (_plus + refpd);
+ String _plus_2 = (_plus_1 + " data");
+ _xifexpression_6 = _plus_2;
+ } else {
+ _xifexpression_6 = "";
+ }
+ String data = _xifexpression_6;
+ _builder.newLineIfNotEmpty();
+ String _xifexpression_7 = null;
+ if (hasData) {
+ _xifexpression_7 = ", data";
+ } else {
+ _xifexpression_7 = "";
+ }
+ String dataCall = _xifexpression_7;
+ _builder.newLineIfNotEmpty();
+ MessageHandler hdlr = this._roomExtensions.getSendHandler(message, (conj).booleanValue());
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ String _name = message.getName();
+ String _messageSignature = this.messageSignature(portClassName, _name, "", data);
+ _builder.append(_messageSignature, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _notEquals = (!Objects.equal(hdlr, null));
+ if (_notEquals) {
+ _builder.append("\t");
+ {
+ DetailCode _detailCode = hdlr.getDetailCode();
+ EList<String> _commands = _detailCode.getCommands();
+ for(final String command : _commands) {
+ _builder.append("\t");
+ _builder.append(command, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ } else {
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
+ _builder.append(portClassName, " ");
+ _builder.append("\", \"");
+ String _name_1 = message.getName();
+ _builder.append(_name_1, " ");
+ _builder.append("\")");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ String _name_2 = pc.getName();
+ String _name_3 = message.getName();
+ String _plus_3 = (dir + _name_3);
+ String _memberInUse = this._cExtensions.memberInUse(_name_2, _plus_3);
+ String _plus_4 = (typeName + refp);
+ String _plus_5 = (refa + "data");
+ String _sendMessageCall = this.sendMessageCall(hasData, "self", _memberInUse, _plus_4, _plus_5);
+ _builder.append(_sendMessageCall, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
+ _builder.newLine();
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ String _name_4 = message.getName();
+ String _messageSignature_1 = this.messageSignature(replPortClassName, _name_4, "_broadcast", data);
+ _builder.append(_messageSignature_1, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _notEquals_1 = (!Objects.equal(hdlr, null));
+ if (_notEquals_1) {
+ _builder.append("\t");
+ _builder.append("int i;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("for (i=0; i<((etReplPort*)self)->size; ++i) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append(portClassName, " ");
+ _builder.append("_");
+ String _name_5 = message.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("((etPort*)&((etReplPort*)self)->ports[i]");
+ _builder.append(dataCall, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}\t\t\t\t\t");
+ _builder.newLine();
+ } else {
+ _builder.append("\t");
+ _builder.append("int i;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
+ _builder.append(replPortClassName, " ");
+ _builder.append("\", \"");
+ String _name_6 = message.getName();
+ _builder.append(_name_6, " ");
+ _builder.append("\")");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("for (i=0; i<((etReplPort*)self)->size; ++i) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ String _name_7 = pc.getName();
+ String _name_8 = message.getName();
+ String _plus_6 = (dir + _name_8);
+ String _memberInUse_1 = this._cExtensions.memberInUse(_name_7, _plus_6);
+ String _plus_7 = (typeName + refp);
+ String _plus_8 = (refa + "data");
+ String _sendMessageCall_1 = this.sendMessageCall(hasData, "((etPort*)&((etReplPort*)self)->ports[i])", _memberInUse_1, _plus_7, _plus_8);
+ _builder.append(_sendMessageCall_1, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
+ _builder.newLine();
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ String _name_9 = message.getName();
+ String _plus_9 = (", int idx" + data);
+ String _messageSignature_2 = this.messageSignature(replPortClassName, _name_9, "", _plus_9);
+ _builder.append(_messageSignature_2, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _notEquals_2 = (!Objects.equal(hdlr, null));
+ if (_notEquals_2) {
+ _builder.append("\t");
+ _builder.append(portClassName, " ");
+ _builder.append("_");
+ String _name_10 = message.getName();
+ _builder.append(_name_10, " ");
+ _builder.append("((etPort*)&((etReplPort*)self)->ports[idx]");
+ _builder.append(dataCall, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
+ _builder.append(replPortClassName, " ");
+ _builder.append("\", \"");
+ String _name_11 = message.getName();
+ _builder.append(_name_11, " ");
+ _builder.append("\")");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("if (0<=idx && idx<((etReplPort*)self)->size) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ String _name_12 = pc.getName();
+ String _name_13 = message.getName();
+ String _plus_10 = (dir + _name_13);
+ String _memberInUse_2 = this._cExtensions.memberInUse(_name_12, _plus_10);
+ String _plus_11 = (typeName + refp);
+ String _plus_12 = (refa + "data");
+ String _sendMessageCall_2 = this.sendMessageCall(hasData, "((etPort*)&((etReplPort*)self)->ports[idx])", _memberInUse_2, _plus_11, _plus_12);
+ _builder.append(_sendMessageCall_2, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_SYNC_EXIT");
+ _builder.newLine();
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.newLine();
+ {
+ PortClass _portClass = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ boolean _notEquals_3 = (!Objects.equal(_portClass, null));
+ if (_notEquals_3) {
+ PortClass _portClass_1 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ EList<PortOperation> _operations = _portClass_1.getOperations();
+ CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(_operations, portClassName);
+ _builder.append(_operationsImplementation, "");
+ _builder.newLineIfNotEmpty();
+ PortClass _portClass_2 = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ EList<PortOperation> _operations_1 = _portClass_2.getOperations();
+ CharSequence _operationsImplementation_1 = this._procedureHelpers.operationsImplementation(_operations_1, replPortClassName);
+ _builder.append(_operationsImplementation_1, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.append("// getReplication");
+ _builder.newLine();
+ _builder.append("etInt32 ");
+ _builder.append(replPortClassName, "");
+ _builder.append("_getReplication(const ");
+ _builder.append(replPortClassName, "");
+ _builder.append("* self) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("return ((etReplPort*)self)->size;");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ boolean _handlesReceive = this._roomExtensions.handlesReceive(pc, (conj).booleanValue());
+ if (_handlesReceive) {
+ CharSequence _genReceiveHandlers = this.genReceiveHandlers(pc, conj);
+ _builder.append(_genReceiveHandlers, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private String sendMessageCall(final boolean hasData, final String self, final String msg, final String typeName, final String data) {
+ String _xifexpression = null;
+ if (hasData) {
+ String _plus = ("etPort_sendMessage(" + self);
+ String _plus_1 = (_plus + ", ");
+ String _plus_2 = (_plus_1 + msg);
+ String _plus_3 = (_plus_2 + ", sizeof(");
+ String _plus_4 = (_plus_3 + typeName);
+ String _plus_5 = (_plus_4 + "), ");
+ String _plus_6 = (_plus_5 + data);
+ String _plus_7 = (_plus_6 + ");");
+ _xifexpression = _plus_7;
+ } else {
+ String _plus_8 = ("etPort_sendMessage(" + self);
+ String _plus_9 = (_plus_8 + ", ");
+ String _plus_10 = (_plus_9 + msg);
+ String _plus_11 = (_plus_10 + ", 0, NULL);");
+ _xifexpression = _plus_11;
+ }
+ return _xifexpression;
+ }
+
+ private String messageSignature(final String className, final String messageName, final String methodSuffix, final String data) {
+ String _plus = ("void " + className);
+ String _plus_1 = (_plus + "_");
+ String _plus_2 = (_plus_1 + messageName);
+ String _plus_3 = (_plus_2 + methodSuffix);
+ String _plus_4 = (_plus_3 + "(const ");
+ String _plus_5 = (_plus_4 + className);
+ String _plus_6 = (_plus_5 + "* self");
+ String _plus_7 = (_plus_6 + data);
+ String _plus_8 = (_plus_7 + ")");
+ return _plus_8;
+ }
+
+ private String messageSetterSignature(final String className, final String messageName, final String data) {
+ String _plus = ("void " + className);
+ String _plus_1 = (_plus + "_");
+ String _plus_2 = (_plus_1 + messageName);
+ String _plus_3 = (_plus_2 + "_set(");
+ String _plus_4 = (_plus_3 + className);
+ String _plus_5 = (_plus_4 + "* self");
+ String _plus_6 = (_plus_5 + data);
+ String _plus_7 = (_plus_6 + ")");
+ return _plus_7;
+ }
+
+ private String messageGetterSignature(final String className, final String messageName, final String type) {
+ String _plus = (type + " ");
+ String _plus_1 = (_plus + className);
+ String _plus_2 = (_plus_1 + "_");
+ String _plus_3 = (_plus_2 + messageName);
+ String _plus_4 = (_plus_3 + "_get(const ");
+ String _plus_5 = (_plus_4 + className);
+ String _plus_6 = (_plus_5 + "* const self)");
+ return _plus_6;
+ }
+
+ private CharSequence genReceiveHandlers(final ProtocolClass pc, final Boolean conj) {
+ CharSequence _xblockexpression = null;
+ {
+ String portClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue());
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/* receiver handlers */");
+ _builder.newLine();
+ {
+ List<MessageHandler> _receiveHandlers = this._roomExtensions.getReceiveHandlers(pc, (conj).booleanValue());
+ for(final MessageHandler h : _receiveHandlers) {
+ _builder.append("void ");
+ _builder.append(portClassName, "");
+ _builder.append("_");
+ Message _msg = h.getMsg();
+ String _name = _msg.getName();
+ _builder.append(_name, "");
+ _builder.append("_receiveHandler(");
+ _builder.append(portClassName, "");
+ _builder.append("* self, const etMessage* msg, void * actor, etActorReceiveMessage receiveMessageFunc){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ DetailCode _detailCode = h.getDetailCode();
+ CharSequence _userCode = this._procedureHelpers.userCode(_detailCode);
+ _builder.append(_userCode, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("/* hand over the message to the actor: */");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("/* (*receiveMessageFunc)(actor, self, msg); */");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private CharSequence generateDebugHelpersImplementation(final Root root, final ProtocolClass pc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.newLine();
+ _builder.append("/* message names as strings for debugging (generate MSC) */");
+ _builder.newLine();
+ _builder.append("static const char* const ");
+ String _name = pc.getName();
+ _builder.append(_name, "");
+ _builder.append("_messageStrings[] = {\"MIN\", ");
+ {
+ List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
+ for(final Message m : _allOutgoingMessages) {
+ _builder.append("\"");
+ String _name_1 = m.getName();
+ _builder.append(_name_1, "");
+ _builder.append("\",");
+ }
+ }
+ {
+ List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
+ for(final Message m_1 : _allIncomingMessages) {
+ _builder.append("\"");
+ String _name_2 = m_1.getName();
+ _builder.append(_name_2, "");
+ _builder.append("\", ");
+ }
+ }
+ _builder.append("\"MAX\"};");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("const char* ");
+ String _name_3 = pc.getName();
+ _builder.append(_name_3, "");
+ _builder.append("_getMessageString(int msg_id) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("if (msg_id<");
+ String _name_4 = pc.getName();
+ _builder.append(_name_4, " ");
+ _builder.append("_MSG_MIN || msg_id>");
+ String _name_5 = pc.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("_MSG_MAX+1){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("/* id out of range */");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("return \"Message ID out of range\";");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("else{");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("return ");
+ String _name_6 = pc.getName();
+ _builder.append(_name_6, " ");
+ _builder.append("_messageStrings[msg_id];");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ return _builder;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/StateMachineGen.java b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/StateMachineGen.java
index d3ab1111b..de6d18f93 100644
--- a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/StateMachineGen.java
+++ b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/StateMachineGen.java
@@ -1,117 +1,117 @@
-package org.eclipse.etrice.generator.c.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.List;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.generator.generic.GenericStateMachineGenerator;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-
-@Singleton
-@SuppressWarnings("all")
-public class StateMachineGen extends GenericStateMachineGenerator {
- @Inject
- private RoomExtensions _roomExtensions;
-
- public CharSequence genHeaderConstants(final ExpandedActorClass xpac) {
- CharSequence _xblockexpression = null;
- {
- final ActorClass ac = xpac.getActorClass();
- List<State> _allBaseStates = this._roomExtensions.getAllBaseStates(ac);
- int _size = _allBaseStates.size();
- List<State> _allLeafStates = this._roomExtensions.getAllLeafStates(ac);
- int _size_1 = _allLeafStates.size();
- int _minus = (_size - _size_1);
- final int historySize = (_minus + 2);
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/* constant for state machine data */");
- _builder.newLine();
- _builder.append("#define ");
- String _name = ac.getName();
- String _upperCase = _name.toUpperCase();
- _builder.append(_upperCase, "");
- _builder.append("_HISTORY_SIZE ");
- _builder.append(historySize, "");
- _builder.newLineIfNotEmpty();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public CharSequence genDataMembers(final ExpandedActorClass xpac) {
- CharSequence _xblockexpression = null;
- {
- final ActorClass ac = xpac.getActorClass();
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/* state machine variables */");
- _builder.newLine();
- _builder.append("etInt16 state;");
- _builder.newLine();
- _builder.append("etInt16 history[");
- String _name = ac.getName();
- String _upperCase = _name.toUpperCase();
- _builder.append(_upperCase, "");
- _builder.append("_HISTORY_SIZE];");
- _builder.newLineIfNotEmpty();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public CharSequence genInitialization(final ExpandedActorClass xpac) {
- CharSequence _xblockexpression = null;
- {
- final ActorClass ac = xpac.getActorClass();
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("self->state = STATE_TOP;");
- _builder.newLine();
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("int i;");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("for (i=0; i<");
- String _name = ac.getName();
- String _upperCase = _name.toUpperCase();
- _builder.append(_upperCase, " ");
- _builder.append("_HISTORY_SIZE; ++i)");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("self->history[i] = NO_STATE;");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _builder.append("executeInitTransition(self);");
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public CharSequence genExtra(final ExpandedActorClass xpac) {
- CharSequence _xblockexpression = null;
- {
- final ActorClass ac = xpac.getActorClass();
- StringConcatenation _builder = new StringConcatenation();
- _builder.newLine();
- String _accessLevelPrivate = this.langExt.accessLevelPrivate();
- _builder.append(_accessLevelPrivate, "");
- _builder.append("void setState(");
- String _name = ac.getName();
- _builder.append(_name, "");
- _builder.append("* self, int new_state) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("self->state = new_state;");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-}
+package org.eclipse.etrice.generator.c.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.List;
+import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.etrice.generator.generic.GenericStateMachineGenerator;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+
+@Singleton
+@SuppressWarnings("all")
+public class StateMachineGen extends GenericStateMachineGenerator {
+ @Inject
+ private RoomExtensions _roomExtensions;
+
+ public CharSequence genHeaderConstants(final ExpandedActorClass xpac) {
+ CharSequence _xblockexpression = null;
+ {
+ final ActorClass ac = xpac.getActorClass();
+ List<State> _allBaseStates = this._roomExtensions.getAllBaseStates(ac);
+ int _size = _allBaseStates.size();
+ List<State> _allLeafStates = this._roomExtensions.getAllLeafStates(ac);
+ int _size_1 = _allLeafStates.size();
+ int _minus = (_size - _size_1);
+ final int historySize = (_minus + 2);
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/* constant for state machine data */");
+ _builder.newLine();
+ _builder.append("#define ");
+ String _name = ac.getName();
+ String _upperCase = _name.toUpperCase();
+ _builder.append(_upperCase, "");
+ _builder.append("_HISTORY_SIZE ");
+ _builder.append(historySize, "");
+ _builder.newLineIfNotEmpty();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public CharSequence genDataMembers(final ExpandedActorClass xpac) {
+ CharSequence _xblockexpression = null;
+ {
+ final ActorClass ac = xpac.getActorClass();
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/* state machine variables */");
+ _builder.newLine();
+ _builder.append("etInt16 state;");
+ _builder.newLine();
+ _builder.append("etInt16 history[");
+ String _name = ac.getName();
+ String _upperCase = _name.toUpperCase();
+ _builder.append(_upperCase, "");
+ _builder.append("_HISTORY_SIZE];");
+ _builder.newLineIfNotEmpty();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public CharSequence genInitialization(final ExpandedActorClass xpac) {
+ CharSequence _xblockexpression = null;
+ {
+ final ActorClass ac = xpac.getActorClass();
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("self->state = STATE_TOP;");
+ _builder.newLine();
+ _builder.append("{");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("int i;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("for (i=0; i<");
+ String _name = ac.getName();
+ String _upperCase = _name.toUpperCase();
+ _builder.append(_upperCase, " ");
+ _builder.append("_HISTORY_SIZE; ++i)");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("self->history[i] = NO_STATE;");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("executeInitTransition(self);");
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public CharSequence genExtra(final ExpandedActorClass xpac) {
+ CharSequence _xblockexpression = null;
+ {
+ final ActorClass ac = xpac.getActorClass();
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.newLine();
+ String _accessLevelPrivate = this.langExt.accessLevelPrivate();
+ _builder.append(_accessLevelPrivate, "");
+ _builder.append("void setState(");
+ String _name = ac.getName();
+ _builder.append(_name, "");
+ _builder.append("* self, int new_state) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("self->state = new_state;");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemClassGen.java b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemClassGen.java
index 78ce3de22..8d5e98535 100644
--- a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemClassGen.java
+++ b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemClassGen.java
@@ -197,16 +197,29 @@ public class SubSystemClassGen {
_builder.append("_destroy(void); \t/* lifecycle destroy */");
_builder.newLineIfNotEmpty();
_builder.newLine();
+<<<<<<< HEAD
_builder.append("void SubSysClass_shutdown(void); /* shutdown the dispatcher loop */");
_builder.newLine();
+=======
+ _builder.append("void ");
+ String _name_7 = ssc.getName();
+ _builder.append(_name_7, "");
+ _builder.append("_shutdown(void); /* shutdown the dispatcher loop */");
+ _builder.newLineIfNotEmpty();
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.newLine();
DetailCode _userCode2 = ssc.getUserCode2();
CharSequence _userCode_1 = this.helpers.userCode(_userCode2);
_builder.append(_userCode_1, "");
_builder.newLineIfNotEmpty();
_builder.newLine();
+<<<<<<< HEAD
String _name_7 = ssc.getName();
CharSequence _generateIncludeGuardEnd = this.stdExt.generateIncludeGuardEnd(_name_7);
+=======
+ String _name_8 = ssc.getName();
+ CharSequence _generateIncludeGuardEnd = this.stdExt.generateIncludeGuardEnd(_name_8);
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.append(_generateIncludeGuardEnd, "");
_builder.newLineIfNotEmpty();
_builder.newLine();
@@ -543,13 +556,22 @@ public class SubSystemClassGen {
_builder.append("}");
_builder.newLine();
_builder.newLine();
+<<<<<<< HEAD
_builder.append("void SubSysClass_shutdown(void){");
_builder.newLine();
+=======
+ _builder.append("void ");
+ String _name_23 = ssc.getName();
+ _builder.append(_name_23, "");
+ _builder.append("_shutdown(void){");
+ _builder.newLineIfNotEmpty();
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.append("\t");
_builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"SubSys\", \"shutdown\")");
_builder.newLine();
_builder.append("\t");
_builder.append("etLogger_logInfoF(\"%s_shutdown\", ");
+<<<<<<< HEAD
String _name_23 = ssc.getName();
_builder.append(_name_23, " ");
_builder.append("Inst.name);");
@@ -557,6 +579,15 @@ public class SubSystemClassGen {
_builder.append("\t");
String _name_24 = ssc.getName();
_builder.append(_name_24, " ");
+=======
+ String _name_24 = ssc.getName();
+ _builder.append(_name_24, " ");
+ _builder.append("Inst.name);");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ String _name_25 = ssc.getName();
+ _builder.append(_name_25, " ");
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.append("Inst.shutdownRequest = 1;");
_builder.newLineIfNotEmpty();
_builder.append("\t");
@@ -567,14 +598,24 @@ public class SubSystemClassGen {
_builder.newLine();
_builder.newLine();
_builder.append("void ");
+<<<<<<< HEAD
String _name_25 = ssc.getName();
_builder.append(_name_25, "");
+=======
+ String _name_26 = ssc.getName();
+ _builder.append(_name_26, "");
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.append("_constructActorInstances(void){");
_builder.newLineIfNotEmpty();
_builder.append("\t");
_builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
+<<<<<<< HEAD
String _name_26 = ssc.getName();
_builder.append(_name_26, " ");
+=======
+ String _name_27 = ssc.getName();
+ _builder.append(_name_27, " ");
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.append("\", \"constructActorInstances\")");
_builder.newLineIfNotEmpty();
{
@@ -595,8 +636,13 @@ public class SubSystemClassGen {
if (_not_1) {
_builder.append("\t");
ActorClass _actorClass_3 = ai_1.getActorClass();
+<<<<<<< HEAD
String _name_27 = _actorClass_3.getName();
String _constructorName = this.languageExt.constructorName(_name_27);
+=======
+ String _name_28 = _actorClass_3.getName();
+ String _constructorName = this.languageExt.constructorName(_name_28);
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.append(_constructorName, " ");
_builder.append("(&");
String _path_1 = ai_1.getPath();
@@ -615,14 +661,24 @@ public class SubSystemClassGen {
_builder.newLine();
_builder.newLine();
_builder.append("void ");
+<<<<<<< HEAD
String _name_28 = ssc.getName();
_builder.append(_name_28, "");
+=======
+ String _name_29 = ssc.getName();
+ _builder.append(_name_29, "");
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.append("_initActorInstances(void){");
_builder.newLineIfNotEmpty();
_builder.append("\t");
_builder.append("ET_MSC_LOGGER_SYNC_ENTRY(\"");
+<<<<<<< HEAD
String _name_29 = ssc.getName();
_builder.append(_name_29, " ");
+=======
+ String _name_30 = ssc.getName();
+ _builder.append(_name_30, " ");
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.append("\", \"initActorInstances\")");
_builder.newLineIfNotEmpty();
{
@@ -630,8 +686,13 @@ public class SubSystemClassGen {
for(final ActorInstance ai_2 : _allContainedInstances_2) {
_builder.append("\t");
ActorClass _actorClass_4 = ai_2.getActorClass();
+<<<<<<< HEAD
String _name_30 = _actorClass_4.getName();
_builder.append(_name_30, " ");
+=======
+ String _name_31 = _actorClass_4.getName();
+ _builder.append(_name_31, " ");
+>>>>>>> 84d7579c94b310ce805810c3c8b90e6a69b3282f
_builder.append("_init(&");
String _path_2 = ai_2.getPath();
String _pathName_2 = this.roomExt.getPathName(_path_2);
diff --git a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemRunnerGen.java b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemRunnerGen.java
index 0c8326c33..a1a5d02f7 100644
--- a/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemRunnerGen.java
+++ b/plugins/org.eclipse.etrice.generator.c/xtend-gen/org/eclipse/etrice/generator/c/gen/SubSystemRunnerGen.java
@@ -1,171 +1,171 @@
-package org.eclipse.etrice.generator.c.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance;
-import org.eclipse.etrice.core.room.SubSystemClass;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-
-@Singleton
-@SuppressWarnings("all")
-public class SubSystemRunnerGen {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private RoomExtensions roomExt;
-
- public void doGenerate(final Root root) {
- EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
- for (final SubSystemInstance sc : _subSystemInstances) {
- {
- SubSystemClass _subSystemClass = sc.getSubSystemClass();
- String _generationTargetPath = this.roomExt.getGenerationTargetPath(_subSystemClass);
- SubSystemClass _subSystemClass_1 = sc.getSubSystemClass();
- String _path = this.roomExt.getPath(_subSystemClass_1);
- String _plus = (_generationTargetPath + _path);
- this.fileAccess.setOutputPath(_plus);
- String _name = sc.getName();
- String _plus_1 = (_name + "_Runner.c");
- SubSystemClass _subSystemClass_2 = sc.getSubSystemClass();
- CharSequence _generateSourceFile = this.generateSourceFile(root, sc, _subSystemClass_2);
- this.fileAccess.generateFile(_plus_1, _generateSourceFile);
- }
- }
- }
-
- public CharSequence generateSourceFile(final Root root, final SubSystemInstance ssi, final SubSystemClass ssc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @author generated by eTrice");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* this class contains the main function running component ");
- String _name = ssi.getName();
- _builder.append(_name, " ");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("* it instantiates ");
- String _name_1 = ssi.getName();
- _builder.append(_name_1, " ");
- _builder.append(" and starts and ends the lifecycle");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.newLine();
- _builder.newLine();
- _builder.append("#include \"");
- String _name_2 = ssi.getName();
- _builder.append(_name_2, "");
- _builder.append(".h\"");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("#include \"debugging/etLogger.h\"");
- _builder.newLine();
- _builder.append("#include \"debugging/etMSCLogger.h\"");
- _builder.newLine();
- _builder.append("#include \"platform/etPlatform.h\"");
- _builder.newLine();
- _builder.newLine();
- _builder.newLine();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* main function");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* creates component and starts and stops the lifecycle");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.newLine();
- _builder.append("int main(void) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("etUserEntry(); /* platform specific */");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("etLogger_logInfo(\"*** T H E B E G I N ***\");");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_OPEN(\"main\");");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("/* startup sequence of lifecycle */");
- _builder.newLine();
- _builder.append("\t");
- String _name_3 = ssi.getName();
- _builder.append(_name_3, " ");
- _builder.append("_init(); \t\t/* lifecycle init */");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- String _name_4 = ssi.getName();
- _builder.append(_name_4, " ");
- _builder.append("_start(); \t/* lifecycle start */");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("etUserPreRun(); /* platform specific */");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("/* run Scheduler */");
- _builder.newLine();
- _builder.append("\t");
- String _name_5 = ssi.getName();
- _builder.append(_name_5, " ");
- _builder.append("_run();");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("etUserPostRun(); /* platform specific */");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("/* shutdown sequence of lifecycle */");
- _builder.newLine();
- _builder.append("\t");
- String _name_6 = ssi.getName();
- _builder.append(_name_6, " ");
- _builder.append("_stop(); \t\t/* lifecycle stop */");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- String _name_7 = ssi.getName();
- _builder.append(_name_7, " ");
- _builder.append("_destroy(); \t/* lifecycle destroy */");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("ET_MSC_LOGGER_CLOSE");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("etLogger_logInfo(\"*** T H E E N D ***\");");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("etUserExit(); /* platform specific */");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("return 0;");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- return _builder;
- }
-}
+package org.eclipse.etrice.generator.c.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance;
+import org.eclipse.etrice.core.room.SubSystemClass;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+
+@Singleton
+@SuppressWarnings("all")
+public class SubSystemRunnerGen {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private RoomExtensions roomExt;
+
+ public void doGenerate(final Root root) {
+ EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
+ for (final SubSystemInstance sc : _subSystemInstances) {
+ {
+ SubSystemClass _subSystemClass = sc.getSubSystemClass();
+ String _generationTargetPath = this.roomExt.getGenerationTargetPath(_subSystemClass);
+ SubSystemClass _subSystemClass_1 = sc.getSubSystemClass();
+ String _path = this.roomExt.getPath(_subSystemClass_1);
+ String _plus = (_generationTargetPath + _path);
+ this.fileAccess.setOutputPath(_plus);
+ String _name = sc.getName();
+ String _plus_1 = (_name + "_Runner.c");
+ SubSystemClass _subSystemClass_2 = sc.getSubSystemClass();
+ CharSequence _generateSourceFile = this.generateSourceFile(root, sc, _subSystemClass_2);
+ this.fileAccess.generateFile(_plus_1, _generateSourceFile);
+ }
+ }
+ }
+
+ public CharSequence generateSourceFile(final Root root, final SubSystemInstance ssi, final SubSystemClass ssc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @author generated by eTrice");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* this class contains the main function running component ");
+ String _name = ssi.getName();
+ _builder.append(_name, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("* it instantiates ");
+ String _name_1 = ssi.getName();
+ _builder.append(_name_1, " ");
+ _builder.append(" and starts and ends the lifecycle");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("#include \"");
+ String _name_2 = ssi.getName();
+ _builder.append(_name_2, "");
+ _builder.append(".h\"");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("#include \"debugging/etLogger.h\"");
+ _builder.newLine();
+ _builder.append("#include \"debugging/etMSCLogger.h\"");
+ _builder.newLine();
+ _builder.append("#include \"platform/etPlatform.h\"");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* main function");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* creates component and starts and stops the lifecycle");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("int main(void) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("etUserEntry(); /* platform specific */");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("etLogger_logInfo(\"*** T H E B E G I N ***\");");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_OPEN(\"main\");");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("/* startup sequence of lifecycle */");
+ _builder.newLine();
+ _builder.append("\t");
+ String _name_3 = ssi.getName();
+ _builder.append(_name_3, " ");
+ _builder.append("_init(); \t\t/* lifecycle init */");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ String _name_4 = ssi.getName();
+ _builder.append(_name_4, " ");
+ _builder.append("_start(); \t/* lifecycle start */");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("etUserPreRun(); /* platform specific */");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("/* run Scheduler */");
+ _builder.newLine();
+ _builder.append("\t");
+ String _name_5 = ssi.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("_run();");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("etUserPostRun(); /* platform specific */");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("/* shutdown sequence of lifecycle */");
+ _builder.newLine();
+ _builder.append("\t");
+ String _name_6 = ssi.getName();
+ _builder.append(_name_6, " ");
+ _builder.append("_stop(); \t\t/* lifecycle stop */");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ String _name_7 = ssi.getName();
+ _builder.append(_name_7, " ");
+ _builder.append("_destroy(); \t/* lifecycle destroy */");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("ET_MSC_LOGGER_CLOSE");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("etLogger_logInfo(\"*** T H E E N D ***\");");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("etUserExit(); /* platform specific */");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("return 0;");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ return _builder;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/DocGen.java b/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/DocGen.java
index 904a31a43..ce99ce171 100644
--- a/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/DocGen.java
+++ b/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/DocGen.java
@@ -1,1053 +1,1053 @@
-package org.eclipse.etrice.generator.doc.gen;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.io.File;
-import java.util.Arrays;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.ChoicePoint;
-import org.eclipse.etrice.core.room.CompoundProtocolClass;
-import org.eclipse.etrice.core.room.DataClass;
-import org.eclipse.etrice.core.room.DataType;
-import org.eclipse.etrice.core.room.Documentation;
-import org.eclipse.etrice.core.room.GeneralProtocolClass;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.StandardOperation;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.core.room.SubProtocol;
-import org.eclipse.etrice.core.room.SubSystemClass;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.eclipse.etrice.core.room.util.RoomHelpers;
-import org.eclipse.etrice.generator.base.IRoomGenerator;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-import org.eclipse.xtext.xbase.lib.IterableExtensions;
-
-@Singleton
-@SuppressWarnings("all")
-public class DocGen implements IRoomGenerator {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private RoomExtensions roomExt;
-
- @Inject
- private ILogger logger;
-
- public void doGenerate(final Root root) {
- EList<RoomModel> _models = root.getModels();
- for (final RoomModel model : _models) {
- {
- String path = this.roomExt.getDocGenerationTargetPath(model);
- String _name = model.getName();
- String file = (_name + ".tex");
- String _plus = ("generating LaTeX documentation: \'" + file);
- String _plus_1 = (_plus + "\' in \'");
- String _plus_2 = (_plus_1 + path);
- String _plus_3 = (_plus_2 + "\'");
- this.logger.logInfo(_plus_3);
- this.fileAccess.setOutputPath(path);
- CharSequence _generateModelDoc = this.generateModelDoc(root, model);
- this.fileAccess.generateFile(file, _generateModelDoc);
- }
- }
- }
-
- public CharSequence generateModelDoc(final Root root, final RoomModel model) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("\\documentclass[titlepage]{article}");
- _builder.newLine();
- _builder.append("\\usepackage{graphicx}");
- _builder.newLine();
- _builder.append("\\usepackage[a4paper,text={160mm,255mm},centering,headsep=5mm,footskip=10mm]{geometry}");
- _builder.newLine();
- _builder.append("\\usepackage{nonfloat}");
- _builder.newLine();
- _builder.append("\\parindent 0pt");
- _builder.newLine();
- _builder.append("\\makeatletter");
- _builder.newLine();
- _builder.append("\\newcommand\\level[1]{%");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\ifcase#1\\relax\\expandafter\\chapter\\or");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\expandafter\\section\\or");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\expandafter\\subsection\\or");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\expandafter\\subsubsection\\else");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\def\\next{\\@level{#1}}\\expandafter\\next");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\fi}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\\newcommand{\\@level}[1]{%");
- _builder.newLine();
- _builder.append("\\@startsection{level#1}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("{#1}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("{\\z@}%");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("{-3.25ex\\@plus -1ex \\@minus -.2ex}%");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("{1.5ex \\@plus .2ex}%");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("{\\normalfont\\normalsize\\bfseries}}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\\newdimen\\@leveldim");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\newdimen\\@dotsdim");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("{\\normalfont\\normalsize");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\sbox\\z@{0}\\global\\@leveldim=\\wd\\z@");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\sbox\\z@{.}\\global\\@dotsdim=\\wd\\z@");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("} ");
- _builder.newLine();
- _builder.append("\\newcounter{level4}[subsubsection]");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\@namedef{thelevel4}{\\thesubsubsection.\\arabic{level4}}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\@namedef{level4mark}#1{}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\def\\l@section{\\@dottedtocline{1}{0pt}{\\dimexpr\\@leveldim*4+\\@dotsdim*1+6pt\\relax}}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\def\\l@subsection{\\@dottedtocline{2}{0pt}{\\dimexpr\\@leveldim*5+\\@dotsdim*2+6pt\\relax}}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\def\\l@subsubsection{\\@dottedtocline{3}{0pt}{\\dimexpr\\@leveldim*6+\\@dotsdim*3+6pt\\relax}}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\@namedef{l@level4}{\\@dottedtocline{4}{0pt}{\\dimexpr\\@leveldim*7+\\@dotsdim*4+6pt\\relax}}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\\count@=4");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\def\\@ncp#1{\\number\\numexpr\\count@+#1\\relax}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\loop\\ifnum\\count@<100");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\begingroup\\edef\\x{\\endgroup");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\noexpand\\newcounter{level\\@ncp{1}}[level\\number\\count@]");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\noexpand\\@namedef{thelevel\\@ncp{1}}{%");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\noexpand\\@nameuse{thelevel\\@ncp{0}}.\\noexpand\\arabic{level\\@ncp{0}}}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\noexpand\\@namedef{level\\@ncp{1}mark}####1{}%");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\noexpand\\@namedef{l@level\\@ncp{1}}%");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("{\\noexpand\\@dottedtocline{\\@ncp{1}}{0pt}{\\the\\dimexpr\\@leveldim*\\@ncp{5}+\\@dotsdim*\\@ncp{0}\\relax}}}%");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\x");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\advance\\count@\\@ne");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\repeat");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\makeatother");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\setcounter{secnumdepth}{100}");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("\\setcounter{tocdepth}{100}");
- _builder.newLine();
- _builder.newLine();
- _builder.newLine();
- _builder.append("\\title{");
- String _name = model.getName();
- _builder.append(_name, "");
- _builder.append(" Modeldocumentation}");
- _builder.newLineIfNotEmpty();
- _builder.append("\\date{\\today}");
- _builder.newLine();
- _builder.append("\\author{generated by eTrice}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\\begin{document}");
- _builder.newLine();
- _builder.append("\\pagestyle{plain}");
- _builder.newLine();
- _builder.append("\\maketitle");
- _builder.newLine();
- _builder.append("\\tableofcontents");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\\newpage");
- _builder.newLine();
- _builder.append("\\listoffigures");
- _builder.newLine();
- _builder.append("\\newpage");
- _builder.newLine();
- _builder.append("\\section{Model Description}");
- _builder.newLine();
- Documentation _docu = model.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu);
- _builder.append(_generateDocText, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\section{Subsystem Description}");
- _builder.newLine();
- CharSequence _generateAllSubSysClassDocs = this.generateAllSubSysClassDocs(root, model);
- _builder.append(_generateAllSubSysClassDocs, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\section{Protocol Class Description}");
- _builder.newLine();
- CharSequence _generateAllProtocolClassDocs = this.generateAllProtocolClassDocs(root, model);
- _builder.append(_generateAllProtocolClassDocs, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\section{Data Class Description}");
- _builder.newLine();
- CharSequence _generateAllDataClassDocs = this.generateAllDataClassDocs(root, model);
- _builder.append(_generateAllDataClassDocs, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\section{Actor Class Description}");
- _builder.newLine();
- CharSequence _generateAllActorClassDocs = this.generateAllActorClassDocs(root, model);
- _builder.append(_generateAllActorClassDocs, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\end{document}");
- _builder.newLine();
- return _builder;
- }
-
- public CharSequence generateAllSubSysClassDocs(final Root root, final RoomModel model) {
- StringConcatenation _builder = new StringConcatenation();
- {
- EList<SubSystemClass> _subSystemClasses = model.getSubSystemClasses();
- for(final SubSystemClass ssc : _subSystemClasses) {
- CharSequence _generateSubSysClassDoc = this.generateSubSysClassDoc(root, model, ssc);
- _builder.append(_generateSubSysClassDoc, "");
- _builder.newLineIfNotEmpty();
- }
- }
- return _builder;
- }
-
- public CharSequence generateSubSysClassDoc(final Root root, final RoomModel model, final SubSystemClass ssc) {
- CharSequence _xblockexpression = null;
- {
- String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
- String _plus = (_docGenerationTargetPath + "images\\");
- String _name = ssc.getName();
- String _plus_1 = (_plus + _name);
- String filename = (_plus_1 + "_structure.jpg");
- String _replaceAll = filename.replaceAll("\\\\", "/");
- filename = _replaceAll;
- String latexFilename = filename.replaceAll("/", "//");
- String _docGenerationTargetPath_1 = this.roomExt.getDocGenerationTargetPath(model);
- String _plus_2 = (_docGenerationTargetPath_1 + "images\\");
- String _name_1 = ssc.getName();
- String _plus_3 = (_plus_2 + _name_1);
- String filenamei = (_plus_3 + "_instanceTree.jpg");
- String _replaceAll_1 = filenamei.replaceAll("\\\\", "/");
- filenamei = _replaceAll_1;
- String latexFilenamei = filenamei.replaceAll("/", "//");
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("\\level{2}{");
- String _name_2 = ssc.getName();
- _builder.append(_name_2, "");
- _builder.append("}");
- _builder.newLineIfNotEmpty();
- Documentation _docu = ssc.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu);
- _builder.append(_generateDocText, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\level{3}{Structure}");
- _builder.newLine();
- {
- String _fileExists = this.fileExists(filename);
- boolean _equals = _fileExists.equals("true");
- if (_equals) {
- String _name_3 = ssc.getName();
- String _plus_4 = (_name_3 + " Structure");
- CharSequence _includeGraphics = this.includeGraphics(latexFilename, "0.4", _plus_4);
- _builder.append(_includeGraphics, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\\level{3}{Instance Tree}");
- _builder.newLine();
- {
- String _fileExists_1 = this.fileExists(filename);
- boolean _equals_1 = _fileExists_1.equals("true");
- if (_equals_1) {
- String _name_4 = ssc.getName();
- String _plus_5 = (_name_4 + " Instance Tree");
- CharSequence _includeGraphics_1 = this.includeGraphics(latexFilenamei, "0.5", _plus_5);
- _builder.append(_includeGraphics_1, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public CharSequence generateAllDataClassDocs(final Root root, final RoomModel model) {
- StringConcatenation _builder = new StringConcatenation();
- {
- EList<DataClass> _dataClasses = model.getDataClasses();
- for(final DataClass dc : _dataClasses) {
- CharSequence _generateDataClassDoc = this.generateDataClassDoc(root, dc);
- _builder.append(_generateDataClassDoc, "");
- _builder.newLineIfNotEmpty();
- }
- }
- return _builder;
- }
-
- public CharSequence generateDataClassDoc(final Root root, final DataClass dc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("\\level{2} {");
- String _name = dc.getName();
- _builder.append(_name, "");
- _builder.append("}");
- _builder.newLineIfNotEmpty();
- Documentation _docu = dc.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu);
- _builder.append(_generateDocText, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\level{3}{Attributes}");
- _builder.newLine();
- EList<Attribute> _attributes = dc.getAttributes();
- CharSequence _generateAttributesDoc = this.generateAttributesDoc(_attributes);
- _builder.append(_generateAttributesDoc, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\\level{3}{Operations}");
- _builder.newLine();
- EList<StandardOperation> _operations = dc.getOperations();
- CharSequence _generateOperationsDoc = this.generateOperationsDoc(_operations);
- _builder.append(_generateOperationsDoc, "");
- _builder.newLineIfNotEmpty();
- return _builder;
- }
-
- public CharSequence generateAllProtocolClassDocs(final Root root, final RoomModel model) {
- StringConcatenation _builder = new StringConcatenation();
- {
- EList<GeneralProtocolClass> _protocolClasses = model.getProtocolClasses();
- for(final GeneralProtocolClass pc : _protocolClasses) {
- CharSequence _generateProtocolClassDoc = this.generateProtocolClassDoc(root, pc);
- _builder.append(_generateProtocolClassDoc, "");
- _builder.newLineIfNotEmpty();
- }
- }
- return _builder;
- }
-
- protected CharSequence _generateProtocolClassDoc(final Root root, final ProtocolClass pc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("\t");
- _builder.append("\\level{2} {");
- String _name = pc.getName();
- _builder.append(_name, " ");
- _builder.append("}");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- Documentation _docu = pc.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu);
- _builder.append(_generateDocText, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\\level{3}{Incoming Messages}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\\begin{tabular}[ht]{|l|l|l|}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("Message & Data & Description\\\\");
- _builder.newLine();
- {
- List<Message> _allIncomingMessages = this.roomExt.getAllIncomingMessages(pc);
- for(final Message ims : _allIncomingMessages) {
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\t");
- String _name_1 = ims.getName();
- _builder.append(_name_1, " ");
- _builder.append(" & ");
- {
- VarDecl _data = ims.getData();
- boolean _notEquals = (!Objects.equal(_data, null));
- if (_notEquals) {
- _builder.append(" ");
- VarDecl _data_1 = ims.getData();
- String _name_2 = _data_1.getName();
- _builder.append(_name_2, " ");
- _builder.append(" ");
- }
- }
- _builder.append(" & ");
- Documentation _docu_1 = ims.getDocu();
- CharSequence _generateDocText_1 = this.generateDocText(_docu_1);
- _builder.append(_generateDocText_1, " ");
- _builder.append("\\\\");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\\end{tabular}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\\level{3}{Outgoing Messages}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\\begin{tabular}[ht]{|l|l|l|}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("Message & Data & Description\\\\");
- _builder.newLine();
- {
- List<Message> _allOutgoingMessages = this.roomExt.getAllOutgoingMessages(pc);
- for(final Message oms : _allOutgoingMessages) {
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\t");
- String _name_3 = oms.getName();
- _builder.append(_name_3, " ");
- _builder.append(" & ");
- {
- VarDecl _data_2 = oms.getData();
- boolean _notEquals_1 = (!Objects.equal(_data_2, null));
- if (_notEquals_1) {
- _builder.append(" ");
- VarDecl _data_3 = oms.getData();
- String _name_4 = _data_3.getName();
- _builder.append(_name_4, " ");
- _builder.append(" ");
- }
- }
- _builder.append(" & ");
- Documentation _docu_2 = oms.getDocu();
- CharSequence _generateDocText_2 = this.generateDocText(_docu_2);
- _builder.append(_generateDocText_2, " ");
- _builder.append("\\\\");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\\end{tabular}\t\t\t");
- _builder.newLine();
- return _builder;
- }
-
- protected CharSequence _generateProtocolClassDoc(final Root root, final CompoundProtocolClass pc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("\\level{2} {");
- String _name = pc.getName();
- _builder.append(_name, "");
- _builder.append("}");
- _builder.newLineIfNotEmpty();
- Documentation _docu = pc.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu);
- _builder.append(_generateDocText, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\level{3}{Sub Protocols}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\\begin{tabular}[ht]{|l|l|}");
- _builder.newLine();
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("Name & Protocol\\\\");
- _builder.newLine();
- {
- EList<SubProtocol> _subProtocols = pc.getSubProtocols();
- for(final SubProtocol sub : _subProtocols) {
- _builder.append("\\hline");
- _builder.newLine();
- String _name_1 = sub.getName();
- _builder.append(_name_1, "");
- _builder.append(" & ");
- GeneralProtocolClass _protocol = sub.getProtocol();
- String _name_2 = _protocol.getName();
- _builder.append(_name_2, "");
- _builder.append("\\\\");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\\end{tabular}");
- _builder.newLine();
- return _builder;
- }
-
- public CharSequence generateAllActorClassDocs(final Root root, final RoomModel model) {
- StringConcatenation _builder = new StringConcatenation();
- {
- EList<ActorClass> _actorClasses = model.getActorClasses();
- for(final ActorClass ac : _actorClasses) {
- CharSequence _generateActorClassDoc = this.generateActorClassDoc(root, model, ac);
- _builder.append(_generateActorClassDoc, "");
- _builder.newLineIfNotEmpty();
- }
- }
- return _builder;
- }
-
- public CharSequence generateActorClassDoc(final Root root, final RoomModel model, final ActorClass ac) {
- CharSequence _xblockexpression = null;
- {
- String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
- String _plus = (_docGenerationTargetPath + "images\\");
- String _name = ac.getName();
- String _plus_1 = (_plus + _name);
- String filename = (_plus_1 + "_structure.jpg");
- String _replaceAll = filename.replaceAll("\\\\", "/");
- filename = _replaceAll;
- String latexFilename = filename.replaceAll("/", "//");
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("\\level{2}{");
- String _name_1 = ac.getName();
- _builder.append(_name_1, "");
- _builder.append("}");
- _builder.newLineIfNotEmpty();
- Documentation _docu = ac.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu);
- _builder.append(_generateDocText, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\level{3}{Structure}");
- _builder.newLine();
- _builder.newLine();
- {
- String _fileExists = this.fileExists(filename);
- boolean _equals = _fileExists.equals("true");
- if (_equals) {
- String _name_2 = ac.getName();
- String _plus_2 = (_name_2 + " Structure");
- CharSequence _includeGraphics = this.includeGraphics(latexFilename, "0.4", _plus_2);
- _builder.append(_includeGraphics, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _builder.append("\\level{3}{Attributes}");
- _builder.newLine();
- EList<Attribute> _attributes = ac.getAttributes();
- CharSequence _generateAttributesDoc = this.generateAttributesDoc(_attributes);
- _builder.append(_generateAttributesDoc, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\\level{3}{Operations}");
- _builder.newLine();
- EList<StandardOperation> _operations = ac.getOperations();
- CharSequence _generateOperationsDoc = this.generateOperationsDoc(_operations);
- _builder.append(_generateOperationsDoc, "");
- _builder.newLineIfNotEmpty();
- {
- boolean _hasNonEmptyStateMachine = RoomHelpers.hasNonEmptyStateMachine(ac);
- if (_hasNonEmptyStateMachine) {
- _builder.append("\\level{3}{Statemachine}");
- _builder.newLine();
- CharSequence _generateFsmDoc = this.generateFsmDoc(model, ac);
- _builder.append(_generateFsmDoc, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public CharSequence generateFsmDoc(final RoomModel model, final ActorClass ac) {
- CharSequence _xblockexpression = null;
- {
- String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
- String _plus = (_docGenerationTargetPath + "images\\");
- String _name = ac.getName();
- String _plus_1 = (_plus + _name);
- String filename = (_plus_1 + "_behavior.jpg");
- String _replaceAll = filename.replaceAll("\\\\", "/");
- filename = _replaceAll;
- String latexFilename = filename.replaceAll("/", "//");
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("\\level{4}{Top Level}");
- _builder.newLine();
- {
- String _fileExists = this.fileExists(filename);
- boolean _equals = _fileExists.equals("true");
- if (_equals) {
- String _name_1 = ac.getName();
- String _plus_2 = (_name_1 + " Top State");
- CharSequence _includeGraphics = this.includeGraphics(latexFilename, "0.4", _plus_2);
- _builder.append(_includeGraphics, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _builder.append("\\begin{par}");
- _builder.newLine();
- {
- StateGraph _stateMachine = ac.getStateMachine();
- EList<State> _states = _stateMachine.getStates();
- for(final State s : _states) {
- {
- Documentation _docu = s.getDocu();
- boolean _notEquals = (!Objects.equal(_docu, null));
- if (_notEquals) {
- _builder.append("\\textbf{State description} \\textit{");
- String _statePathName = this.roomExt.getStatePathName(s);
- String _replaceAll_1 = _statePathName.replaceAll("_", "\\\\_");
- _builder.append(_replaceAll_1, "");
- _builder.append("}:");
- _builder.newLineIfNotEmpty();
- _builder.append("\\newline");
- _builder.newLine();
- Documentation _docu_1 = s.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu_1);
- _builder.append(_generateDocText, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\newline\\newline");
- _builder.newLine();
- }
- }
- }
- }
- _builder.newLine();
- {
- StateGraph _stateMachine_1 = ac.getStateMachine();
- EList<ChoicePoint> _chPoints = _stateMachine_1.getChPoints();
- for(final ChoicePoint c : _chPoints) {
- {
- Documentation _docu_2 = c.getDocu();
- boolean _notEquals_1 = (!Objects.equal(_docu_2, null));
- if (_notEquals_1) {
- _builder.append("\\textbf{Choicepoint description} \\textit{");
- String _name_2 = c.getName();
- _builder.append(_name_2, "");
- _builder.append("}:");
- _builder.newLineIfNotEmpty();
- _builder.append("\\newline");
- _builder.newLine();
- Documentation _docu_3 = c.getDocu();
- CharSequence _generateDocText_1 = this.generateDocText(_docu_3);
- _builder.append(_generateDocText_1, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\newline\\newline");
- _builder.newLine();
- }
- }
- }
- }
- _builder.append("\\end{par}");
- _builder.newLine();
- _builder.newLine();
- {
- StateGraph _stateMachine_2 = ac.getStateMachine();
- EList<State> _states_1 = _stateMachine_2.getStates();
- for(final State s_1 : _states_1) {
- {
- boolean _isLeaf = this.roomExt.isLeaf(s_1);
- boolean _not = (!_isLeaf);
- if (_not) {
- CharSequence _generateStateDoc = this.generateStateDoc(model, ac, s_1);
- _builder.append(_generateStateDoc, "");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public CharSequence generateStateDoc(final RoomModel model, final ActorClass ac, final State state) {
- CharSequence _xblockexpression = null;
- {
- String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
- String _plus = (_docGenerationTargetPath + "images\\");
- String _name = ac.getName();
- String _plus_1 = (_plus + _name);
- String _plus_2 = (_plus_1 + "_");
- String _statePathName = this.roomExt.getStatePathName(state);
- String _plus_3 = (_plus_2 + _statePathName);
- String filename = (_plus_3 + "_behavior.jpg");
- String _replaceAll = filename.replaceAll("\\\\", "/");
- filename = _replaceAll;
- String latexFilename = filename.replaceAll("/", "//");
- String _plus_4 = ("Gen Filename: " + filename);
- this.logger.logInfo(_plus_4);
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("\\level{4}{Subgraph ");
- String _statePathName_1 = this.roomExt.getStatePathName(state);
- String _replaceAll_1 = _statePathName_1.replaceAll("_", "\\\\_");
- _builder.append(_replaceAll_1, "");
- _builder.append("}");
- _builder.newLineIfNotEmpty();
- {
- String _fileExists = this.fileExists(filename);
- boolean _equals = _fileExists.equals("true");
- if (_equals) {
- String _name_1 = ac.getName();
- String _plus_5 = (_name_1 + "_");
- String _statePathName_2 = this.roomExt.getStatePathName(state);
- String _plus_6 = (_plus_5 + _statePathName_2);
- CharSequence _includeGraphics = this.includeGraphics(latexFilename, "0.4", _plus_6);
- _builder.append(_includeGraphics, "");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _builder.append("\\begin{par}");
- _builder.newLine();
- {
- StateGraph _subgraph = state.getSubgraph();
- EList<State> _states = _subgraph.getStates();
- for(final State s : _states) {
- {
- Documentation _docu = s.getDocu();
- boolean _notEquals = (!Objects.equal(_docu, null));
- if (_notEquals) {
- _builder.append("\\textbf{State description} \\textit{");
- String _statePathName_3 = this.roomExt.getStatePathName(s);
- String _replaceAll_2 = _statePathName_3.replaceAll("_", "\\\\_");
- _builder.append(_replaceAll_2, "");
- _builder.append("}:");
- _builder.newLineIfNotEmpty();
- _builder.append("\\newline");
- _builder.newLine();
- Documentation _docu_1 = s.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu_1);
- _builder.append(_generateDocText, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\newline\\newline");
- _builder.newLine();
- }
- }
- }
- }
- _builder.newLine();
- {
- StateGraph _subgraph_1 = state.getSubgraph();
- EList<ChoicePoint> _chPoints = _subgraph_1.getChPoints();
- for(final ChoicePoint c : _chPoints) {
- {
- Documentation _docu_2 = c.getDocu();
- boolean _notEquals_1 = (!Objects.equal(_docu_2, null));
- if (_notEquals_1) {
- _builder.append("\\textbf{Choicepoint description} \\textit{");
- String _name_2 = c.getName();
- _builder.append(_name_2, "");
- _builder.append("}:");
- _builder.newLineIfNotEmpty();
- _builder.append("\\newline");
- _builder.newLine();
- Documentation _docu_3 = c.getDocu();
- CharSequence _generateDocText_1 = this.generateDocText(_docu_3);
- _builder.append(_generateDocText_1, "");
- _builder.newLineIfNotEmpty();
- _builder.append("\\newline\\newline");
- _builder.newLine();
- }
- }
- }
- }
- _builder.append("\\end{par}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- {
- StateGraph _subgraph_2 = state.getSubgraph();
- EList<State> _states_1 = _subgraph_2.getStates();
- for(final State s_1 : _states_1) {
- {
- boolean _isLeaf = this.roomExt.isLeaf(s_1);
- boolean _not = (!_isLeaf);
- if (_not) {
- CharSequence _generateStateDoc = this.generateStateDoc(model, ac, s_1);
- _builder.append(_generateStateDoc, "");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public CharSequence generateAttributesDoc(final List<Attribute> attributes) {
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _isEmpty = attributes.isEmpty();
- boolean _not = (!_isEmpty);
- if (_not) {
- _builder.append("\\begin{tabular}[ht]{|l|l|l|}");
- _builder.newLine();
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("Name & Type & Description\\\\");
- _builder.newLine();
- {
- for(final Attribute at : attributes) {
- _builder.append("\\hline");
- _builder.newLine();
- String _name = at.getName();
- _builder.append(_name, "");
- _builder.append(" & ");
- RefableType _refType = at.getRefType();
- DataType _type = _refType.getType();
- String _name_1 = _type.getName();
- _builder.append(_name_1, "");
- _builder.append(" & ");
- Documentation _docu = at.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu);
- _builder.append(_generateDocText, "");
- _builder.append("\\\\");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\\end{tabular}");
- _builder.newLine();
- }
- }
- return _builder;
- }
-
- public CharSequence generateOperationsDoc(final List<StandardOperation> operations) {
- StringConcatenation _builder = new StringConcatenation();
- {
- for(final StandardOperation op : operations) {
- _builder.append("\\begin{tabular}[ht]{|l|l|}");
- _builder.newLine();
- _builder.append("\\hline\t\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("Name: & ");
- String _name = op.getName();
- _builder.append(_name, " ");
- _builder.append("\\\\");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("ReturnType: & ");
- {
- RefableType _returntype = op.getReturntype();
- boolean _notEquals = (!Objects.equal(_returntype, null));
- if (_notEquals) {
- RefableType _returntype_1 = op.getReturntype();
- DataType _type = _returntype_1.getType();
- String _name_1 = _type.getName();
- _builder.append(_name_1, " ");
- } else {
- _builder.append("void");
- }
- }
- _builder.append("\\\\");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("Arguments: & ");
- {
- EList<VarDecl> _arguments = op.getArguments();
- boolean _hasElements = false;
- for(final VarDecl pa : _arguments) {
- if (!_hasElements) {
- _hasElements = true;
- } else {
- _builder.appendImmediate(", ", " ");
- }
- String _name_2 = pa.getName();
- _builder.append(_name_2, " ");
- _builder.append(":");
- RefableType _refType = pa.getRefType();
- DataType _type_1 = _refType.getType();
- String _name_3 = _type_1.getName();
- _builder.append(_name_3, " ");
- }
- }
- _builder.append("\\\\");
- _builder.newLineIfNotEmpty();
- {
- Documentation _docu = op.getDocu();
- boolean _notEquals_1 = (!Objects.equal(_docu, null));
- if (_notEquals_1) {
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- {
- Documentation _docu_1 = op.getDocu();
- String _string = _docu_1.toString();
- int _length = _string.length();
- boolean _greaterThan = (_length > 85);
- if (_greaterThan) {
- _builder.append("\t");
- _builder.append("\\multicolumn{2} {|p{13cm}|} {");
- Documentation _docu_2 = op.getDocu();
- CharSequence _generateDocText = this.generateDocText(_docu_2);
- _builder.append(_generateDocText, " ");
- _builder.append("}\\\\");
- _builder.newLineIfNotEmpty();
- } else {
- _builder.append("\t");
- _builder.append("\\multicolumn{2} {|l|} {");
- Documentation _docu_3 = op.getDocu();
- CharSequence _generateDocText_1 = this.generateDocText(_docu_3);
- _builder.append(_generateDocText_1, " ");
- _builder.append("}\\\\");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.append("\t");
- _builder.append("\\hline");
- _builder.newLine();
- _builder.append("\\end{tabular}");
- _builder.newLine();
- _builder.append("\\newline\\newline\\newline");
- _builder.newLine();
- }
- }
- return _builder;
- }
-
- public CharSequence generateDocText(final Documentation doc) {
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _notEquals = (!Objects.equal(doc, null));
- if (_notEquals) {
- EList<String> _text = doc.getText();
- String _join = IterableExtensions.join(_text);
- _builder.append(_join, "");
- _builder.newLineIfNotEmpty();
- }
- }
- return _builder;
- }
-
- public String fileExists(final String f) {
- File _file = new File(f);
- final File file = _file;
- final boolean exist = file.exists();
- boolean _equals = (exist == true);
- if (_equals) {
- String _plus = ("File found ! " + f);
- this.logger.logInfo(_plus);
- return "true";
- } else {
- String _plus_1 = ("File not found ! " + f);
- this.logger.logInfo(_plus_1);
- return "false";
- }
- }
-
- public CharSequence includeGraphics(final String filename, final String scale, final String caption) {
- CharSequence _xblockexpression = null;
- {
- String latexCaption = caption.replaceAll("_", "\\\\_");
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("\\begin{center}");
- _builder.newLine();
- _builder.append("\\includegraphics[scale=");
- _builder.append(scale, "");
- _builder.append("]{");
- _builder.append(filename, "");
- _builder.append("}");
- _builder.newLineIfNotEmpty();
- _builder.append("\\figcaption{");
- _builder.append(latexCaption, "");
- _builder.append("}");
- _builder.newLineIfNotEmpty();
- _builder.append("\\end{center}");
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public String irgendwas(final Root root, final ActorClass ac) {
- String _name = ac.getName();
- return (_name + ".bla");
- }
-
- public CharSequence generateProtocolClassDoc(final Root root, final GeneralProtocolClass pc) {
- if (pc instanceof CompoundProtocolClass) {
- return _generateProtocolClassDoc(root, (CompoundProtocolClass)pc);
- } else if (pc instanceof ProtocolClass) {
- return _generateProtocolClassDoc(root, (ProtocolClass)pc);
- } else {
- throw new IllegalArgumentException("Unhandled parameter types: " +
- Arrays.<Object>asList(root, pc).toString());
- }
- }
-}
+package org.eclipse.etrice.generator.doc.gen;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.io.File;
+import java.util.Arrays;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.ChoicePoint;
+import org.eclipse.etrice.core.room.CompoundProtocolClass;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DataType;
+import org.eclipse.etrice.core.room.Documentation;
+import org.eclipse.etrice.core.room.GeneralProtocolClass;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.core.room.StandardOperation;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.etrice.core.room.StateGraph;
+import org.eclipse.etrice.core.room.SubProtocol;
+import org.eclipse.etrice.core.room.SubSystemClass;
+import org.eclipse.etrice.core.room.VarDecl;
+import org.eclipse.etrice.core.room.util.RoomHelpers;
+import org.eclipse.etrice.generator.base.IRoomGenerator;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class DocGen implements IRoomGenerator {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private RoomExtensions roomExt;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root) {
+ EList<RoomModel> _models = root.getModels();
+ for (final RoomModel model : _models) {
+ {
+ String path = this.roomExt.getDocGenerationTargetPath(model);
+ String _name = model.getName();
+ String file = (_name + ".tex");
+ String _plus = ("generating LaTeX documentation: \'" + file);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ this.fileAccess.setOutputPath(path);
+ CharSequence _generateModelDoc = this.generateModelDoc(root, model);
+ this.fileAccess.generateFile(file, _generateModelDoc);
+ }
+ }
+ }
+
+ public CharSequence generateModelDoc(final Root root, final RoomModel model) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\\documentclass[titlepage]{article}");
+ _builder.newLine();
+ _builder.append("\\usepackage{graphicx}");
+ _builder.newLine();
+ _builder.append("\\usepackage[a4paper,text={160mm,255mm},centering,headsep=5mm,footskip=10mm]{geometry}");
+ _builder.newLine();
+ _builder.append("\\usepackage{nonfloat}");
+ _builder.newLine();
+ _builder.append("\\parindent 0pt");
+ _builder.newLine();
+ _builder.append("\\makeatletter");
+ _builder.newLine();
+ _builder.append("\\newcommand\\level[1]{%");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\ifcase#1\\relax\\expandafter\\chapter\\or");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\expandafter\\section\\or");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\expandafter\\subsection\\or");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\expandafter\\subsubsection\\else");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\def\\next{\\@level{#1}}\\expandafter\\next");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\fi}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\\newcommand{\\@level}[1]{%");
+ _builder.newLine();
+ _builder.append("\\@startsection{level#1}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("{#1}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("{\\z@}%");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("{-3.25ex\\@plus -1ex \\@minus -.2ex}%");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("{1.5ex \\@plus .2ex}%");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("{\\normalfont\\normalsize\\bfseries}}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\\newdimen\\@leveldim");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\newdimen\\@dotsdim");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("{\\normalfont\\normalsize");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\sbox\\z@{0}\\global\\@leveldim=\\wd\\z@");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\sbox\\z@{.}\\global\\@dotsdim=\\wd\\z@");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("} ");
+ _builder.newLine();
+ _builder.append("\\newcounter{level4}[subsubsection]");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\@namedef{thelevel4}{\\thesubsubsection.\\arabic{level4}}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\@namedef{level4mark}#1{}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\def\\l@section{\\@dottedtocline{1}{0pt}{\\dimexpr\\@leveldim*4+\\@dotsdim*1+6pt\\relax}}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\def\\l@subsection{\\@dottedtocline{2}{0pt}{\\dimexpr\\@leveldim*5+\\@dotsdim*2+6pt\\relax}}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\def\\l@subsubsection{\\@dottedtocline{3}{0pt}{\\dimexpr\\@leveldim*6+\\@dotsdim*3+6pt\\relax}}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\@namedef{l@level4}{\\@dottedtocline{4}{0pt}{\\dimexpr\\@leveldim*7+\\@dotsdim*4+6pt\\relax}}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\\count@=4");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\def\\@ncp#1{\\number\\numexpr\\count@+#1\\relax}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\loop\\ifnum\\count@<100");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\begingroup\\edef\\x{\\endgroup");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\noexpand\\newcounter{level\\@ncp{1}}[level\\number\\count@]");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\noexpand\\@namedef{thelevel\\@ncp{1}}{%");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\noexpand\\@nameuse{thelevel\\@ncp{0}}.\\noexpand\\arabic{level\\@ncp{0}}}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\noexpand\\@namedef{level\\@ncp{1}mark}####1{}%");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\noexpand\\@namedef{l@level\\@ncp{1}}%");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("{\\noexpand\\@dottedtocline{\\@ncp{1}}{0pt}{\\the\\dimexpr\\@leveldim*\\@ncp{5}+\\@dotsdim*\\@ncp{0}\\relax}}}%");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\x");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\advance\\count@\\@ne");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\repeat");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\makeatother");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\setcounter{secnumdepth}{100}");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("\\setcounter{tocdepth}{100}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\\title{");
+ String _name = model.getName();
+ _builder.append(_name, "");
+ _builder.append(" Modeldocumentation}");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\date{\\today}");
+ _builder.newLine();
+ _builder.append("\\author{generated by eTrice}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\\begin{document}");
+ _builder.newLine();
+ _builder.append("\\pagestyle{plain}");
+ _builder.newLine();
+ _builder.append("\\maketitle");
+ _builder.newLine();
+ _builder.append("\\tableofcontents");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\\newpage");
+ _builder.newLine();
+ _builder.append("\\listoffigures");
+ _builder.newLine();
+ _builder.append("\\newpage");
+ _builder.newLine();
+ _builder.append("\\section{Model Description}");
+ _builder.newLine();
+ Documentation _docu = model.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu);
+ _builder.append(_generateDocText, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\section{Subsystem Description}");
+ _builder.newLine();
+ CharSequence _generateAllSubSysClassDocs = this.generateAllSubSysClassDocs(root, model);
+ _builder.append(_generateAllSubSysClassDocs, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\section{Protocol Class Description}");
+ _builder.newLine();
+ CharSequence _generateAllProtocolClassDocs = this.generateAllProtocolClassDocs(root, model);
+ _builder.append(_generateAllProtocolClassDocs, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\section{Data Class Description}");
+ _builder.newLine();
+ CharSequence _generateAllDataClassDocs = this.generateAllDataClassDocs(root, model);
+ _builder.append(_generateAllDataClassDocs, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\section{Actor Class Description}");
+ _builder.newLine();
+ CharSequence _generateAllActorClassDocs = this.generateAllActorClassDocs(root, model);
+ _builder.append(_generateAllActorClassDocs, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\end{document}");
+ _builder.newLine();
+ return _builder;
+ }
+
+ public CharSequence generateAllSubSysClassDocs(final Root root, final RoomModel model) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ EList<SubSystemClass> _subSystemClasses = model.getSubSystemClasses();
+ for(final SubSystemClass ssc : _subSystemClasses) {
+ CharSequence _generateSubSysClassDoc = this.generateSubSysClassDoc(root, model, ssc);
+ _builder.append(_generateSubSysClassDoc, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence generateSubSysClassDoc(final Root root, final RoomModel model, final SubSystemClass ssc) {
+ CharSequence _xblockexpression = null;
+ {
+ String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
+ String _plus = (_docGenerationTargetPath + "images\\");
+ String _name = ssc.getName();
+ String _plus_1 = (_plus + _name);
+ String filename = (_plus_1 + "_structure.jpg");
+ String _replaceAll = filename.replaceAll("\\\\", "/");
+ filename = _replaceAll;
+ String latexFilename = filename.replaceAll("/", "//");
+ String _docGenerationTargetPath_1 = this.roomExt.getDocGenerationTargetPath(model);
+ String _plus_2 = (_docGenerationTargetPath_1 + "images\\");
+ String _name_1 = ssc.getName();
+ String _plus_3 = (_plus_2 + _name_1);
+ String filenamei = (_plus_3 + "_instanceTree.jpg");
+ String _replaceAll_1 = filenamei.replaceAll("\\\\", "/");
+ filenamei = _replaceAll_1;
+ String latexFilenamei = filenamei.replaceAll("/", "//");
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\\level{2}{");
+ String _name_2 = ssc.getName();
+ _builder.append(_name_2, "");
+ _builder.append("}");
+ _builder.newLineIfNotEmpty();
+ Documentation _docu = ssc.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu);
+ _builder.append(_generateDocText, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\level{3}{Structure}");
+ _builder.newLine();
+ {
+ String _fileExists = this.fileExists(filename);
+ boolean _equals = _fileExists.equals("true");
+ if (_equals) {
+ String _name_3 = ssc.getName();
+ String _plus_4 = (_name_3 + " Structure");
+ CharSequence _includeGraphics = this.includeGraphics(latexFilename, "0.4", _plus_4);
+ _builder.append(_includeGraphics, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\\level{3}{Instance Tree}");
+ _builder.newLine();
+ {
+ String _fileExists_1 = this.fileExists(filename);
+ boolean _equals_1 = _fileExists_1.equals("true");
+ if (_equals_1) {
+ String _name_4 = ssc.getName();
+ String _plus_5 = (_name_4 + " Instance Tree");
+ CharSequence _includeGraphics_1 = this.includeGraphics(latexFilenamei, "0.5", _plus_5);
+ _builder.append(_includeGraphics_1, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public CharSequence generateAllDataClassDocs(final Root root, final RoomModel model) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ EList<DataClass> _dataClasses = model.getDataClasses();
+ for(final DataClass dc : _dataClasses) {
+ CharSequence _generateDataClassDoc = this.generateDataClassDoc(root, dc);
+ _builder.append(_generateDataClassDoc, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence generateDataClassDoc(final Root root, final DataClass dc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\\level{2} {");
+ String _name = dc.getName();
+ _builder.append(_name, "");
+ _builder.append("}");
+ _builder.newLineIfNotEmpty();
+ Documentation _docu = dc.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu);
+ _builder.append(_generateDocText, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\level{3}{Attributes}");
+ _builder.newLine();
+ EList<Attribute> _attributes = dc.getAttributes();
+ CharSequence _generateAttributesDoc = this.generateAttributesDoc(_attributes);
+ _builder.append(_generateAttributesDoc, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\\level{3}{Operations}");
+ _builder.newLine();
+ EList<StandardOperation> _operations = dc.getOperations();
+ CharSequence _generateOperationsDoc = this.generateOperationsDoc(_operations);
+ _builder.append(_generateOperationsDoc, "");
+ _builder.newLineIfNotEmpty();
+ return _builder;
+ }
+
+ public CharSequence generateAllProtocolClassDocs(final Root root, final RoomModel model) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ EList<GeneralProtocolClass> _protocolClasses = model.getProtocolClasses();
+ for(final GeneralProtocolClass pc : _protocolClasses) {
+ CharSequence _generateProtocolClassDoc = this.generateProtocolClassDoc(root, pc);
+ _builder.append(_generateProtocolClassDoc, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ protected CharSequence _generateProtocolClassDoc(final Root root, final ProtocolClass pc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\t");
+ _builder.append("\\level{2} {");
+ String _name = pc.getName();
+ _builder.append(_name, " ");
+ _builder.append("}");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ Documentation _docu = pc.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu);
+ _builder.append(_generateDocText, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\\level{3}{Incoming Messages}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\\begin{tabular}[ht]{|l|l|l|}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("Message & Data & Description\\\\");
+ _builder.newLine();
+ {
+ List<Message> _allIncomingMessages = this.roomExt.getAllIncomingMessages(pc);
+ for(final Message ims : _allIncomingMessages) {
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\t");
+ String _name_1 = ims.getName();
+ _builder.append(_name_1, " ");
+ _builder.append(" & ");
+ {
+ VarDecl _data = ims.getData();
+ boolean _notEquals = (!Objects.equal(_data, null));
+ if (_notEquals) {
+ _builder.append(" ");
+ VarDecl _data_1 = ims.getData();
+ String _name_2 = _data_1.getName();
+ _builder.append(_name_2, " ");
+ _builder.append(" ");
+ }
+ }
+ _builder.append(" & ");
+ Documentation _docu_1 = ims.getDocu();
+ CharSequence _generateDocText_1 = this.generateDocText(_docu_1);
+ _builder.append(_generateDocText_1, " ");
+ _builder.append("\\\\");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\\end{tabular}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\\level{3}{Outgoing Messages}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\\begin{tabular}[ht]{|l|l|l|}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("Message & Data & Description\\\\");
+ _builder.newLine();
+ {
+ List<Message> _allOutgoingMessages = this.roomExt.getAllOutgoingMessages(pc);
+ for(final Message oms : _allOutgoingMessages) {
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\t");
+ String _name_3 = oms.getName();
+ _builder.append(_name_3, " ");
+ _builder.append(" & ");
+ {
+ VarDecl _data_2 = oms.getData();
+ boolean _notEquals_1 = (!Objects.equal(_data_2, null));
+ if (_notEquals_1) {
+ _builder.append(" ");
+ VarDecl _data_3 = oms.getData();
+ String _name_4 = _data_3.getName();
+ _builder.append(_name_4, " ");
+ _builder.append(" ");
+ }
+ }
+ _builder.append(" & ");
+ Documentation _docu_2 = oms.getDocu();
+ CharSequence _generateDocText_2 = this.generateDocText(_docu_2);
+ _builder.append(_generateDocText_2, " ");
+ _builder.append("\\\\");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\\end{tabular}\t\t\t");
+ _builder.newLine();
+ return _builder;
+ }
+
+ protected CharSequence _generateProtocolClassDoc(final Root root, final CompoundProtocolClass pc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\\level{2} {");
+ String _name = pc.getName();
+ _builder.append(_name, "");
+ _builder.append("}");
+ _builder.newLineIfNotEmpty();
+ Documentation _docu = pc.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu);
+ _builder.append(_generateDocText, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\level{3}{Sub Protocols}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\\begin{tabular}[ht]{|l|l|}");
+ _builder.newLine();
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("Name & Protocol\\\\");
+ _builder.newLine();
+ {
+ EList<SubProtocol> _subProtocols = pc.getSubProtocols();
+ for(final SubProtocol sub : _subProtocols) {
+ _builder.append("\\hline");
+ _builder.newLine();
+ String _name_1 = sub.getName();
+ _builder.append(_name_1, "");
+ _builder.append(" & ");
+ GeneralProtocolClass _protocol = sub.getProtocol();
+ String _name_2 = _protocol.getName();
+ _builder.append(_name_2, "");
+ _builder.append("\\\\");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\\end{tabular}");
+ _builder.newLine();
+ return _builder;
+ }
+
+ public CharSequence generateAllActorClassDocs(final Root root, final RoomModel model) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ EList<ActorClass> _actorClasses = model.getActorClasses();
+ for(final ActorClass ac : _actorClasses) {
+ CharSequence _generateActorClassDoc = this.generateActorClassDoc(root, model, ac);
+ _builder.append(_generateActorClassDoc, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence generateActorClassDoc(final Root root, final RoomModel model, final ActorClass ac) {
+ CharSequence _xblockexpression = null;
+ {
+ String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
+ String _plus = (_docGenerationTargetPath + "images\\");
+ String _name = ac.getName();
+ String _plus_1 = (_plus + _name);
+ String filename = (_plus_1 + "_structure.jpg");
+ String _replaceAll = filename.replaceAll("\\\\", "/");
+ filename = _replaceAll;
+ String latexFilename = filename.replaceAll("/", "//");
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\\level{2}{");
+ String _name_1 = ac.getName();
+ _builder.append(_name_1, "");
+ _builder.append("}");
+ _builder.newLineIfNotEmpty();
+ Documentation _docu = ac.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu);
+ _builder.append(_generateDocText, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\level{3}{Structure}");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ String _fileExists = this.fileExists(filename);
+ boolean _equals = _fileExists.equals("true");
+ if (_equals) {
+ String _name_2 = ac.getName();
+ String _plus_2 = (_name_2 + " Structure");
+ CharSequence _includeGraphics = this.includeGraphics(latexFilename, "0.4", _plus_2);
+ _builder.append(_includeGraphics, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.append("\\level{3}{Attributes}");
+ _builder.newLine();
+ EList<Attribute> _attributes = ac.getAttributes();
+ CharSequence _generateAttributesDoc = this.generateAttributesDoc(_attributes);
+ _builder.append(_generateAttributesDoc, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\\level{3}{Operations}");
+ _builder.newLine();
+ EList<StandardOperation> _operations = ac.getOperations();
+ CharSequence _generateOperationsDoc = this.generateOperationsDoc(_operations);
+ _builder.append(_generateOperationsDoc, "");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _hasNonEmptyStateMachine = RoomHelpers.hasNonEmptyStateMachine(ac);
+ if (_hasNonEmptyStateMachine) {
+ _builder.append("\\level{3}{Statemachine}");
+ _builder.newLine();
+ CharSequence _generateFsmDoc = this.generateFsmDoc(model, ac);
+ _builder.append(_generateFsmDoc, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public CharSequence generateFsmDoc(final RoomModel model, final ActorClass ac) {
+ CharSequence _xblockexpression = null;
+ {
+ String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
+ String _plus = (_docGenerationTargetPath + "images\\");
+ String _name = ac.getName();
+ String _plus_1 = (_plus + _name);
+ String filename = (_plus_1 + "_behavior.jpg");
+ String _replaceAll = filename.replaceAll("\\\\", "/");
+ filename = _replaceAll;
+ String latexFilename = filename.replaceAll("/", "//");
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\\level{4}{Top Level}");
+ _builder.newLine();
+ {
+ String _fileExists = this.fileExists(filename);
+ boolean _equals = _fileExists.equals("true");
+ if (_equals) {
+ String _name_1 = ac.getName();
+ String _plus_2 = (_name_1 + " Top State");
+ CharSequence _includeGraphics = this.includeGraphics(latexFilename, "0.4", _plus_2);
+ _builder.append(_includeGraphics, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.append("\\begin{par}");
+ _builder.newLine();
+ {
+ StateGraph _stateMachine = ac.getStateMachine();
+ EList<State> _states = _stateMachine.getStates();
+ for(final State s : _states) {
+ {
+ Documentation _docu = s.getDocu();
+ boolean _notEquals = (!Objects.equal(_docu, null));
+ if (_notEquals) {
+ _builder.append("\\textbf{State description} \\textit{");
+ String _statePathName = this.roomExt.getStatePathName(s);
+ String _replaceAll_1 = _statePathName.replaceAll("_", "\\\\_");
+ _builder.append(_replaceAll_1, "");
+ _builder.append("}:");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\newline");
+ _builder.newLine();
+ Documentation _docu_1 = s.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu_1);
+ _builder.append(_generateDocText, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\newline\\newline");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ {
+ StateGraph _stateMachine_1 = ac.getStateMachine();
+ EList<ChoicePoint> _chPoints = _stateMachine_1.getChPoints();
+ for(final ChoicePoint c : _chPoints) {
+ {
+ Documentation _docu_2 = c.getDocu();
+ boolean _notEquals_1 = (!Objects.equal(_docu_2, null));
+ if (_notEquals_1) {
+ _builder.append("\\textbf{Choicepoint description} \\textit{");
+ String _name_2 = c.getName();
+ _builder.append(_name_2, "");
+ _builder.append("}:");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\newline");
+ _builder.newLine();
+ Documentation _docu_3 = c.getDocu();
+ CharSequence _generateDocText_1 = this.generateDocText(_docu_3);
+ _builder.append(_generateDocText_1, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\newline\\newline");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.append("\\end{par}");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ StateGraph _stateMachine_2 = ac.getStateMachine();
+ EList<State> _states_1 = _stateMachine_2.getStates();
+ for(final State s_1 : _states_1) {
+ {
+ boolean _isLeaf = this.roomExt.isLeaf(s_1);
+ boolean _not = (!_isLeaf);
+ if (_not) {
+ CharSequence _generateStateDoc = this.generateStateDoc(model, ac, s_1);
+ _builder.append(_generateStateDoc, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public CharSequence generateStateDoc(final RoomModel model, final ActorClass ac, final State state) {
+ CharSequence _xblockexpression = null;
+ {
+ String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
+ String _plus = (_docGenerationTargetPath + "images\\");
+ String _name = ac.getName();
+ String _plus_1 = (_plus + _name);
+ String _plus_2 = (_plus_1 + "_");
+ String _statePathName = this.roomExt.getStatePathName(state);
+ String _plus_3 = (_plus_2 + _statePathName);
+ String filename = (_plus_3 + "_behavior.jpg");
+ String _replaceAll = filename.replaceAll("\\\\", "/");
+ filename = _replaceAll;
+ String latexFilename = filename.replaceAll("/", "//");
+ String _plus_4 = ("Gen Filename: " + filename);
+ this.logger.logInfo(_plus_4);
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\\level{4}{Subgraph ");
+ String _statePathName_1 = this.roomExt.getStatePathName(state);
+ String _replaceAll_1 = _statePathName_1.replaceAll("_", "\\\\_");
+ _builder.append(_replaceAll_1, "");
+ _builder.append("}");
+ _builder.newLineIfNotEmpty();
+ {
+ String _fileExists = this.fileExists(filename);
+ boolean _equals = _fileExists.equals("true");
+ if (_equals) {
+ String _name_1 = ac.getName();
+ String _plus_5 = (_name_1 + "_");
+ String _statePathName_2 = this.roomExt.getStatePathName(state);
+ String _plus_6 = (_plus_5 + _statePathName_2);
+ CharSequence _includeGraphics = this.includeGraphics(latexFilename, "0.4", _plus_6);
+ _builder.append(_includeGraphics, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.append("\\begin{par}");
+ _builder.newLine();
+ {
+ StateGraph _subgraph = state.getSubgraph();
+ EList<State> _states = _subgraph.getStates();
+ for(final State s : _states) {
+ {
+ Documentation _docu = s.getDocu();
+ boolean _notEquals = (!Objects.equal(_docu, null));
+ if (_notEquals) {
+ _builder.append("\\textbf{State description} \\textit{");
+ String _statePathName_3 = this.roomExt.getStatePathName(s);
+ String _replaceAll_2 = _statePathName_3.replaceAll("_", "\\\\_");
+ _builder.append(_replaceAll_2, "");
+ _builder.append("}:");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\newline");
+ _builder.newLine();
+ Documentation _docu_1 = s.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu_1);
+ _builder.append(_generateDocText, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\newline\\newline");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ {
+ StateGraph _subgraph_1 = state.getSubgraph();
+ EList<ChoicePoint> _chPoints = _subgraph_1.getChPoints();
+ for(final ChoicePoint c : _chPoints) {
+ {
+ Documentation _docu_2 = c.getDocu();
+ boolean _notEquals_1 = (!Objects.equal(_docu_2, null));
+ if (_notEquals_1) {
+ _builder.append("\\textbf{Choicepoint description} \\textit{");
+ String _name_2 = c.getName();
+ _builder.append(_name_2, "");
+ _builder.append("}:");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\newline");
+ _builder.newLine();
+ Documentation _docu_3 = c.getDocu();
+ CharSequence _generateDocText_1 = this.generateDocText(_docu_3);
+ _builder.append(_generateDocText_1, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\newline\\newline");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.append("\\end{par}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ {
+ StateGraph _subgraph_2 = state.getSubgraph();
+ EList<State> _states_1 = _subgraph_2.getStates();
+ for(final State s_1 : _states_1) {
+ {
+ boolean _isLeaf = this.roomExt.isLeaf(s_1);
+ boolean _not = (!_isLeaf);
+ if (_not) {
+ CharSequence _generateStateDoc = this.generateStateDoc(model, ac, s_1);
+ _builder.append(_generateStateDoc, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public CharSequence generateAttributesDoc(final List<Attribute> attributes) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _isEmpty = attributes.isEmpty();
+ boolean _not = (!_isEmpty);
+ if (_not) {
+ _builder.append("\\begin{tabular}[ht]{|l|l|l|}");
+ _builder.newLine();
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("Name & Type & Description\\\\");
+ _builder.newLine();
+ {
+ for(final Attribute at : attributes) {
+ _builder.append("\\hline");
+ _builder.newLine();
+ String _name = at.getName();
+ _builder.append(_name, "");
+ _builder.append(" & ");
+ RefableType _refType = at.getRefType();
+ DataType _type = _refType.getType();
+ String _name_1 = _type.getName();
+ _builder.append(_name_1, "");
+ _builder.append(" & ");
+ Documentation _docu = at.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu);
+ _builder.append(_generateDocText, "");
+ _builder.append("\\\\");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\\end{tabular}");
+ _builder.newLine();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence generateOperationsDoc(final List<StandardOperation> operations) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ for(final StandardOperation op : operations) {
+ _builder.append("\\begin{tabular}[ht]{|l|l|}");
+ _builder.newLine();
+ _builder.append("\\hline\t\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("Name: & ");
+ String _name = op.getName();
+ _builder.append(_name, " ");
+ _builder.append("\\\\");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("ReturnType: & ");
+ {
+ RefableType _returntype = op.getReturntype();
+ boolean _notEquals = (!Objects.equal(_returntype, null));
+ if (_notEquals) {
+ RefableType _returntype_1 = op.getReturntype();
+ DataType _type = _returntype_1.getType();
+ String _name_1 = _type.getName();
+ _builder.append(_name_1, " ");
+ } else {
+ _builder.append("void");
+ }
+ }
+ _builder.append("\\\\");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("Arguments: & ");
+ {
+ EList<VarDecl> _arguments = op.getArguments();
+ boolean _hasElements = false;
+ for(final VarDecl pa : _arguments) {
+ if (!_hasElements) {
+ _hasElements = true;
+ } else {
+ _builder.appendImmediate(", ", " ");
+ }
+ String _name_2 = pa.getName();
+ _builder.append(_name_2, " ");
+ _builder.append(":");
+ RefableType _refType = pa.getRefType();
+ DataType _type_1 = _refType.getType();
+ String _name_3 = _type_1.getName();
+ _builder.append(_name_3, " ");
+ }
+ }
+ _builder.append("\\\\");
+ _builder.newLineIfNotEmpty();
+ {
+ Documentation _docu = op.getDocu();
+ boolean _notEquals_1 = (!Objects.equal(_docu, null));
+ if (_notEquals_1) {
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ {
+ Documentation _docu_1 = op.getDocu();
+ String _string = _docu_1.toString();
+ int _length = _string.length();
+ boolean _greaterThan = (_length > 85);
+ if (_greaterThan) {
+ _builder.append("\t");
+ _builder.append("\\multicolumn{2} {|p{13cm}|} {");
+ Documentation _docu_2 = op.getDocu();
+ CharSequence _generateDocText = this.generateDocText(_docu_2);
+ _builder.append(_generateDocText, " ");
+ _builder.append("}\\\\");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("\t");
+ _builder.append("\\multicolumn{2} {|l|} {");
+ Documentation _docu_3 = op.getDocu();
+ CharSequence _generateDocText_1 = this.generateDocText(_docu_3);
+ _builder.append(_generateDocText_1, " ");
+ _builder.append("}\\\\");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.append("\t");
+ _builder.append("\\hline");
+ _builder.newLine();
+ _builder.append("\\end{tabular}");
+ _builder.newLine();
+ _builder.append("\\newline\\newline\\newline");
+ _builder.newLine();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence generateDocText(final Documentation doc) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _notEquals = (!Objects.equal(doc, null));
+ if (_notEquals) {
+ EList<String> _text = doc.getText();
+ String _join = IterableExtensions.join(_text);
+ _builder.append(_join, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ public String fileExists(final String f) {
+ File _file = new File(f);
+ final File file = _file;
+ final boolean exist = file.exists();
+ boolean _equals = (exist == true);
+ if (_equals) {
+ String _plus = ("File found ! " + f);
+ this.logger.logInfo(_plus);
+ return "true";
+ } else {
+ String _plus_1 = ("File not found ! " + f);
+ this.logger.logInfo(_plus_1);
+ return "false";
+ }
+ }
+
+ public CharSequence includeGraphics(final String filename, final String scale, final String caption) {
+ CharSequence _xblockexpression = null;
+ {
+ String latexCaption = caption.replaceAll("_", "\\\\_");
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\\begin{center}");
+ _builder.newLine();
+ _builder.append("\\includegraphics[scale=");
+ _builder.append(scale, "");
+ _builder.append("]{");
+ _builder.append(filename, "");
+ _builder.append("}");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\figcaption{");
+ _builder.append(latexCaption, "");
+ _builder.append("}");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\\end{center}");
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public String irgendwas(final Root root, final ActorClass ac) {
+ String _name = ac.getName();
+ return (_name + ".bla");
+ }
+
+ public CharSequence generateProtocolClassDoc(final Root root, final GeneralProtocolClass pc) {
+ if (pc instanceof CompoundProtocolClass) {
+ return _generateProtocolClassDoc(root, (CompoundProtocolClass)pc);
+ } else if (pc instanceof ProtocolClass) {
+ return _generateProtocolClassDoc(root, (ProtocolClass)pc);
+ } else {
+ throw new IllegalArgumentException("Unhandled parameter types: " +
+ Arrays.<Object>asList(root, pc).toString());
+ }
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/InstanceDiagramGen.java b/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/InstanceDiagramGen.java
index 105573221..fd37ab880 100644
--- a/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/InstanceDiagramGen.java
+++ b/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/InstanceDiagramGen.java
@@ -1,173 +1,173 @@
-package org.eclipse.etrice.generator.doc.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.StructureInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.SubSystemClass;
-import org.eclipse.etrice.generator.base.IRoomGenerator;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-import org.eclipse.xtext.xbase.lib.Exceptions;
-
-@Singleton
-@SuppressWarnings("all")
-public class InstanceDiagramGen implements IRoomGenerator {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private RoomExtensions roomExt;
-
- @Inject
- private ILogger logger;
-
- public void doGenerate(final Root root) {
- EList<RoomModel> _models = root.getModels();
- for (final RoomModel model : _models) {
- {
- String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
- String path = (_docGenerationTargetPath + "/images");
- this.fileAccess.setOutputPath(path);
- String file2 = "dot2jpg.bat";
- EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
- for (final SubSystemInstance sc : _subSystemInstances) {
- {
- String _name = sc.getName();
- String file = (_name + "_instanceTree.dot");
- String _plus = ("generating LaTeX documentation: \'" + file);
- String _plus_1 = (_plus + "\' in \'");
- String _plus_2 = (_plus_1 + path);
- String _plus_3 = (_plus_2 + "\'");
- this.logger.logInfo(_plus_3);
- SubSystemClass _subSystemClass = sc.getSubSystemClass();
- CharSequence _generate = this.generate(root, sc, _subSystemClass);
- this.fileAccess.generateFile(file, _generate);
- }
- }
- CharSequence _generate2jpg = this.generate2jpg(root);
- this.fileAccess.generateFile(file2, _generate2jpg);
- this.runDot2Jpg();
- }
- }
- }
-
- public CharSequence generate2jpg(final Root root) {
- StringConcatenation _builder = new StringConcatenation();
- {
- EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
- for(final SubSystemInstance sc : _subSystemInstances) {
- _builder.append("dot -Tjpg -o ");
- String _name = sc.getName();
- _builder.append(_name, "");
- _builder.append("_instanceTree.jpg ");
- String _name_1 = sc.getName();
- _builder.append(_name_1, "");
- _builder.append("_instanceTree.dot");
- _builder.newLineIfNotEmpty();
- }
- }
- return _builder;
- }
-
- public CharSequence generate(final Root root, final SubSystemInstance ssi, final SubSystemClass ssc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("digraph ");
- String _name = ssi.getName();
- _builder.append(_name, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("rankdir=LR;");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("node [shape=box];");
- _builder.newLine();
- _builder.append("\t");
- String _path = ssi.getPath();
- String _pathName = this.roomExt.getPathName(_path);
- _builder.append(_pathName, " ");
- _builder.append(" [label=\"");
- String _name_1 = ssc.getName();
- _builder.append(_name_1, " ");
- _builder.append("\\n(");
- String _name_2 = ssi.getName();
- _builder.append(_name_2, " ");
- _builder.append(")\" style=filled color=yellow];");
- _builder.newLineIfNotEmpty();
- {
- EList<ActorInstance> _instances = ssi.getInstances();
- for(final ActorInstance ai : _instances) {
- _builder.append("\t");
- CharSequence _instance = this.instance(ai);
- _builder.append(_instance, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("}");
- _builder.newLine();
- return _builder;
- }
-
- public CharSequence instance(final ActorInstance ai) {
- StringConcatenation _builder = new StringConcatenation();
- EObject _eContainer = ai.eContainer();
- StructureInstance parent = ((StructureInstance) _eContainer);
- _builder.newLineIfNotEmpty();
- String _path = ai.getPath();
- String _pathName = this.roomExt.getPathName(_path);
- _builder.append(_pathName, "");
- _builder.append(" [label=\"");
- String _name = ai.getName();
- _builder.append(_name, "");
- _builder.append("\\n(");
- ActorClass _actorClass = ai.getActorClass();
- String _name_1 = _actorClass.getName();
- _builder.append(_name_1, "");
- _builder.append(")\"];");
- _builder.newLineIfNotEmpty();
- String _path_1 = parent.getPath();
- String _pathName_1 = this.roomExt.getPathName(_path_1);
- _builder.append(_pathName_1, "");
- _builder.append(" -> ");
- String _path_2 = ai.getPath();
- String _pathName_2 = this.roomExt.getPathName(_path_2);
- _builder.append(_pathName_2, "");
- _builder.append("; ");
- _builder.newLineIfNotEmpty();
- {
- EList<ActorInstance> _instances = ai.getInstances();
- for(final ActorInstance sub_ai : _instances) {
- CharSequence _instance = this.instance(sub_ai);
- _builder.append(_instance, "");
- _builder.newLineIfNotEmpty();
- }
- }
- return _builder;
- }
-
- public Process runDot2Jpg() {
- Process _xtrycatchfinallyexpression = null;
- try {
- Runtime _runtime = Runtime.getRuntime();
- Process _exec = _runtime.exec("dot2jpg.bat");
- _xtrycatchfinallyexpression = _exec;
- } catch (final Throwable _t) {
- if (_t instanceof Exception) {
- final Exception e = (Exception)_t;
- e.printStackTrace();
- } else {
- throw Exceptions.sneakyThrow(_t);
- }
- }
- return _xtrycatchfinallyexpression;
- }
-}
+package org.eclipse.etrice.generator.doc.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.genmodel.etricegen.StructureInstance;
+import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.core.room.SubSystemClass;
+import org.eclipse.etrice.generator.base.IRoomGenerator;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+import org.eclipse.xtext.xbase.lib.Exceptions;
+
+@Singleton
+@SuppressWarnings("all")
+public class InstanceDiagramGen implements IRoomGenerator {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private RoomExtensions roomExt;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root) {
+ EList<RoomModel> _models = root.getModels();
+ for (final RoomModel model : _models) {
+ {
+ String _docGenerationTargetPath = this.roomExt.getDocGenerationTargetPath(model);
+ String path = (_docGenerationTargetPath + "/images");
+ this.fileAccess.setOutputPath(path);
+ String file2 = "dot2jpg.bat";
+ EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
+ for (final SubSystemInstance sc : _subSystemInstances) {
+ {
+ String _name = sc.getName();
+ String file = (_name + "_instanceTree.dot");
+ String _plus = ("generating LaTeX documentation: \'" + file);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ SubSystemClass _subSystemClass = sc.getSubSystemClass();
+ CharSequence _generate = this.generate(root, sc, _subSystemClass);
+ this.fileAccess.generateFile(file, _generate);
+ }
+ }
+ CharSequence _generate2jpg = this.generate2jpg(root);
+ this.fileAccess.generateFile(file2, _generate2jpg);
+ this.runDot2Jpg();
+ }
+ }
+ }
+
+ public CharSequence generate2jpg(final Root root) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
+ for(final SubSystemInstance sc : _subSystemInstances) {
+ _builder.append("dot -Tjpg -o ");
+ String _name = sc.getName();
+ _builder.append(_name, "");
+ _builder.append("_instanceTree.jpg ");
+ String _name_1 = sc.getName();
+ _builder.append(_name_1, "");
+ _builder.append("_instanceTree.dot");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence generate(final Root root, final SubSystemInstance ssi, final SubSystemClass ssc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("digraph ");
+ String _name = ssi.getName();
+ _builder.append(_name, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("rankdir=LR;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("node [shape=box];");
+ _builder.newLine();
+ _builder.append("\t");
+ String _path = ssi.getPath();
+ String _pathName = this.roomExt.getPathName(_path);
+ _builder.append(_pathName, " ");
+ _builder.append(" [label=\"");
+ String _name_1 = ssc.getName();
+ _builder.append(_name_1, " ");
+ _builder.append("\\n(");
+ String _name_2 = ssi.getName();
+ _builder.append(_name_2, " ");
+ _builder.append(")\" style=filled color=yellow];");
+ _builder.newLineIfNotEmpty();
+ {
+ EList<ActorInstance> _instances = ssi.getInstances();
+ for(final ActorInstance ai : _instances) {
+ _builder.append("\t");
+ CharSequence _instance = this.instance(ai);
+ _builder.append(_instance, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ return _builder;
+ }
+
+ public CharSequence instance(final ActorInstance ai) {
+ StringConcatenation _builder = new StringConcatenation();
+ EObject _eContainer = ai.eContainer();
+ StructureInstance parent = ((StructureInstance) _eContainer);
+ _builder.newLineIfNotEmpty();
+ String _path = ai.getPath();
+ String _pathName = this.roomExt.getPathName(_path);
+ _builder.append(_pathName, "");
+ _builder.append(" [label=\"");
+ String _name = ai.getName();
+ _builder.append(_name, "");
+ _builder.append("\\n(");
+ ActorClass _actorClass = ai.getActorClass();
+ String _name_1 = _actorClass.getName();
+ _builder.append(_name_1, "");
+ _builder.append(")\"];");
+ _builder.newLineIfNotEmpty();
+ String _path_1 = parent.getPath();
+ String _pathName_1 = this.roomExt.getPathName(_path_1);
+ _builder.append(_pathName_1, "");
+ _builder.append(" -> ");
+ String _path_2 = ai.getPath();
+ String _pathName_2 = this.roomExt.getPathName(_path_2);
+ _builder.append(_pathName_2, "");
+ _builder.append("; ");
+ _builder.newLineIfNotEmpty();
+ {
+ EList<ActorInstance> _instances = ai.getInstances();
+ for(final ActorInstance sub_ai : _instances) {
+ CharSequence _instance = this.instance(sub_ai);
+ _builder.append(_instance, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ public Process runDot2Jpg() {
+ Process _xtrycatchfinallyexpression = null;
+ try {
+ Runtime _runtime = Runtime.getRuntime();
+ Process _exec = _runtime.exec("dot2jpg.bat");
+ _xtrycatchfinallyexpression = _exec;
+ } catch (final Throwable _t) {
+ if (_t instanceof Exception) {
+ final Exception e = (Exception)_t;
+ e.printStackTrace();
+ } else {
+ throw Exceptions.sneakyThrow(_t);
+ }
+ }
+ return _xtrycatchfinallyexpression;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/MainGen.java b/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/MainGen.java
index 386caf0d2..28eaa6ec8 100644
--- a/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/MainGen.java
+++ b/plugins/org.eclipse.etrice.generator.doc/xtend-gen/org/eclipse/etrice/generator/doc/gen/MainGen.java
@@ -1,41 +1,41 @@
-package org.eclipse.etrice.generator.doc.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.generator.doc.gen.DocGen;
-import org.eclipse.etrice.generator.doc.gen.InstanceDiagramGen;
-import org.eclipse.etrice.generator.generic.PrepareFileSystem;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.eclipse.xtext.generator.IGenerator;
-
-@Singleton
-@SuppressWarnings("all")
-public class MainGen implements IGenerator {
- @Inject
- private InstanceDiagramGen instanceDiagramGen;
-
- @Inject
- private PrepareFileSystem prepFS;
-
- @Inject
- private DocGen docGen;
-
- public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
- this.prepFS.prepare(resource);
- EList<EObject> _contents = resource.getContents();
- for (final EObject e : _contents) {
- if ((e instanceof Root)) {
- this.doGenerate(((Root) e));
- }
- }
- }
-
- public void doGenerate(final Root e) {
- this.instanceDiagramGen.doGenerate(e);
- this.docGen.doGenerate(e);
- }
-}
+package org.eclipse.etrice.generator.doc.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.generator.doc.gen.DocGen;
+import org.eclipse.etrice.generator.doc.gen.InstanceDiagramGen;
+import org.eclipse.etrice.generator.generic.PrepareFileSystem;
+import org.eclipse.xtext.generator.IFileSystemAccess;
+import org.eclipse.xtext.generator.IGenerator;
+
+@Singleton
+@SuppressWarnings("all")
+public class MainGen implements IGenerator {
+ @Inject
+ private InstanceDiagramGen instanceDiagramGen;
+
+ @Inject
+ private PrepareFileSystem prepFS;
+
+ @Inject
+ private DocGen docGen;
+
+ public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
+ this.prepFS.prepare(resource);
+ EList<EObject> _contents = resource.getContents();
+ for (final EObject e : _contents) {
+ if ((e instanceof Root)) {
+ this.doGenerate(((Root) e));
+ }
+ }
+ }
+
+ public void doGenerate(final Root e) {
+ this.instanceDiagramGen.doGenerate(e);
+ this.docGen.doGenerate(e);
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.fsmtest/xtend-gen/org/eclipse/etrice/generator/generator/.FSMtestGenerator.java._trace b/plugins/org.eclipse.etrice.generator.fsmtest/xtend-gen/org/eclipse/etrice/generator/generator/.FSMtestGenerator.java._trace
deleted file mode 100644
index 3804e4237..000000000
--- a/plugins/org.eclipse.etrice.generator.fsmtest/xtend-gen/org/eclipse/etrice/generator/generator/.FSMtestGenerator.java._trace
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.etrice.generator.fsmtest/xtend-gen/org/eclipse/etrice/generator/generator/FSMtestGenerator.java b/plugins/org.eclipse.etrice.generator.fsmtest/xtend-gen/org/eclipse/etrice/generator/generator/FSMtestGenerator.java
index 2e0d9715a..85ec4254a 100644
--- a/plugins/org.eclipse.etrice.generator.fsmtest/xtend-gen/org/eclipse/etrice/generator/generator/FSMtestGenerator.java
+++ b/plugins/org.eclipse.etrice.generator.fsmtest/xtend-gen/org/eclipse/etrice/generator/generator/FSMtestGenerator.java
@@ -1,11 +1,11 @@
-package org.eclipse.etrice.generator.generator;
-
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.eclipse.xtext.generator.IGenerator;
-
-@SuppressWarnings("all")
-public class FSMtestGenerator implements IGenerator {
- public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
- }
-}
+package org.eclipse.etrice.generator.generator;
+
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.xtext.generator.IFileSystemAccess;
+import org.eclipse.xtext.generator.IGenerator;
+
+@SuppressWarnings("all")
+public class FSMtestGenerator implements IGenerator {
+ public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/ActorClassGen.xtend b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/ActorClassGen.xtend
index 75e2f2937..83762b97b 100644
--- a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/ActorClassGen.xtend
+++ b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/ActorClassGen.xtend
@@ -19,19 +19,21 @@ import org.eclipse.etrice.core.genmodel.base.ILogger
import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass
import org.eclipse.etrice.core.genmodel.etricegen.Root
import org.eclipse.xtext.generator.JavaIoFileSystemAccess
-import static extension org.eclipse.etrice.core.room.util.RoomHelpers.*
-
-import org.eclipse.etrice.generator.base.AbstractGenerator
+import static extension org.eclipse.etrice.core.room.util.RoomHelpers.*
+import org.eclipse.etrice.generator.base.AbstractGenerator
+import org.eclipse.etrice.generator.generic.ConfigExtension
import org.eclipse.etrice.generator.generic.RoomExtensions
import org.eclipse.etrice.generator.generic.ProcedureHelpers
import org.eclipse.etrice.generator.generic.GenericActorClassGenerator
@Singleton
class ActorClassGen extends GenericActorClassGenerator {
-
+
@Inject JavaIoFileSystemAccess fileAccess
- @Inject extension JavaExtensions
- @Inject extension RoomExtensions
+ @Inject extension JavaExtensions stdExt
+ @Inject extension RoomExtensions roomExt
+ @Inject extension ConfigExtension configExt
+ @Inject ConfigGenAddon configAddon
@Inject extension ProcedureHelpers
@Inject extension StateMachineGen
@@ -50,10 +52,14 @@ class ActorClassGen extends GenericActorClassGenerator {
def generate(Root root, ExpandedActorClass xpac, ActorClass ac) {
val ctor = ac.operations.filter(op|op.constructor).head
val dtor = ac.operations.filter(op|op.destructor).head
+ val dynConfigReadAttributes = ac.getDynConfigAttributes(true, false)
+ val dynConfigWriteAttributes = ac.getDynConfigAttributes(false, true)
'''
package «ac.getPackage»;
+ «IF !dynConfigReadAttributes.empty»import org.eclipse.etrice.runtime.java.config.DynConfigLock;«ENDIF»
+ «IF !dynConfigReadAttributes.empty || !dynConfigWriteAttributes.empty»import org.eclipse.etrice.runtime.java.config.VariableService;«ENDIF»
import org.eclipse.etrice.runtime.java.messaging.Address;
import org.eclipse.etrice.runtime.java.messaging.IRTObject;
import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver;
@@ -78,6 +84,10 @@ class ActorClassGen extends GenericActorClassGenerator {
«ac.userCode(2)»
+ «IF !dynConfigWriteAttributes.empty»
+ private VariableService variableService;
+ «ENDIF»
+
//--------------------- ports
«FOR ep : ac.getEndPorts()»
protected «ep.getPortClassName()» «ep.name» = null;
@@ -95,9 +105,13 @@ class ActorClassGen extends GenericActorClassGenerator {
//--------------------- interface item IDs
«genInterfaceItemConstants(xpac, ac)»
-
+
+ «configAddon.genMinMaxConstants(ac)»
«ac.attributes.attributes»
- «ac.operationsImplementation»
+ «FOR a : dynConfigReadAttributes»
+ private DynConfigLock lock_«a.name»;
+ «ENDFOR»
+ «ac.operationsImplementation»
//--------------------- construction
public «ac.name»(IRTObject parent, String name, Address[][] port_addr, Address[][] peer_addr){
@@ -132,7 +146,24 @@ class ActorClassGen extends GenericActorClassGenerator {
}
«ENDIF»
}
- «attributeSettersGettersImplementation(ac.attributes, ac.name)»
+
+ «IF !dynConfigReadAttributes.empty || !dynConfigWriteAttributes.empty»
+ public «ac.name»(IRTObject parent, String name, Address[][] port_addr, Address[][] peer_addr, VariableService variableService){
+ this(parent, name, port_addr, peer_addr);
+
+ «IF !dynConfigWriteAttributes.empty»
+ this.variableService = variableService;
+ «ENDIF»
+ «FOR a : dynConfigReadAttributes»
+ lock_«a.name» = new DynConfigLock();
+ «ENDFOR»
+ }
+ «ENDIF»
+
+ «attributeSettersGettersImplementation(ac.attributes.minus(dynConfigReadAttributes.toList), ac.name)»
+
+ «configAddon.genDynConfigGetterSetter(ac)»
+
//--------------------- port getters
«FOR ep : ac.getEndPorts()»
«ep.portClassName.getterImplementation(ep.name, ac.name)»
@@ -181,4 +212,4 @@ class ActorClassGen extends GenericActorClassGenerator {
};
'''
}
-} \ No newline at end of file
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/ConfigGenAddon.xtend b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/ConfigGenAddon.xtend
new file mode 100644
index 000000000..1788da55b
--- /dev/null
+++ b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/ConfigGenAddon.xtend
@@ -0,0 +1,121 @@
+/*******************************************************************************
+ * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * CONTRIBUTORS:
+ * Juergen Haug
+ *
+ *******************************************************************************/
+
+package org.eclipse.etrice.generator.java.gen
+
+import com.google.inject.Inject
+import java.util.List
+import org.eclipse.etrice.core.config.AttrInstanceConfig
+import org.eclipse.etrice.core.room.ActorClass
+import org.eclipse.etrice.core.room.PrimitiveType
+import org.eclipse.etrice.generator.generic.ConfigExtension
+import org.eclipse.etrice.generator.generic.ProcedureHelpers
+import org.eclipse.etrice.generator.generic.TypeHelpers
+
+
+class ConfigGenAddon {
+
+ @Inject extension JavaExtensions stdExt
+ @Inject extension TypeHelpers typeHelpers
+ @Inject extension ProcedureHelpers helpers
+ @Inject extension ConfigExtension configExt
+
+ // For SubSystemClassGen
+
+ def public applyInstanceConfig(String instance, String className, List<AttrInstanceConfig> attrConfigs){'''
+ «FOR attrConfig : attrConfigs»
+ «var a = attrConfig.attribute»
+ «var aType = a.refType.type»
+ «IF aType.primitive»
+ «var values = attrConfig.value?.values»
+ «IF values == null»
+ «ELSEIF a.size == 0 || aType.characterType»
+ «instance».«a.name.invokeSetter(className, (aType as PrimitiveType).toValueLiteral(values.get(0)))»;
+ «ELSEIF a.size == values.size»
+ «instance».«a.name.invokeSetter(className, "new "+aType.typeName+"[]"+(aType as PrimitiveType).toArrayValueLiteral(values))»;
+ «ELSE»
+ {
+ «aType.typeName»[] array = «instance».«a.name.invokeGetter(className)»;
+ for (int i=0;i<«a.size»;i++){
+ array[i] = «(aType as PrimitiveType).toValueLiteral(values.get(0))»;
+ }
+ }
+ «ENDIF»
+ «ELSEIF aType.dataClass»
+ «(instance+"."+a.name.invokeGetter(className)).applyInstanceConfig(aType.typeName, attrConfig.attributes)»
+ «ENDIF»
+ «ENDFOR»
+ '''}
+
+ // For ActorClassGen
+
+ def public genDynConfigGetterSetter(ActorClass ac){'''
+ «FOR a : ac.getDynConfigAttributes(true, false)»
+ public «a.refType.type.typeName»«IF a.size>0»[]«ENDIF» get«a.name.toFirstUpper»(){
+ if(lock_«a.name» == null)
+ return «a.name»;
+ else
+ synchronized(lock_«a.name»){
+ return «a.name»;
+ }
+ }
+ public void set«a.name.toFirstUpper»(«a.refType.type.typeName»«IF a.size>0»[]«ENDIF» «a.name»){
+ if(lock_«a.name» == null)
+ this.«a.name» = «a.name»;
+ else
+ synchronized(lock_«a.name»){
+ this.«a.name» = «a.name»;
+ }
+ }
+ public DynConfigLock get«a.name.toFirstUpper»Lock(){
+ return lock_«a.name»;
+ }
+ «ENDFOR»
+ «FOR a : ac.getDynConfigAttributes(false, true)»
+ public void setAndWrite«a.name.toFirstUpper»(«a.refType.type.typeName»«IF a.size>0»[]«ENDIF» «a.name»){
+ set«a.name.toFirstUpper»(«a.name»);
+ variableService.write(this.getInstancePath()+"/«a.name»", «a.name»);
+ }
+ «ENDFOR»
+ '''}
+
+ def public genMinMaxConstants(ActorClass ac){
+ var attrConfigs = ac.allAttrConfigFlat.filter(c | c.min != null || c.max != null)
+ '''
+ «IF !attrConfigs.empty»
+ //--------------------- attribute specifications
+ «ENDIF»
+
+ «FOR c : attrConfigs»
+ «var aType = (c.attribute.refType.type as PrimitiveType)»
+ «IF c.min != null»
+ public static «aType.minMaxType» MIN«c.getPath(false, false, true, true).toPath("_")» = «aType.toValueLiteral(c.min.value)»;
+ «ENDIF»
+ «IF c.max != null»
+ public static «aType.minMaxType» MAX«c.getPath(false, false, true, true).toPath("_")» = «aType.toValueLiteral(c.max.value)»;
+ «ENDIF»
+ «ENDFOR»
+ '''
+ }
+
+ def private getMinMaxType(PrimitiveType type){
+ switch(type.typeName){
+ case "byte":
+ return "int"
+ case "short":
+ return "int"
+ case "float":
+ return "double"
+ }
+ return type.typeName
+ }
+} \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/JavaExtensions.xtend b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/JavaExtensions.xtend
index 526943ad5..9832ea0e1 100644
--- a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/JavaExtensions.xtend
+++ b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/JavaExtensions.xtend
@@ -21,6 +21,7 @@ import com.google.inject.Inject
import com.google.inject.Singleton
import org.eclipse.etrice.core.room.RoomClass
import org.eclipse.etrice.core.room.Message
+import org.eclipse.etrice.core.room.PrimitiveType
import org.eclipse.etrice.generator.generic.ILanguageExtension
import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator
import java.util.List
@@ -40,6 +41,14 @@ class JavaExtensions implements ILanguageExtension {
def String getJavaFileName(RoomClass rc) {rc.name+".java"}
+ def String toWrapper(String type){
+ switch(type){
+ case "int": "Integer"
+ case "char" : "Character"
+ default: type.toFirstUpper
+ }
+ }
+
override String accessLevelPrivate() {"private "}
override String accessLevelProtected() {"protected "}
override String accessLevelPublic() {"public "}
@@ -80,7 +89,7 @@ class JavaExtensions implements ILanguageExtension {
override String voidPointer() { "Object" }
override String arrayDeclaration(String type, int size, String name, boolean isRef) {
- type+" "+name+"[]";
+ type+" "+name+"[]"
}
override String constructorName(String cls) {
@@ -101,4 +110,33 @@ class JavaExtensions implements ILanguageExtension {
override String superCall(String baseClassName, String method, String args) {
"super."+method+"("+args+");"
}
+ override String toValueLiteral(PrimitiveType type, String value){
+ switch(type.targetName){
+ case "boolean":
+ return value
+ case "byte":
+ return "(byte)"+value
+ case "short":
+ return "(short)"+value
+ case "int":
+ return value
+ case "long":
+ return value+"L"
+ case "float":
+ return value+"f"
+ case "double":
+ return value+"d"
+ case "char":{
+ if(value.length == 1)
+ return "'"+value+"'"
+ else
+ return value.toCharArrayExpr
+ }
+ case "String":
+ return "\""+value+"\""
+ }
+
+ throw new UnsupportedOperationException(type.targetName)
+ }
+
}
diff --git a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.xtend b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.xtend
index dd6428a84..5ec7ae279 100644
--- a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.xtend
+++ b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.xtend
@@ -10,33 +10,35 @@
*
*******************************************************************************/
-package org.eclipse.etrice.generator.java.gen
-
-import com.google.inject.Inject
-import com.google.inject.Singleton
-import org.eclipse.etrice.core.room.SubSystemClass
-import org.eclipse.etrice.core.genmodel.base.ILogger
-import org.eclipse.etrice.core.genmodel.etricegen.Root
-import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess
-import org.eclipse.etrice.generator.generic.RoomExtensions
-import org.eclipse.etrice.generator.generic.ConfigExtension
-import org.eclipse.etrice.generator.generic.ProcedureHelpers
-import org.eclipse.etrice.generator.generic.TypeHelpers
-
-
+package org.eclipse.etrice.generator.java.gen
+
+import com.google.inject.Inject
+import com.google.inject.Singleton
+import org.eclipse.etrice.core.genmodel.base.ILogger
+import org.eclipse.etrice.core.genmodel.etricegen.Root
+import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance
+import org.eclipse.etrice.core.room.SubSystemClass
+import org.eclipse.etrice.generator.generic.ConfigExtension
+import org.eclipse.etrice.generator.generic.ProcedureHelpers
+import org.eclipse.etrice.generator.generic.RoomExtensions
+import org.eclipse.etrice.generator.generic.TypeHelpers
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess
+
import static extension org.eclipse.etrice.generator.base.Indexed.*
@Singleton
class SubSystemClassGen {
-
+
@Inject JavaIoFileSystemAccess fileAccess
@Inject extension JavaExtensions
@Inject extension RoomExtensions
@Inject extension ConfigExtension
+ @Inject ConfigGenAddon configAddon
@Inject extension ProcedureHelpers
+
@Inject extension TypeHelpers
+ @Inject VariableServiceGen varService
@Inject ILogger logger
def doGenerate(Root root) {
@@ -46,12 +48,15 @@ class SubSystemClassGen {
logger.logInfo("generating SubSystemClass implementation: '"+file+"' in '"+path+"'")
fileAccess.setOutputPath(path)
fileAccess.generateFile(file, root.generate(ssi, ssi.subSystemClass))
+ if(ssi.subSystemClass.hasVariableService)
+ varService.doGenerate(root, ssi);
}
}
def generate(Root root, SubSystemInstance comp, SubSystemClass cc) {'''
package «cc.getPackage()»;
+ «IF cc.hasVariableService»import org.eclipse.etrice.runtime.java.config.VariableService;«ENDIF»
import org.eclipse.etrice.runtime.java.messaging.MessageService;
import org.eclipse.etrice.runtime.java.messaging.RTServices;
import org.eclipse.etrice.runtime.java.messaging.Address;
@@ -90,6 +95,7 @@ class SubSystemClassGen {
@Override
public void instantiateActors(){
+
// all addresses
// Addresses for the Subsystem Systemport
«FOR ai : comp.allContainedInstances.indexed(comp.maxObjId)»
@@ -165,52 +171,20 @@ class SubSystemClassGen {
«ENDIF»
«ENDFOR»
}
+ «IF ai.configAttributes.exists(c | c.dynConfig)»
+ , variableService
+ «ENDIF»
);
«ENDFOR»
// apply instance attribute configurations
«FOR ai : comp.allContainedInstances»
- «var attrConfigs = ai.configAttributes»
- «var portConfigs = ai.getConfigPorts»
- «IF !attrConfigs.empty || !portConfigs.empty»
- {
- «var aiName = "inst"»
- «ai.actorClass.name» «aiName» = («ai.actorClass.name») instances[«comp.allContainedInstances.indexOf(ai)»];
- «FOR attrConfig : attrConfigs»
- «var a = attrConfig.attribute»
- «var value = attrConfig.value.stringValue(a)»
- «IF !a.isArray»
- «aiName».«a.name.invokeSetter(ai.actorClass.name, value)»;
- «ELSEIF value.startsWith("{")»
- «aiName».«a.name.invokeSetter(ai.actorClass.name, "new "+a.refType.type.typeName+"[]"+value)»;
- «ELSE»
- {
- «a.refType.type.typeName»[] array = «aiName».«a.name.invokeGetter(ai.actorClass.name)»;
- for (int i=0;i<«a.size»;i++){
- array[i] = «value»;
- }
- }
- «ENDIF»
- «ENDFOR»
- «FOR portConfig : portConfigs»
- «var item = portConfig.item»
- «FOR attrConfig : portConfig.attributes»
- «var a = attrConfig.attribute»
- «var value = attrConfig.value.stringValue(a)»
- «var refToItem = aiName+"."+item.name.invokeGetter(item.portClassName)»
- «IF !a.isArray»
- «refToItem».«a.name.invokeSetter(item.portClassName, value)»;
- «ELSEIF value.startsWith("{")»
- «refToItem».«a.name.invokeSetter(ai.actorClass.name, "new "+a.refType.type.typeName+"[]"+value)»;
- «ELSE»
- {
- «a.refType.type.typeName»[] array = «refToItem».«a.name.invokeGetter(ai.actorClass.name)»;
- for (int i=0;i<«a.size»;i++){
- array[i] = «value»;
- }
- }
- «ENDIF»
- «ENDFOR»
+ «IF !(ai.configAttributes.empty && ai.getConfigPorts.empty)»
+ {
+ «ai.actorClass.name» inst = («ai.actorClass.name») instances[«comp.allContainedInstances.indexOf(ai)»];
+ «configAddon.applyInstanceConfig("inst", ai.actorClass.name, ai.configAttributes)»
+ «FOR portConfig : ai.configPorts»
+ «configAddon.applyInstanceConfig(("inst."+portConfig.item.name.invokeGetter(ai.actorClass.name)), portConfig.item.portClassName, portConfig.attributes)»
«ENDFOR»
}
«ENDIF»
@@ -231,10 +205,33 @@ class SubSystemClassGen {
addr_item_«ai.path.getPathName()»
«ENDFOR»
});
-
- }
+ }
+
+ «IF cc.hasVariableService»
+ private VariableService variableService;
+ «ENDIF»
+
+ @Override
+ public void init(){
+ «IF cc.hasVariableService»
+ variableService = new «comp.name»VariableService(this);
+ «ENDIF»
+ super.init();
+ «IF cc.hasVariableService»
+ variableService.init();
+ «ENDIF»
+ }
+
+ @Override
+ public void stop(){
+ super.stop();
+ «IF cc.hasVariableService»
+ variableService.stop();
+ «ENDIF»
+ }
+
};
'''
}
-
-} \ No newline at end of file
+
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/VariableServiceGen.xtend b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/VariableServiceGen.xtend
new file mode 100644
index 000000000..033490152
--- /dev/null
+++ b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/gen/VariableServiceGen.xtend
@@ -0,0 +1,283 @@
+/*******************************************************************************
+ * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * CONTRIBUTORS:
+ * Juergen Haug
+ *
+ *******************************************************************************/
+
+package org.eclipse.etrice.generator.java.gen
+
+import com.google.inject.Inject
+import com.google.inject.Singleton
+import java.util.ArrayList
+import java.util.HashMap
+import java.util.HashSet
+import java.util.LinkedList
+import java.util.List
+import java.util.Map
+import org.eclipse.etrice.core.config.ActorClassConfig
+import org.eclipse.etrice.core.config.ActorInstanceConfig
+import org.eclipse.etrice.core.config.AttrInstanceConfig
+import org.eclipse.etrice.core.genmodel.base.ILogger
+import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance
+import org.eclipse.etrice.core.genmodel.etricegen.Root
+import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance
+import org.eclipse.etrice.core.room.Attribute
+import org.eclipse.etrice.core.room.DataClass
+import org.eclipse.etrice.core.room.RoomModel
+import org.eclipse.etrice.core.room.SubSystemClass
+import org.eclipse.etrice.generator.generic.ConfigExtension
+import org.eclipse.etrice.generator.generic.ProcedureHelpers
+import org.eclipse.etrice.generator.generic.RoomExtensions
+import org.eclipse.etrice.generator.generic.TypeHelpers
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess
+
+@Singleton
+class VariableServiceGen {
+
+ @Inject extension JavaIoFileSystemAccess fileAccess
+ @Inject extension JavaExtensions stdExt
+ @Inject extension RoomExtensions roomExt
+ @Inject extension ConfigExtension configExt
+ @Inject extension ProcedureHelpers helpers
+ @Inject extension TypeHelpers
+ @Inject ILogger logger
+
+ def doGenerate(Root root, SubSystemInstance ssi) {
+ var path = ssi.subSystemClass.generationTargetPath+ssi.subSystemClass.getPath
+ var file = ssi.subSystemClass.name+"VariableService.java"
+ logger.logInfo("generating VariableService implementation: '"+file+"' in '"+path+"'")
+ fileAccess.setOutputPath(path)
+ fileAccess.generateFile(file, root.generate(ssi, ssi.subSystemClass))
+ }
+
+ def private generate(Root root, SubSystemInstance comp, SubSystemClass cc) {'''
+ «val dynConfig = cc.subSystemConfig.dynConfig»
+
+ package «cc.getPackage()»;
+
+ import java.util.Arrays;
+ import java.util.HashMap;
+ import java.util.Map;
+ import org.eclipse.etrice.runtime.java.config.VariableService;
+ «IF dynConfig.userCode1 != null»
+ «dynConfig.userCode1»;
+ «ELSE»
+ import org.eclipse.etrice.runtime.java.config.ConfigSourceFile;
+ «ENDIF»
+ «var ais = dynConfigsAIs(comp)»
+ «FOR model : ais.roomModels»
+ import «model.name».*;
+ «ENDFOR»
+
+
+ public class «comp.name+"VariableService"» extends VariableService{
+
+ private «cc.name» subSystem;
+
+ // Actor instances
+ «FOR ai : ais»
+ private «ai.actorClass.name» «ai.path.split("/").drop(2).toPath("_")»;
+ «ENDFOR»
+
+ public «comp.name+"VariableService"»(«cc.name» subSystem) {
+ super(«IF dynConfig.filePath != null»new ConfigSourceFile("«dynConfig.filePath»")«ELSE»«dynConfig.userCode2»«ENDIF»);
+ this.subSystem = subSystem;
+ }
+
+ @Override
+ protected void initInstances(){
+ «FOR ai : ais»
+ «ai.path.split("/").drop(2).toPath("_")» = («ai.actorClass.name»)subSystem.getInstance("«ai.path»");
+ «ENDFOR»
+ }
+
+
+ @Override
+ protected void setAttributeValues(Map<String, Object> values) {
+ Object object;
+ String id = null;
+ «FOR attrConfig : cc.getAttrDynConfigs(true, false)»
+ «var aiName = (attrConfig.eContainer as ActorInstanceConfig).path.refs.toPath("_")»
+ try{
+ boolean changed = false;
+ «FOR entry : attrConfig.allAttributes.entrySet»
+ «var a = entry.key»
+ «var aPath = attrConfig.getPath(true, true, true, false).toPath("/")+entry.value.toPath("/")+"/"+a.name»
+ id = "«aPath»";
+ «IF a.size==0»«a.refType.type.typeName.toWrapper»«ELSE»«a.refType.type.typeName»[]«ENDIF» _«a.name» = null;
+ object = values.get(id);
+ if(object != null){
+ _«a.name» = ensure«a.refType.type.typeName.toFirstUpper»«IF a.size>0»Array«ENDIF»(object«IF a.size>0», «a.size»«ENDIF»);
+ «genMinMaxCheck(attrConfig, (attrConfig.eContainer as ActorInstanceConfig).actorClassConfig)»
+ if(!«IF a.size==0»_«a.name».equals(«ELSE»Arrays.equals(_«a.name», «ENDIF»(«IF a.size==0»«a.refType.type.typeName.toWrapper»«ELSE»«a.refType.type.typeName»[]«ENDIF»)getDiffMap().get(id)))
+ changed = true;
+ } else
+ warning(id, "is missing");
+ «ENDFOR»
+ if(changed)
+ synchronized(«aiName».«invokeGetter(attrConfig.attribute.name+"Lock", null)»){
+ if(«aiName».«invokeGetter(attrConfig.attribute.name+"Lock", null)».isUpdate()){
+ «FOR entry : attrConfig.allAttributes.entrySet»
+ if(_«entry.key.name» != null){
+ «aiName»«entry.value.toInvoke».«invokeSetter(entry.key.name, null, "_"+entry.key.name)»;
+ getDiffMap().put("«attrConfig.getPath(true, true, true, false).toPath("/")+entry.value.toPath("/")+"/"+entry.key.name»", _«entry.key.name»);
+ }
+ «ENDFOR»
+ }
+ }
+ }catch(IllegalArgumentException e){
+ error(id, e);
+ }
+ «ENDFOR»
+ }
+
+ @Override
+ protected Map<String, Object> getAttributeValues(){
+ Map<String, Object> values = new HashMap<String, Object>();
+ «FOR attrConfig : cc.getAttrDynConfigs(true, false)»
+ «var aiName = (attrConfig.eContainer as ActorInstanceConfig).path.refs.toPath("_")»
+ «FOR entry : attrConfig.allAttributes.entrySet»
+ «var array = entry.key.size>0»
+ «var aPath = attrConfig.getPath(true, true, true, false).toPath("/")+entry.value.toPath("/")+"/"+entry.key.name»
+ values.put("«aPath»", «IF array»toObjectArray(«ENDIF»«aiName»«entry.value.toInvoke».«invokeGetter(entry.key.name, null)»«IF array»)«ENDIF»);
+ «ENDFOR»
+ «ENDFOR»
+
+ return values;
+ }
+
+ @Override
+ public void writeDataClass(String id, Object dcObject, Map<String, Object> writeMap) {
+ «FOR dc : comp.dynDataClasses»
+ if(dcObject.getClass().equals(«dc.typeName».class))
+ writeDataClass(id, («dc.typeName») dcObject, writeTasks);
+ «ENDFOR»
+ }
+
+ // DataClasses write operations
+
+ «FOR dc : comp.allDynDataClasses»
+ private void writeDataClass(String id, «dc.typeName» object, Map<String, Object> map){
+ «FOR a : dc.attributes»
+ «IF a.refType.type.primitive»
+ map.put(id+"/«a.name»", «IF a.size>0»toObjectArray(«ENDIF»object.«invokeGetter(a.name, null)»«IF a.size>0»)«ENDIF»);
+ «ELSE»
+ writeDataClass(id+"/«a.name»", object.«invokeGetter(a.name, null)», map);
+ «ENDIF»
+ «ENDFOR»
+ }
+ «ENDFOR»
+
+ @Override
+ protected int getPollingTimerUser(){
+ return «dynConfig.polling»;
+ }
+
+ }
+ '''}
+
+ def private genMinMaxCheck(AttrInstanceConfig instConf, ActorClassConfig acConf){
+ var config = acConf?.resolve(instConf.getPath(false, false, true, true))
+ if(config?.min == null && config?.max == null)
+ return ''''''
+ var path = config.getPath(false, false, true, true).toPath("_")
+ var acName = (config.eContainer as ActorClassConfig).actor.name
+ '''
+ checkMinMax(_«config.attribute.name», «IF config.min != null»«acName».MIN«path»«ELSE»null«ENDIF», «IF config.max != null»«acName».MAX«path»«ELSE»null«ENDIF»);
+ '''
+ }
+
+ def private Map<Attribute, List<String>> getAllAttributes(AttrInstanceConfig config){
+ var map = new HashMap<Attribute, List<String>>()
+ if(config.attribute.refType.type.primitive)
+ map.put(config.attribute, new ArrayList<String>())
+ else
+ config.attribute.getAllAttributes(new LinkedList<String>(), map)
+
+ return map
+ }
+
+ def private void getAllAttributes(Attribute attribute, List<String> path, Map<Attribute, List<String>> map){
+ if(attribute.refType.type.primitive)
+ map.put(attribute, path)
+ else if (attribute.refType.type.dataClass){
+ var new_path = new ArrayList<String>(path)
+ new_path.add(attribute.name)
+ for(dc : (attribute.refType.type as DataClass).allAttributes)
+ dc.getAllAttributes(new_path, map)
+ }
+ }
+
+ def private String toInvoke(List<String> path){
+ var builder = new StringBuilder()
+ for(p : path)
+ builder.append("."+p.invokeGetter(null))
+
+ return builder.toString
+ }
+
+ def private List<ActorInstance> dynConfigsAIs(SubSystemInstance comp){
+ val aiPaths = new HashSet<String>();
+ for(attrConfig : comp.subSystemClass.getAttrDynConfigs(true, false))
+ aiPaths.add(attrConfig.getPath(true, true, false, false).toPath("/"))
+
+ var ais = new ArrayList<ActorInstance>();
+ for(ai : comp.allContainedInstances)
+ if(aiPaths.contains(ai.path))
+ ais.add(ai);
+
+ return ais
+ }
+
+
+ def private getDynDataClasses(SubSystemInstance comp){
+ var dcs = new HashSet<DataClass>()
+ for(config : comp.subSystemClass.getAttrDynConfigs(false, true))
+ if(config.attribute.refType.type.dataClass)
+ dcs.add(config.attribute.refType.type as DataClass)
+
+ return dcs
+ }
+
+ def private getAllDynDataClasses(SubSystemInstance comp){
+ var dcs = new HashSet<DataClass>()
+ var stack = new LinkedList<DataClass>()
+ stack.addAll(comp.dynDataClasses)
+ dcs.addAll(stack)
+ while(!stack.empty){
+ var dc = stack.pop
+ for(a : dc.allAttributes)
+ if(a.refType.type.dataClass){
+ dcs.add(a.refType.type as DataClass)
+ stack.push(a.refType.type as DataClass);
+ }
+ }
+
+ return dcs
+ }
+
+ def private resolve(ActorClassConfig config, String[] path){
+ var result = config.attributes.findFirst(c | c.attribute.name.equals(path.head))
+ for (String ref : path.tail) {
+ result = result?.attributes.findFirst(c | c.attribute.name.equals(ref))
+ if (result == null)
+ return null
+ }
+
+ return result
+ }
+
+ def private getRoomModels(List<ActorInstance> ais){
+ val models = new HashSet<RoomModel>
+ ais.forEach(ai | models.add(ai.actorClass.eContainer as RoomModel))
+ return models
+ }
+
+
+} \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/setup/GeneratorModule.java b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/setup/GeneratorModule.java
index 5866d3d59..4242475ba 100644
--- a/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/setup/GeneratorModule.java
+++ b/plugins/org.eclipse.etrice.generator.java/src/org/eclipse/etrice/generator/java/setup/GeneratorModule.java
@@ -16,9 +16,9 @@ import org.eclipse.etrice.generator.base.AbstractGenerator;
import org.eclipse.etrice.generator.base.GeneratorBaseModule;
import org.eclipse.etrice.generator.base.ITranslationProvider;
import org.eclipse.etrice.generator.java.Main;
+import org.eclipse.etrice.generator.java.gen.MainGen;
import org.eclipse.etrice.generator.java.gen.JavaLanguageGenerator;
import org.eclipse.etrice.generator.java.gen.JavaTranslationProvider;
-import org.eclipse.etrice.generator.java.gen.MainGen;
import org.eclipse.xtext.generator.IGenerator;
import org.eclipse.etrice.generator.generic.ILanguageExtension;
import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator;
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ActorClassGen.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ActorClassGen.java
index 1f934316f..a26f52a48 100644
--- a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ActorClassGen.java
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ActorClassGen.java
@@ -1,592 +1,715 @@
-package org.eclipse.etrice.generator.java.gen;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.DetailCode;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.SAPRef;
-import org.eclipse.etrice.core.room.SPPRef;
-import org.eclipse.etrice.core.room.ServiceImplementation;
-import org.eclipse.etrice.core.room.StandardOperation;
-import org.eclipse.etrice.core.room.util.RoomHelpers;
-import org.eclipse.etrice.generator.base.AbstractGenerator;
-import org.eclipse.etrice.generator.generic.GenericActorClassGenerator;
-import org.eclipse.etrice.generator.generic.ProcedureHelpers;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.etrice.generator.java.gen.JavaExtensions;
-import org.eclipse.etrice.generator.java.gen.StateMachineGen;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-import org.eclipse.xtext.xbase.lib.Functions.Function1;
-import org.eclipse.xtext.xbase.lib.IterableExtensions;
-
-@Singleton
-@SuppressWarnings("all")
-public class ActorClassGen extends GenericActorClassGenerator {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private JavaExtensions _javaExtensions;
-
- @Inject
- private RoomExtensions _roomExtensions;
-
- @Inject
- private ProcedureHelpers _procedureHelpers;
-
- @Inject
- private StateMachineGen _stateMachineGen;
-
- @Inject
- private ILogger logger;
-
- public void doGenerate(final Root root) {
- EList<ExpandedActorClass> _xpActorClasses = root.getXpActorClasses();
- for (final ExpandedActorClass xpac : _xpActorClasses) {
- {
- ActorClass _actorClass = xpac.getActorClass();
- String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(_actorClass);
- ActorClass _actorClass_1 = xpac.getActorClass();
- String _path = this._roomExtensions.getPath(_actorClass_1);
- String path = (_generationTargetPath + _path);
- ActorClass _actorClass_2 = xpac.getActorClass();
- String file = this._javaExtensions.getJavaFileName(_actorClass_2);
- String _plus = ("generating ActorClass implementation \'" + file);
- String _plus_1 = (_plus + "\' in \'");
- String _plus_2 = (_plus_1 + path);
- String _plus_3 = (_plus_2 + "\'");
- this.logger.logInfo(_plus_3);
- this.fileAccess.setOutputPath(path);
- ActorClass _actorClass_3 = xpac.getActorClass();
- CharSequence _generate = this.generate(root, xpac, _actorClass_3);
- this.fileAccess.generateFile(file, _generate);
- }
- }
- }
-
- public CharSequence generate(final Root root, final ExpandedActorClass xpac, final ActorClass ac) {
- CharSequence _xblockexpression = null;
- {
- EList<StandardOperation> _operations = ac.getOperations();
- final Function1<StandardOperation,Boolean> _function = new Function1<StandardOperation,Boolean>() {
- public Boolean apply(final StandardOperation op) {
- boolean _isConstructor = RoomHelpers.isConstructor(op);
- return Boolean.valueOf(_isConstructor);
- }
- };
- Iterable<StandardOperation> _filter = IterableExtensions.<StandardOperation>filter(_operations, _function);
- final StandardOperation ctor = IterableExtensions.<StandardOperation>head(_filter);
- EList<StandardOperation> _operations_1 = ac.getOperations();
- final Function1<StandardOperation,Boolean> _function_1 = new Function1<StandardOperation,Boolean>() {
- public Boolean apply(final StandardOperation op) {
- boolean _isDestructor = op.isDestructor();
- return Boolean.valueOf(_isDestructor);
- }
- };
- Iterable<StandardOperation> _filter_1 = IterableExtensions.<StandardOperation>filter(_operations_1, _function_1);
- final StandardOperation dtor = IterableExtensions.<StandardOperation>head(_filter_1);
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("package ");
- String _package = this._roomExtensions.getPackage(ac);
- _builder.append(_package, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.Address;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.IRTObject;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.debugging.DebuggingService;");
- _builder.newLine();
- _builder.append("import static org.eclipse.etrice.runtime.java.etunit.EtUnit.*;");
- _builder.newLine();
- _builder.newLine();
- {
- EList<RoomModel> _referencedModels = root.getReferencedModels(ac);
- for(final RoomModel model : _referencedModels) {
- _builder.append("import ");
- String _name = model.getName();
- _builder.append(_name, "");
- _builder.append(".*;");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- {
- EList<ProtocolClass> _referencedProtocolClasses = root.getReferencedProtocolClasses(ac);
- for(final ProtocolClass pc : _referencedProtocolClasses) {
- _builder.append("import ");
- String _package_1 = this._roomExtensions.getPackage(pc);
- _builder.append(_package_1, "");
- _builder.append(".");
- String _name_1 = pc.getName();
- _builder.append(_name_1, "");
- _builder.append(".*;");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(ac, 1);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.newLine();
- _builder.append("public ");
- {
- boolean _isAbstract = ac.isAbstract();
- if (_isAbstract) {
- _builder.append("abstract ");
- }
- }
- _builder.append("class ");
- String _name_2 = ac.getName();
- _builder.append(_name_2, "");
- _builder.append(" extends ");
- {
- ActorClass _base = ac.getBase();
- boolean _notEquals = (!Objects.equal(_base, null));
- if (_notEquals) {
- ActorClass _base_1 = ac.getBase();
- String _name_3 = _base_1.getName();
- _builder.append(_name_3, "");
- } else {
- _builder.append("ActorClassBase");
- }
- }
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- CharSequence _userCode_1 = this._procedureHelpers.userCode(ac, 2);
- _builder.append(_userCode_1, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("//--------------------- ports");
- _builder.newLine();
- {
- List<Port> _endPorts = this._roomExtensions.getEndPorts(ac);
- for(final Port ep : _endPorts) {
- _builder.append("\t");
- _builder.append("protected ");
- String _portClassName = this._roomExtensions.getPortClassName(ep);
- _builder.append(_portClassName, " ");
- _builder.append(" ");
- String _name_4 = ep.getName();
- _builder.append(_name_4, " ");
- _builder.append(" = null;");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("//--------------------- saps");
- _builder.newLine();
- {
- EList<SAPRef> _strSAPs = ac.getStrSAPs();
- for(final SAPRef sap : _strSAPs) {
- _builder.append("\t");
- _builder.append("protected ");
- String _portClassName_1 = this._roomExtensions.getPortClassName(sap);
- _builder.append(_portClassName_1, " ");
- _builder.append(" ");
- String _name_5 = sap.getName();
- _builder.append(_name_5, " ");
- _builder.append(" = null;");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("//--------------------- services");
- _builder.newLine();
- {
- EList<ServiceImplementation> _serviceImplementations = ac.getServiceImplementations();
- for(final ServiceImplementation svc : _serviceImplementations) {
- _builder.append("\t");
- _builder.append("protected ");
- String _portClassName_2 = this._roomExtensions.getPortClassName(svc);
- _builder.append(_portClassName_2, " ");
- _builder.append(" ");
- SPPRef _spp = svc.getSpp();
- String _name_6 = _spp.getName();
- _builder.append(_name_6, " ");
- _builder.append(" = null;");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _builder.append("\t");
- _builder.append("//--------------------- interface item IDs");
- _builder.newLine();
- _builder.append("\t");
- String _genInterfaceItemConstants = this.genInterfaceItemConstants(xpac, ac);
- _builder.append(_genInterfaceItemConstants, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t");
- EList<Attribute> _attributes = ac.getAttributes();
- CharSequence _attributes_1 = this._procedureHelpers.attributes(_attributes);
- _builder.append(_attributes_1, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(ac);
- _builder.append(_operationsImplementation, " ");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("//--------------------- construction");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public ");
- String _name_7 = ac.getName();
- _builder.append(_name_7, " ");
- _builder.append("(IRTObject parent, String name, Address[][] port_addr, Address[][] peer_addr){");
- _builder.newLineIfNotEmpty();
- {
- ActorClass _base_2 = ac.getBase();
- boolean _equals = Objects.equal(_base_2, null);
- if (_equals) {
- _builder.append("\t\t");
- _builder.append("super(parent, name, port_addr[0][0], peer_addr[0][0]);");
- _builder.newLine();
- } else {
- _builder.append("\t\t");
- _builder.append("super(parent, name, port_addr, peer_addr);");
- _builder.newLine();
- }
- }
- _builder.append("\t\t");
- _builder.append("setClassName(\"");
- String _name_8 = ac.getName();
- _builder.append(_name_8, " ");
- _builder.append("\");");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t\t");
- EList<Attribute> _attributes_2 = ac.getAttributes();
- CharSequence _attributeInitialization = this._procedureHelpers.attributeInitialization(_attributes_2, false);
- _builder.append(_attributeInitialization, " ");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// own ports");
- _builder.newLine();
- {
- List<Port> _endPorts_1 = this._roomExtensions.getEndPorts(ac);
- for(final Port ep_1 : _endPorts_1) {
- _builder.append("\t\t");
- String _name_9 = ep_1.getName();
- _builder.append(_name_9, " ");
- _builder.append(" = new ");
- String _portClassName_3 = this._roomExtensions.getPortClassName(ep_1);
- _builder.append(_portClassName_3, " ");
- _builder.append("(this, \"");
- String _name_10 = ep_1.getName();
- _builder.append(_name_10, " ");
- _builder.append("\", IFITEM_");
- String _name_11 = ep_1.getName();
- _builder.append(_name_11, " ");
- _builder.append(", ");
- {
- int _multiplicity = ep_1.getMultiplicity();
- boolean _equals_1 = (_multiplicity == 1);
- if (_equals_1) {
- _builder.append("0, ");
- }
- }
- _builder.append("port_addr[IFITEM_");
- String _name_12 = ep_1.getName();
- _builder.append(_name_12, " ");
- _builder.append("]");
- {
- int _multiplicity_1 = ep_1.getMultiplicity();
- boolean _equals_2 = (_multiplicity_1 == 1);
- if (_equals_2) {
- _builder.append("[0]");
- }
- }
- _builder.append(", peer_addr[IFITEM_");
- String _name_13 = ep_1.getName();
- _builder.append(_name_13, " ");
- _builder.append("]");
- {
- int _multiplicity_2 = ep_1.getMultiplicity();
- boolean _equals_3 = (_multiplicity_2 == 1);
- if (_equals_3) {
- _builder.append("[0]");
- }
- }
- _builder.append("); ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// own saps");
- _builder.newLine();
- {
- EList<SAPRef> _strSAPs_1 = ac.getStrSAPs();
- for(final SAPRef sap_1 : _strSAPs_1) {
- _builder.append("\t\t");
- String _name_14 = sap_1.getName();
- _builder.append(_name_14, " ");
- _builder.append(" = new ");
- String _portClassName_4 = this._roomExtensions.getPortClassName(sap_1);
- _builder.append(_portClassName_4, " ");
- _builder.append("(this, \"");
- String _name_15 = sap_1.getName();
- _builder.append(_name_15, " ");
- _builder.append("\", IFITEM_");
- String _name_16 = sap_1.getName();
- _builder.append(_name_16, " ");
- _builder.append(", 0, port_addr[IFITEM_");
- String _name_17 = sap_1.getName();
- _builder.append(_name_17, " ");
- _builder.append("][0], peer_addr[IFITEM_");
- String _name_18 = sap_1.getName();
- _builder.append(_name_18, " ");
- _builder.append("][0]); ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// own service implementations");
- _builder.newLine();
- {
- EList<ServiceImplementation> _serviceImplementations_1 = ac.getServiceImplementations();
- for(final ServiceImplementation svc_1 : _serviceImplementations_1) {
- _builder.append("\t\t");
- SPPRef _spp_1 = svc_1.getSpp();
- String _name_19 = _spp_1.getName();
- _builder.append(_name_19, " ");
- _builder.append(" = new ");
- String _portClassName_5 = this._roomExtensions.getPortClassName(svc_1);
- _builder.append(_portClassName_5, " ");
- _builder.append("(this, \"");
- SPPRef _spp_2 = svc_1.getSpp();
- String _name_20 = _spp_2.getName();
- _builder.append(_name_20, " ");
- _builder.append("\", IFITEM_");
- SPPRef _spp_3 = svc_1.getSpp();
- String _name_21 = _spp_3.getName();
- _builder.append(_name_21, " ");
- _builder.append(", port_addr[IFITEM_");
- SPPRef _spp_4 = svc_1.getSpp();
- String _name_22 = _spp_4.getName();
- _builder.append(_name_22, " ");
- _builder.append("], peer_addr[IFITEM_");
- SPPRef _spp_5 = svc_1.getSpp();
- String _name_23 = _spp_5.getName();
- _builder.append(_name_23, " ");
- _builder.append("]); ");
- _builder.newLineIfNotEmpty();
- }
- }
- {
- boolean _notEquals_1 = (!Objects.equal(ctor, null));
- if (_notEquals_1) {
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("// user defined constructor body");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- AbstractGenerator _instance = AbstractGenerator.getInstance();
- DetailCode _detailCode = ctor.getDetailCode();
- String _translatedCode = _instance.getTranslatedCode(_detailCode);
- _builder.append(_translatedCode, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- EList<Attribute> _attributes_3 = ac.getAttributes();
- String _name_24 = ac.getName();
- CharSequence _attributeSettersGettersImplementation = this._procedureHelpers.attributeSettersGettersImplementation(_attributes_3, _name_24);
- _builder.append(_attributeSettersGettersImplementation, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("//--------------------- port getters");
- _builder.newLine();
- {
- List<Port> _endPorts_2 = this._roomExtensions.getEndPorts(ac);
- for(final Port ep_2 : _endPorts_2) {
- _builder.append("\t");
- String _portClassName_6 = this._roomExtensions.getPortClassName(ep_2);
- String _name_25 = ep_2.getName();
- String _name_26 = ac.getName();
- CharSequence _terImplementation = this._procedureHelpers.getterImplementation(_portClassName_6, _name_25, _name_26);
- _builder.append(_terImplementation, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- {
- EList<SAPRef> _strSAPs_2 = ac.getStrSAPs();
- for(final SAPRef sap_2 : _strSAPs_2) {
- _builder.append("\t");
- String _portClassName_7 = this._roomExtensions.getPortClassName(sap_2);
- String _name_27 = sap_2.getName();
- String _name_28 = ac.getName();
- CharSequence _terImplementation_1 = this._procedureHelpers.getterImplementation(_portClassName_7, _name_27, _name_28);
- _builder.append(_terImplementation_1, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- {
- EList<ServiceImplementation> _serviceImplementations_2 = ac.getServiceImplementations();
- for(final ServiceImplementation svc_2 : _serviceImplementations_2) {
- _builder.append("\t");
- String _portClassName_8 = this._roomExtensions.getPortClassName(svc_2);
- SPPRef _spp_6 = svc_2.getSpp();
- String _name_29 = _spp_6.getName();
- String _name_30 = ac.getName();
- CharSequence _terImplementation_2 = this._procedureHelpers.getterImplementation(_portClassName_8, _name_29, _name_30);
- _builder.append(_terImplementation_2, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _builder.append("\t");
- _builder.append("//--------------------- lifecycle functions");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public void init(){");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("initUser();");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public void start(){");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("startUser();");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- {
- boolean _overridesStop = this._roomExtensions.overridesStop(ac);
- boolean _not = (!_overridesStop);
- if (_not) {
- _builder.append("\t");
- _builder.append("public void stop(){");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("stopUser();");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public void destroy(){");
- _builder.newLine();
- {
- boolean _notEquals_2 = (!Objects.equal(dtor, null));
- if (_notEquals_2) {
- _builder.append("\t\t");
- String _name_31 = ac.getName();
- String _destructorCall = this._procedureHelpers.destructorCall(_name_31);
- _builder.append(_destructorCall, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- {
- boolean _hasNonEmptyStateMachine = RoomHelpers.hasNonEmptyStateMachine(ac);
- if (_hasNonEmptyStateMachine) {
- _builder.append("\t");
- CharSequence _genStateMachine = this._stateMachineGen.genStateMachine(xpac);
- _builder.append(_genStateMachine, " ");
- _builder.newLineIfNotEmpty();
- } else {
- boolean _hasStateMachine = xpac.hasStateMachine();
- boolean _not_1 = (!_hasStateMachine);
- if (_not_1) {
- _builder.append("\t");
- _builder.append("//--------------------- no state machine");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("@Override");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("handleSystemEvent(ifitem, evt, data);");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("@Override");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public void executeInitTransition(){");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- _builder.append("};");
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-}
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.HashSet;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.DetailCode;
+import org.eclipse.etrice.core.room.Port;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.core.room.SAPRef;
+import org.eclipse.etrice.core.room.SPPRef;
+import org.eclipse.etrice.core.room.ServiceImplementation;
+import org.eclipse.etrice.core.room.StandardOperation;
+import org.eclipse.etrice.core.room.util.RoomHelpers;
+import org.eclipse.etrice.generator.base.AbstractGenerator;
+import org.eclipse.etrice.generator.generic.ConfigExtension;
+import org.eclipse.etrice.generator.generic.GenericActorClassGenerator;
+import org.eclipse.etrice.generator.generic.ProcedureHelpers;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.etrice.generator.java.gen.ConfigGenAddon;
+import org.eclipse.etrice.generator.java.gen.JavaExtensions;
+import org.eclipse.etrice.generator.java.gen.StateMachineGen;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class ActorClassGen extends GenericActorClassGenerator {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private JavaExtensions stdExt;
+
+ @Inject
+ private RoomExtensions roomExt;
+
+ @Inject
+ private ConfigExtension configExt;
+
+ @Inject
+ private ConfigGenAddon configAddon;
+
+ @Inject
+ private ProcedureHelpers _procedureHelpers;
+
+ @Inject
+ private StateMachineGen _stateMachineGen;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root) {
+ EList<ExpandedActorClass> _xpActorClasses = root.getXpActorClasses();
+ for (final ExpandedActorClass xpac : _xpActorClasses) {
+ {
+ ActorClass _actorClass = xpac.getActorClass();
+ String _generationTargetPath = this.roomExt.getGenerationTargetPath(_actorClass);
+ ActorClass _actorClass_1 = xpac.getActorClass();
+ String _path = this.roomExt.getPath(_actorClass_1);
+ String path = (_generationTargetPath + _path);
+ ActorClass _actorClass_2 = xpac.getActorClass();
+ String file = this.stdExt.getJavaFileName(_actorClass_2);
+ String _plus = ("generating ActorClass implementation \'" + file);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ this.fileAccess.setOutputPath(path);
+ ActorClass _actorClass_3 = xpac.getActorClass();
+ CharSequence _generate = this.generate(root, xpac, _actorClass_3);
+ this.fileAccess.generateFile(file, _generate);
+ }
+ }
+ }
+
+ public CharSequence generate(final Root root, final ExpandedActorClass xpac, final ActorClass ac) {
+ CharSequence _xblockexpression = null;
+ {
+ EList<StandardOperation> _operations = ac.getOperations();
+ final Function1<StandardOperation,Boolean> _function = new Function1<StandardOperation,Boolean>() {
+ public Boolean apply(final StandardOperation op) {
+ boolean _isConstructor = RoomHelpers.isConstructor(op);
+ return Boolean.valueOf(_isConstructor);
+ }
+ };
+ Iterable<StandardOperation> _filter = IterableExtensions.<StandardOperation>filter(_operations, _function);
+ final StandardOperation ctor = IterableExtensions.<StandardOperation>head(_filter);
+ EList<StandardOperation> _operations_1 = ac.getOperations();
+ final Function1<StandardOperation,Boolean> _function_1 = new Function1<StandardOperation,Boolean>() {
+ public Boolean apply(final StandardOperation op) {
+ boolean _isDestructor = op.isDestructor();
+ return Boolean.valueOf(_isDestructor);
+ }
+ };
+ Iterable<StandardOperation> _filter_1 = IterableExtensions.<StandardOperation>filter(_operations_1, _function_1);
+ final StandardOperation dtor = IterableExtensions.<StandardOperation>head(_filter_1);
+ final HashSet<Attribute> dynConfigReadAttributes = this.configExt.getDynConfigAttributes(ac, true, false);
+ final HashSet<Attribute> dynConfigWriteAttributes = this.configExt.getDynConfigAttributes(ac, false, true);
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("package ");
+ String _package = this.roomExt.getPackage(ac);
+ _builder.append(_package, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ boolean _isEmpty = dynConfigReadAttributes.isEmpty();
+ boolean _not = (!_isEmpty);
+ if (_not) {
+ _builder.append("import org.eclipse.etrice.runtime.java.config.DynConfigLock;");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _or = false;
+ boolean _isEmpty_1 = dynConfigReadAttributes.isEmpty();
+ boolean _not_1 = (!_isEmpty_1);
+ if (_not_1) {
+ _or = true;
+ } else {
+ boolean _isEmpty_2 = dynConfigWriteAttributes.isEmpty();
+ boolean _not_2 = (!_isEmpty_2);
+ _or = (_not_1 || _not_2);
+ }
+ if (_or) {
+ _builder.append("import org.eclipse.etrice.runtime.java.config.VariableService;");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.Address;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.IRTObject;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.debugging.DebuggingService;");
+ _builder.newLine();
+ _builder.append("import static org.eclipse.etrice.runtime.java.etunit.EtUnit.*;");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ EList<RoomModel> _referencedModels = root.getReferencedModels(ac);
+ for(final RoomModel model : _referencedModels) {
+ _builder.append("import ");
+ String _name = model.getName();
+ _builder.append(_name, "");
+ _builder.append(".*;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ {
+ EList<ProtocolClass> _referencedProtocolClasses = root.getReferencedProtocolClasses(ac);
+ for(final ProtocolClass pc : _referencedProtocolClasses) {
+ _builder.append("import ");
+ String _package_1 = this.roomExt.getPackage(pc);
+ _builder.append(_package_1, "");
+ _builder.append(".");
+ String _name_1 = pc.getName();
+ _builder.append(_name_1, "");
+ _builder.append(".*;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(ac, 1);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("public ");
+ {
+ boolean _isAbstract = ac.isAbstract();
+ if (_isAbstract) {
+ _builder.append("abstract ");
+ }
+ }
+ _builder.append("class ");
+ String _name_2 = ac.getName();
+ _builder.append(_name_2, "");
+ _builder.append(" extends ");
+ {
+ ActorClass _base = ac.getBase();
+ boolean _notEquals = (!Objects.equal(_base, null));
+ if (_notEquals) {
+ ActorClass _base_1 = ac.getBase();
+ String _name_3 = _base_1.getName();
+ _builder.append(_name_3, "");
+ } else {
+ _builder.append("ActorClassBase");
+ }
+ }
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ CharSequence _userCode_1 = this._procedureHelpers.userCode(ac, 2);
+ _builder.append(_userCode_1, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ {
+ boolean _isEmpty_3 = dynConfigWriteAttributes.isEmpty();
+ boolean _not_3 = (!_isEmpty_3);
+ if (_not_3) {
+ _builder.append("\t");
+ _builder.append("private VariableService variableService;");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("//--------------------- ports");
+ _builder.newLine();
+ {
+ List<Port> _endPorts = this.roomExt.getEndPorts(ac);
+ for(final Port ep : _endPorts) {
+ _builder.append("\t");
+ _builder.append("protected ");
+ String _portClassName = this.roomExt.getPortClassName(ep);
+ _builder.append(_portClassName, " ");
+ _builder.append(" ");
+ String _name_4 = ep.getName();
+ _builder.append(_name_4, " ");
+ _builder.append(" = null;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("//--------------------- saps");
+ _builder.newLine();
+ {
+ EList<SAPRef> _strSAPs = ac.getStrSAPs();
+ for(final SAPRef sap : _strSAPs) {
+ _builder.append("\t");
+ _builder.append("protected ");
+ String _portClassName_1 = this.roomExt.getPortClassName(sap);
+ _builder.append(_portClassName_1, " ");
+ _builder.append(" ");
+ String _name_5 = sap.getName();
+ _builder.append(_name_5, " ");
+ _builder.append(" = null;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("//--------------------- services");
+ _builder.newLine();
+ {
+ EList<ServiceImplementation> _serviceImplementations = ac.getServiceImplementations();
+ for(final ServiceImplementation svc : _serviceImplementations) {
+ _builder.append("\t");
+ _builder.append("protected ");
+ String _portClassName_2 = this.roomExt.getPortClassName(svc);
+ _builder.append(_portClassName_2, " ");
+ _builder.append(" ");
+ SPPRef _spp = svc.getSpp();
+ String _name_6 = _spp.getName();
+ _builder.append(_name_6, " ");
+ _builder.append(" = null;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("//--------------------- interface item IDs");
+ _builder.newLine();
+ _builder.append("\t");
+ String _genInterfaceItemConstants = this.genInterfaceItemConstants(xpac, ac);
+ _builder.append(_genInterfaceItemConstants, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ CharSequence _genMinMaxConstants = this.configAddon.genMinMaxConstants(ac);
+ _builder.append(_genMinMaxConstants, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ EList<Attribute> _attributes = ac.getAttributes();
+ CharSequence _attributes_1 = this._procedureHelpers.attributes(_attributes);
+ _builder.append(_attributes_1, " ");
+ _builder.newLineIfNotEmpty();
+ {
+ for(final Attribute a : dynConfigReadAttributes) {
+ _builder.append("\t");
+ _builder.append("private DynConfigLock lock_");
+ String _name_7 = a.getName();
+ _builder.append(_name_7, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(ac);
+ _builder.append(_operationsImplementation, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("//--------------------- construction");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ String _name_8 = ac.getName();
+ _builder.append(_name_8, " ");
+ _builder.append("(IRTObject parent, String name, Address[][] port_addr, Address[][] peer_addr){");
+ _builder.newLineIfNotEmpty();
+ {
+ ActorClass _base_2 = ac.getBase();
+ boolean _equals = Objects.equal(_base_2, null);
+ if (_equals) {
+ _builder.append("\t\t");
+ _builder.append("super(parent, name, port_addr[0][0], peer_addr[0][0]);");
+ _builder.newLine();
+ } else {
+ _builder.append("\t\t");
+ _builder.append("super(parent, name, port_addr, peer_addr);");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("setClassName(\"");
+ String _name_9 = ac.getName();
+ _builder.append(_name_9, " ");
+ _builder.append("\");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ EList<Attribute> _attributes_2 = ac.getAttributes();
+ CharSequence _attributeInitialization = this._procedureHelpers.attributeInitialization(_attributes_2, false);
+ _builder.append(_attributeInitialization, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// own ports");
+ _builder.newLine();
+ {
+ List<Port> _endPorts_1 = this.roomExt.getEndPorts(ac);
+ for(final Port ep_1 : _endPorts_1) {
+ _builder.append("\t\t");
+ String _name_10 = ep_1.getName();
+ _builder.append(_name_10, " ");
+ _builder.append(" = new ");
+ String _portClassName_3 = this.roomExt.getPortClassName(ep_1);
+ _builder.append(_portClassName_3, " ");
+ _builder.append("(this, \"");
+ String _name_11 = ep_1.getName();
+ _builder.append(_name_11, " ");
+ _builder.append("\", IFITEM_");
+ String _name_12 = ep_1.getName();
+ _builder.append(_name_12, " ");
+ _builder.append(", ");
+ {
+ int _multiplicity = ep_1.getMultiplicity();
+ boolean _equals_1 = (_multiplicity == 1);
+ if (_equals_1) {
+ _builder.append("0, ");
+ }
+ }
+ _builder.append("port_addr[IFITEM_");
+ String _name_13 = ep_1.getName();
+ _builder.append(_name_13, " ");
+ _builder.append("]");
+ {
+ int _multiplicity_1 = ep_1.getMultiplicity();
+ boolean _equals_2 = (_multiplicity_1 == 1);
+ if (_equals_2) {
+ _builder.append("[0]");
+ }
+ }
+ _builder.append(", peer_addr[IFITEM_");
+ String _name_14 = ep_1.getName();
+ _builder.append(_name_14, " ");
+ _builder.append("]");
+ {
+ int _multiplicity_2 = ep_1.getMultiplicity();
+ boolean _equals_3 = (_multiplicity_2 == 1);
+ if (_equals_3) {
+ _builder.append("[0]");
+ }
+ }
+ _builder.append("); ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// own saps");
+ _builder.newLine();
+ {
+ EList<SAPRef> _strSAPs_1 = ac.getStrSAPs();
+ for(final SAPRef sap_1 : _strSAPs_1) {
+ _builder.append("\t\t");
+ String _name_15 = sap_1.getName();
+ _builder.append(_name_15, " ");
+ _builder.append(" = new ");
+ String _portClassName_4 = this.roomExt.getPortClassName(sap_1);
+ _builder.append(_portClassName_4, " ");
+ _builder.append("(this, \"");
+ String _name_16 = sap_1.getName();
+ _builder.append(_name_16, " ");
+ _builder.append("\", IFITEM_");
+ String _name_17 = sap_1.getName();
+ _builder.append(_name_17, " ");
+ _builder.append(", 0, port_addr[IFITEM_");
+ String _name_18 = sap_1.getName();
+ _builder.append(_name_18, " ");
+ _builder.append("][0], peer_addr[IFITEM_");
+ String _name_19 = sap_1.getName();
+ _builder.append(_name_19, " ");
+ _builder.append("][0]); ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// own service implementations");
+ _builder.newLine();
+ {
+ EList<ServiceImplementation> _serviceImplementations_1 = ac.getServiceImplementations();
+ for(final ServiceImplementation svc_1 : _serviceImplementations_1) {
+ _builder.append("\t\t");
+ SPPRef _spp_1 = svc_1.getSpp();
+ String _name_20 = _spp_1.getName();
+ _builder.append(_name_20, " ");
+ _builder.append(" = new ");
+ String _portClassName_5 = this.roomExt.getPortClassName(svc_1);
+ _builder.append(_portClassName_5, " ");
+ _builder.append("(this, \"");
+ SPPRef _spp_2 = svc_1.getSpp();
+ String _name_21 = _spp_2.getName();
+ _builder.append(_name_21, " ");
+ _builder.append("\", IFITEM_");
+ SPPRef _spp_3 = svc_1.getSpp();
+ String _name_22 = _spp_3.getName();
+ _builder.append(_name_22, " ");
+ _builder.append(", port_addr[IFITEM_");
+ SPPRef _spp_4 = svc_1.getSpp();
+ String _name_23 = _spp_4.getName();
+ _builder.append(_name_23, " ");
+ _builder.append("], peer_addr[IFITEM_");
+ SPPRef _spp_5 = svc_1.getSpp();
+ String _name_24 = _spp_5.getName();
+ _builder.append(_name_24, " ");
+ _builder.append("]); ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ {
+ boolean _notEquals_1 = (!Objects.equal(ctor, null));
+ if (_notEquals_1) {
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("{");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("// user defined constructor body");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ AbstractGenerator _instance = AbstractGenerator.getInstance();
+ DetailCode _detailCode = ctor.getDetailCode();
+ String _translatedCode = _instance.getTranslatedCode(_detailCode);
+ _builder.append(_translatedCode, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ boolean _or_1 = false;
+ boolean _isEmpty_4 = dynConfigReadAttributes.isEmpty();
+ boolean _not_4 = (!_isEmpty_4);
+ if (_not_4) {
+ _or_1 = true;
+ } else {
+ boolean _isEmpty_5 = dynConfigWriteAttributes.isEmpty();
+ boolean _not_5 = (!_isEmpty_5);
+ _or_1 = (_not_4 || _not_5);
+ }
+ if (_or_1) {
+ _builder.append("\t");
+ _builder.append("public ");
+ String _name_25 = ac.getName();
+ _builder.append(_name_25, " ");
+ _builder.append("(IRTObject parent, String name, Address[][] port_addr, Address[][] peer_addr, VariableService variableService){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("this(parent, name, port_addr, peer_addr);");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.newLine();
+ {
+ boolean _isEmpty_6 = dynConfigWriteAttributes.isEmpty();
+ boolean _not_6 = (!_isEmpty_6);
+ if (_not_6) {
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("this.variableService = variableService;");
+ _builder.newLine();
+ }
+ }
+ {
+ for(final Attribute a_1 : dynConfigReadAttributes) {
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("lock_");
+ String _name_26 = a_1.getName();
+ _builder.append(_name_26, " ");
+ _builder.append(" = new DynConfigLock();");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ EList<Attribute> _attributes_3 = ac.getAttributes();
+ List<Attribute> _list = IterableExtensions.<Attribute>toList(dynConfigReadAttributes);
+ List<Attribute> _minus = this.roomExt.<Attribute>minus(_attributes_3, _list);
+ String _name_27 = ac.getName();
+ CharSequence _attributeSettersGettersImplementation = this._procedureHelpers.attributeSettersGettersImplementation(_minus, _name_27);
+ _builder.append(_attributeSettersGettersImplementation, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ CharSequence _genDynConfigGetterSetter = this.configAddon.genDynConfigGetterSetter(ac);
+ _builder.append(_genDynConfigGetterSetter, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("//--------------------- port getters");
+ _builder.newLine();
+ {
+ List<Port> _endPorts_2 = this.roomExt.getEndPorts(ac);
+ for(final Port ep_2 : _endPorts_2) {
+ _builder.append("\t");
+ String _portClassName_6 = this.roomExt.getPortClassName(ep_2);
+ String _name_28 = ep_2.getName();
+ String _name_29 = ac.getName();
+ CharSequence _terImplementation = this._procedureHelpers.getterImplementation(_portClassName_6, _name_28, _name_29);
+ _builder.append(_terImplementation, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ {
+ EList<SAPRef> _strSAPs_2 = ac.getStrSAPs();
+ for(final SAPRef sap_2 : _strSAPs_2) {
+ _builder.append("\t");
+ String _portClassName_7 = this.roomExt.getPortClassName(sap_2);
+ String _name_30 = sap_2.getName();
+ String _name_31 = ac.getName();
+ CharSequence _terImplementation_1 = this._procedureHelpers.getterImplementation(_portClassName_7, _name_30, _name_31);
+ _builder.append(_terImplementation_1, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ {
+ EList<ServiceImplementation> _serviceImplementations_2 = ac.getServiceImplementations();
+ for(final ServiceImplementation svc_2 : _serviceImplementations_2) {
+ _builder.append("\t");
+ String _portClassName_8 = this.roomExt.getPortClassName(svc_2);
+ SPPRef _spp_6 = svc_2.getSpp();
+ String _name_32 = _spp_6.getName();
+ String _name_33 = ac.getName();
+ CharSequence _terImplementation_2 = this._procedureHelpers.getterImplementation(_portClassName_8, _name_32, _name_33);
+ _builder.append(_terImplementation_2, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("//--------------------- lifecycle functions");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void init(){");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("initUser();");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void start(){");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("startUser();");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ boolean _overridesStop = this.roomExt.overridesStop(ac);
+ boolean _not_7 = (!_overridesStop);
+ if (_not_7) {
+ _builder.append("\t");
+ _builder.append("public void stop(){");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("stopUser();");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void destroy(){");
+ _builder.newLine();
+ {
+ boolean _notEquals_2 = (!Objects.equal(dtor, null));
+ if (_notEquals_2) {
+ _builder.append("\t\t");
+ String _name_34 = ac.getName();
+ String _destructorCall = this._procedureHelpers.destructorCall(_name_34);
+ _builder.append(_destructorCall, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ boolean _hasNonEmptyStateMachine = RoomHelpers.hasNonEmptyStateMachine(ac);
+ if (_hasNonEmptyStateMachine) {
+ _builder.append("\t");
+ CharSequence _genStateMachine = this._stateMachineGen.genStateMachine(xpac);
+ _builder.append(_genStateMachine, " ");
+ _builder.newLineIfNotEmpty();
+ } else {
+ boolean _hasStateMachine = xpac.hasStateMachine();
+ boolean _not_8 = (!_hasStateMachine);
+ if (_not_8) {
+ _builder.append("\t");
+ _builder.append("//--------------------- no state machine");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("handleSystemEvent(ifitem, evt, data);");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void executeInitTransition(){");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ _builder.append("};");
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ConfigGenAddon.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ConfigGenAddon.java
new file mode 100644
index 000000000..238102d24
--- /dev/null
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ConfigGenAddon.java
@@ -0,0 +1,444 @@
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import java.util.HashSet;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.config.AttrClassConfig;
+import org.eclipse.etrice.core.config.AttrInstanceConfig;
+import org.eclipse.etrice.core.config.LiteralArray;
+import org.eclipse.etrice.core.config.NumberLiteral;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.DataType;
+import org.eclipse.etrice.core.room.PrimitiveType;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.generator.generic.ConfigExtension;
+import org.eclipse.etrice.generator.generic.ProcedureHelpers;
+import org.eclipse.etrice.generator.generic.TypeHelpers;
+import org.eclipse.etrice.generator.java.gen.JavaExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.xbase.lib.Conversions;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+import org.eclipse.xtext.xbase.lib.StringExtensions;
+
+@SuppressWarnings("all")
+public class ConfigGenAddon {
+ @Inject
+ private JavaExtensions stdExt;
+
+ @Inject
+ private TypeHelpers typeHelpers;
+
+ @Inject
+ private ProcedureHelpers helpers;
+
+ @Inject
+ private ConfigExtension configExt;
+
+ public CharSequence applyInstanceConfig(final String instance, final String className, final List<AttrInstanceConfig> attrConfigs) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ for(final AttrInstanceConfig attrConfig : attrConfigs) {
+ Attribute a = attrConfig.getAttribute();
+ _builder.newLineIfNotEmpty();
+ RefableType _refType = a.getRefType();
+ DataType aType = _refType.getType();
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _isPrimitive = this.typeHelpers.isPrimitive(aType);
+ if (_isPrimitive) {
+ LiteralArray _value = attrConfig.getValue();
+ String[] values = _value==null?(String[])null:this.configExt.getValues(_value);
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _equals = Objects.equal(values, null);
+ if (_equals) {
+ } else {
+ boolean _or = false;
+ int _size = a.getSize();
+ boolean _equals_1 = (_size == 0);
+ if (_equals_1) {
+ _or = true;
+ } else {
+ boolean _isCharacterType = this.typeHelpers.isCharacterType(aType);
+ _or = (_equals_1 || _isCharacterType);
+ }
+ if (_or) {
+ _builder.append(instance, "");
+ _builder.append(".");
+ String _name = a.getName();
+ final String[] _converted_values = (String[])values;
+ String _get = ((List<String>)Conversions.doWrapArray(_converted_values)).get(0);
+ String _valueLiteral = this.stdExt.toValueLiteral(((PrimitiveType) aType), _get);
+ CharSequence _invokeSetter = this.helpers.invokeSetter(_name, className, _valueLiteral);
+ _builder.append(_invokeSetter, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ } else {
+ int _size_1 = a.getSize();
+ final String[] _converted_values_1 = (String[])values;
+ int _size_2 = ((List<String>)Conversions.doWrapArray(_converted_values_1)).size();
+ boolean _equals_2 = (_size_1 == _size_2);
+ if (_equals_2) {
+ _builder.append(instance, "");
+ _builder.append(".");
+ String _name_1 = a.getName();
+ String _typeName = this.typeHelpers.typeName(aType);
+ String _plus = ("new " + _typeName);
+ String _plus_1 = (_plus + "[]");
+ String _arrayValueLiteral = this.configExt.toArrayValueLiteral(((PrimitiveType) aType), values);
+ String _plus_2 = (_plus_1 + _arrayValueLiteral);
+ CharSequence _invokeSetter_1 = this.helpers.invokeSetter(_name_1, className, _plus_2);
+ _builder.append(_invokeSetter_1, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("{");
+ _builder.newLine();
+ _builder.append("\t");
+ String _typeName_1 = this.typeHelpers.typeName(aType);
+ _builder.append(_typeName_1, " ");
+ _builder.append("[] array = ");
+ _builder.append(instance, " ");
+ _builder.append(".");
+ String _name_2 = a.getName();
+ CharSequence _invokeGetter = this.helpers.invokeGetter(_name_2, className);
+ _builder.append(_invokeGetter, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("for (int i=0;i<");
+ int _size_3 = a.getSize();
+ _builder.append(_size_3, " ");
+ _builder.append(";i++){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("array[i] = ");
+ final String[] _converted_values_2 = (String[])values;
+ String _get_1 = ((List<String>)Conversions.doWrapArray(_converted_values_2)).get(0);
+ String _valueLiteral_1 = this.stdExt.toValueLiteral(((PrimitiveType) aType), _get_1);
+ _builder.append(_valueLiteral_1, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ } else {
+ boolean _isDataClass = this.typeHelpers.isDataClass(aType);
+ if (_isDataClass) {
+ String _plus_3 = (instance + ".");
+ String _name_3 = a.getName();
+ CharSequence _invokeGetter_1 = this.helpers.invokeGetter(_name_3, className);
+ String _plus_4 = (_plus_3 + _invokeGetter_1);
+ String _typeName_2 = this.typeHelpers.typeName(aType);
+ EList<AttrInstanceConfig> _attributes = attrConfig.getAttributes();
+ CharSequence _applyInstanceConfig = this.applyInstanceConfig(_plus_4, _typeName_2, _attributes);
+ _builder.append(_applyInstanceConfig, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence genDynConfigGetterSetter(final ActorClass ac) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ HashSet<Attribute> _dynConfigAttributes = this.configExt.getDynConfigAttributes(ac, true, false);
+ for(final Attribute a : _dynConfigAttributes) {
+ _builder.append("public ");
+ RefableType _refType = a.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this.typeHelpers.typeName(_type);
+ _builder.append(_typeName, "");
+ {
+ int _size = a.getSize();
+ boolean _greaterThan = (_size > 0);
+ if (_greaterThan) {
+ _builder.append("[]");
+ }
+ }
+ _builder.append(" get");
+ String _name = a.getName();
+ String _firstUpper = StringExtensions.toFirstUpper(_name);
+ _builder.append(_firstUpper, "");
+ _builder.append("(){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("if(lock_");
+ String _name_1 = a.getName();
+ _builder.append(_name_1, " ");
+ _builder.append(" == null)");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("return ");
+ String _name_2 = a.getName();
+ _builder.append(_name_2, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("else");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("synchronized(lock_");
+ String _name_3 = a.getName();
+ _builder.append(_name_3, " ");
+ _builder.append("){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("return ");
+ String _name_4 = a.getName();
+ _builder.append(_name_4, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("public void set");
+ String _name_5 = a.getName();
+ String _firstUpper_1 = StringExtensions.toFirstUpper(_name_5);
+ _builder.append(_firstUpper_1, "");
+ _builder.append("(");
+ RefableType _refType_1 = a.getRefType();
+ DataType _type_1 = _refType_1.getType();
+ String _typeName_1 = this.typeHelpers.typeName(_type_1);
+ _builder.append(_typeName_1, "");
+ {
+ int _size_1 = a.getSize();
+ boolean _greaterThan_1 = (_size_1 > 0);
+ if (_greaterThan_1) {
+ _builder.append("[]");
+ }
+ }
+ _builder.append(" ");
+ String _name_6 = a.getName();
+ _builder.append(_name_6, "");
+ _builder.append("){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("if(lock_");
+ String _name_7 = a.getName();
+ _builder.append(_name_7, " ");
+ _builder.append(" == null)");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("this.");
+ String _name_8 = a.getName();
+ _builder.append(_name_8, " ");
+ _builder.append(" = ");
+ String _name_9 = a.getName();
+ _builder.append(_name_9, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("else");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("synchronized(lock_");
+ String _name_10 = a.getName();
+ _builder.append(_name_10, " ");
+ _builder.append("){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("this.");
+ String _name_11 = a.getName();
+ _builder.append(_name_11, " ");
+ _builder.append(" = ");
+ String _name_12 = a.getName();
+ _builder.append(_name_12, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("public DynConfigLock get");
+ String _name_13 = a.getName();
+ String _firstUpper_2 = StringExtensions.toFirstUpper(_name_13);
+ _builder.append(_firstUpper_2, "");
+ _builder.append("Lock(){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("return lock_");
+ String _name_14 = a.getName();
+ _builder.append(_name_14, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}\t");
+ _builder.newLine();
+ }
+ }
+ {
+ HashSet<Attribute> _dynConfigAttributes_1 = this.configExt.getDynConfigAttributes(ac, false, true);
+ for(final Attribute a_1 : _dynConfigAttributes_1) {
+ _builder.append("public void setAndWrite");
+ String _name_15 = a_1.getName();
+ String _firstUpper_3 = StringExtensions.toFirstUpper(_name_15);
+ _builder.append(_firstUpper_3, "");
+ _builder.append("(");
+ RefableType _refType_2 = a_1.getRefType();
+ DataType _type_2 = _refType_2.getType();
+ String _typeName_2 = this.typeHelpers.typeName(_type_2);
+ _builder.append(_typeName_2, "");
+ {
+ int _size_2 = a_1.getSize();
+ boolean _greaterThan_2 = (_size_2 > 0);
+ if (_greaterThan_2) {
+ _builder.append("[]");
+ }
+ }
+ _builder.append(" ");
+ String _name_16 = a_1.getName();
+ _builder.append(_name_16, "");
+ _builder.append("){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("set");
+ String _name_17 = a_1.getName();
+ String _firstUpper_4 = StringExtensions.toFirstUpper(_name_17);
+ _builder.append(_firstUpper_4, " ");
+ _builder.append("(");
+ String _name_18 = a_1.getName();
+ _builder.append(_name_18, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("variableService.write(this.getInstancePath()+\"/");
+ String _name_19 = a_1.getName();
+ _builder.append(_name_19, " ");
+ _builder.append("\", ");
+ String _name_20 = a_1.getName();
+ _builder.append(_name_20, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence genMinMaxConstants(final ActorClass ac) {
+ CharSequence _xblockexpression = null;
+ {
+ List<AttrClassConfig> _allAttrConfigFlat = this.configExt.getAllAttrConfigFlat(ac);
+ final Function1<AttrClassConfig,Boolean> _function = new Function1<AttrClassConfig,Boolean>() {
+ public Boolean apply(final AttrClassConfig c) {
+ boolean _or = false;
+ NumberLiteral _min = c.getMin();
+ boolean _notEquals = (!Objects.equal(_min, null));
+ if (_notEquals) {
+ _or = true;
+ } else {
+ NumberLiteral _max = c.getMax();
+ boolean _notEquals_1 = (!Objects.equal(_max, null));
+ _or = (_notEquals || _notEquals_1);
+ }
+ return Boolean.valueOf(_or);
+ }
+ };
+ Iterable<AttrClassConfig> attrConfigs = IterableExtensions.<AttrClassConfig>filter(_allAttrConfigFlat, _function);
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _isEmpty = IterableExtensions.isEmpty(attrConfigs);
+ boolean _not = (!_isEmpty);
+ if (_not) {
+ _builder.append("//--------------------- attribute specifications");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ {
+ for(final AttrClassConfig c : attrConfigs) {
+ Attribute _attribute = c.getAttribute();
+ RefableType _refType = _attribute.getRefType();
+ DataType _type = _refType.getType();
+ PrimitiveType aType = ((PrimitiveType) _type);
+ _builder.newLineIfNotEmpty();
+ {
+ NumberLiteral _min = c.getMin();
+ boolean _notEquals = (!Objects.equal(_min, null));
+ if (_notEquals) {
+ _builder.append("public static ");
+ String _minMaxType = this.getMinMaxType(aType);
+ _builder.append(_minMaxType, "");
+ _builder.append(" MIN");
+ List<String> _path = this.configExt.getPath(c, false, false, true, true);
+ String _path_1 = this.configExt.toPath(_path, "_");
+ _builder.append(_path_1, "");
+ _builder.append(" = ");
+ NumberLiteral _min_1 = c.getMin();
+ String _value = this.configExt.getValue(_min_1);
+ String _valueLiteral = this.stdExt.toValueLiteral(aType, _value);
+ _builder.append(_valueLiteral, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ {
+ NumberLiteral _max = c.getMax();
+ boolean _notEquals_1 = (!Objects.equal(_max, null));
+ if (_notEquals_1) {
+ _builder.append("public static ");
+ String _minMaxType_1 = this.getMinMaxType(aType);
+ _builder.append(_minMaxType_1, "");
+ _builder.append(" MAX");
+ List<String> _path_2 = this.configExt.getPath(c, false, false, true, true);
+ String _path_3 = this.configExt.toPath(_path_2, "_");
+ _builder.append(_path_3, "");
+ _builder.append(" = ");
+ NumberLiteral _max_1 = c.getMax();
+ String _value_1 = this.configExt.getValue(_max_1);
+ String _valueLiteral_1 = this.stdExt.toValueLiteral(aType, _value_1);
+ _builder.append(_valueLiteral_1, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private String getMinMaxType(final PrimitiveType type) {
+ String _typeName = this.typeHelpers.typeName(type);
+ final String _switchValue = _typeName;
+ boolean _matched = false;
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"byte")) {
+ _matched=true;
+ return "int";
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"short")) {
+ _matched=true;
+ return "int";
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"float")) {
+ _matched=true;
+ return "double";
+ }
+ }
+ return this.typeHelpers.typeName(type);
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/DataClassGen.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/DataClassGen.java
index 5105f319a..a187baa53 100644
--- a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/DataClassGen.java
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/DataClassGen.java
@@ -1,460 +1,460 @@
-package org.eclipse.etrice.generator.java.gen;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.ComplexType;
-import org.eclipse.etrice.core.room.DataClass;
-import org.eclipse.etrice.core.room.DataType;
-import org.eclipse.etrice.core.room.DetailCode;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.StandardOperation;
-import org.eclipse.etrice.core.room.util.RoomHelpers;
-import org.eclipse.etrice.generator.generic.ProcedureHelpers;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.etrice.generator.java.gen.JavaExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-import org.eclipse.xtext.xbase.lib.Functions.Function1;
-import org.eclipse.xtext.xbase.lib.IterableExtensions;
-
-@Singleton
-@SuppressWarnings("all")
-public class DataClassGen {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private JavaExtensions _javaExtensions;
-
- @Inject
- private RoomExtensions _roomExtensions;
-
- @Inject
- private ProcedureHelpers _procedureHelpers;
-
- @Inject
- private ILogger logger;
-
- public void doGenerate(final Root root) {
- EList<DataClass> _usedDataClasses = root.getUsedDataClasses();
- for (final DataClass dc : _usedDataClasses) {
- {
- String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(dc);
- String _path = this._roomExtensions.getPath(dc);
- String path = (_generationTargetPath + _path);
- String file = this._javaExtensions.getJavaFileName(dc);
- String _plus = ("generating DataClass implementation \'" + file);
- String _plus_1 = (_plus + "\' in \'");
- String _plus_2 = (_plus_1 + path);
- String _plus_3 = (_plus_2 + "\'");
- this.logger.logInfo(_plus_3);
- this.fileAccess.setOutputPath(path);
- CharSequence _generate = this.generate(root, dc);
- this.fileAccess.generateFile(file, _generate);
- }
- }
- }
-
- public CharSequence generate(final Root root, final DataClass dc) {
- CharSequence _xblockexpression = null;
- {
- EList<StandardOperation> _operations = dc.getOperations();
- final Function1<StandardOperation,Boolean> _function = new Function1<StandardOperation,Boolean>() {
- public Boolean apply(final StandardOperation op) {
- boolean _isConstructor = RoomHelpers.isConstructor(op);
- return Boolean.valueOf(_isConstructor);
- }
- };
- Iterable<StandardOperation> _filter = IterableExtensions.<StandardOperation>filter(_operations, _function);
- final StandardOperation ctor = IterableExtensions.<StandardOperation>head(_filter);
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("package ");
- String _package = this._roomExtensions.getPackage(dc);
- _builder.append(_package, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- EList<RoomModel> models = root.getReferencedModels(dc);
- _builder.newLineIfNotEmpty();
- {
- for(final RoomModel model : models) {
- _builder.append("import ");
- String _name = model.getName();
- _builder.append(_name, "");
- _builder.append(".*;");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(dc, 1);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.newLine();
- _builder.append("public class ");
- String _name_1 = dc.getName();
- _builder.append(_name_1, "");
- {
- DataClass _base = dc.getBase();
- boolean _notEquals = (!Objects.equal(_base, null));
- if (_notEquals) {
- _builder.append(" extends ");
- DataClass _base_1 = dc.getBase();
- String _name_2 = _base_1.getName();
- _builder.append(_name_2, "");
- }
- }
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- CharSequence _userCode_1 = this._procedureHelpers.userCode(dc, 2);
- _builder.append(_userCode_1, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- EList<Attribute> _attributes = dc.getAttributes();
- CharSequence _attributes_1 = this._procedureHelpers.attributes(_attributes);
- _builder.append(_attributes_1, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- EList<Attribute> _attributes_2 = dc.getAttributes();
- String _name_3 = dc.getName();
- CharSequence _attributeSettersGettersImplementation = this._procedureHelpers.attributeSettersGettersImplementation(_attributes_2, _name_3);
- _builder.append(_attributeSettersGettersImplementation, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- EList<StandardOperation> _operations_1 = dc.getOperations();
- String _name_4 = dc.getName();
- CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(_operations_1, _name_4);
- _builder.append(_operationsImplementation, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("// default constructor");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public ");
- String _name_5 = dc.getName();
- _builder.append(_name_5, " ");
- _builder.append("() {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("super();");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t\t");
- EList<Attribute> _attributes_3 = dc.getAttributes();
- CharSequence _attributeInitialization = this._procedureHelpers.attributeInitialization(_attributes_3, true);
- _builder.append(_attributeInitialization, " ");
- _builder.newLineIfNotEmpty();
- {
- boolean _notEquals_1 = (!Objects.equal(ctor, null));
- if (_notEquals_1) {
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("// user defined constructor body");
- _builder.newLine();
- {
- DetailCode _detailCode = ctor.getDetailCode();
- EList<String> _commands = _detailCode.getCommands();
- for(final String l : _commands) {
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append(l, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("// constructor using fields");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public ");
- String _name_6 = dc.getName();
- _builder.append(_name_6, " ");
- _builder.append("(");
- String _argList = this.argList(dc);
- _builder.append(_argList, " ");
- _builder.append(") {");
- _builder.newLineIfNotEmpty();
- {
- DataClass _base_2 = dc.getBase();
- boolean _notEquals_2 = (!Objects.equal(_base_2, null));
- if (_notEquals_2) {
- _builder.append("\t\t");
- _builder.append("super(");
- DataClass _base_3 = dc.getBase();
- String _paramList = this.paramList(_base_3);
- _builder.append(_paramList, " ");
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- } else {
- _builder.append("\t\t");
- _builder.append("super();");
- _builder.newLine();
- }
- }
- _builder.append("\t\t");
- _builder.newLine();
- {
- EList<Attribute> _attributes_4 = dc.getAttributes();
- for(final Attribute a : _attributes_4) {
- _builder.append("\t\t");
- _builder.append("this.");
- String _name_7 = a.getName();
- _builder.append(_name_7, " ");
- _builder.append(" = ");
- String _name_8 = a.getName();
- _builder.append(_name_8, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("// deep copy");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public ");
- String _name_9 = dc.getName();
- _builder.append(_name_9, " ");
- _builder.append(" deepCopy() {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- String _name_10 = dc.getName();
- _builder.append(_name_10, " ");
- _builder.append(" copy = new ");
- String _name_11 = dc.getName();
- _builder.append(_name_11, " ");
- _builder.append("();");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- String _deepCopy = this.deepCopy(dc);
- _builder.append(_deepCopy, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("return copy;");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("};");
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public String paramList(final DataClass _dc) {
- String result = "";
- DataClass dc = _dc;
- boolean _notEquals = (!Objects.equal(dc, null));
- boolean _while = _notEquals;
- while (_while) {
- {
- EList<Attribute> _attributes = dc.getAttributes();
- CharSequence _paramList = this.paramList(_attributes);
- String _string = _paramList.toString();
- String _plus = (_string + result);
- result = _plus;
- DataClass _base = dc.getBase();
- dc = _base;
- boolean _notEquals_1 = (!Objects.equal(dc, null));
- if (_notEquals_1) {
- String _plus_1 = (", " + result);
- result = _plus_1;
- }
- }
- boolean _notEquals_1 = (!Objects.equal(dc, null));
- _while = _notEquals_1;
- }
- return result;
- }
-
- public CharSequence paramList(final List<Attribute> attributes) {
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _hasElements = false;
- for(final Attribute a : attributes) {
- if (!_hasElements) {
- _hasElements = true;
- } else {
- _builder.appendImmediate(", ", "");
- }
- String _name = a.getName();
- _builder.append(_name, "");
- }
- }
- return _builder;
- }
-
- public String argList(final DataClass _dc) {
- String result = "";
- DataClass dc = _dc;
- boolean _notEquals = (!Objects.equal(dc, null));
- boolean _while = _notEquals;
- while (_while) {
- {
- EList<Attribute> _attributes = dc.getAttributes();
- CharSequence _argList = this._procedureHelpers.argList(_attributes);
- String _string = _argList.toString();
- String _plus = (_string + result);
- result = _plus;
- DataClass _base = dc.getBase();
- dc = _base;
- boolean _notEquals_1 = (!Objects.equal(dc, null));
- if (_notEquals_1) {
- String _plus_1 = (", " + result);
- result = _plus_1;
- }
- }
- boolean _notEquals_1 = (!Objects.equal(dc, null));
- _while = _notEquals_1;
- }
- return result;
- }
-
- public String deepCopy(final DataClass _dc) {
- String result = "";
- DataClass dc = _dc;
- boolean _notEquals = (!Objects.equal(dc, null));
- boolean _while = _notEquals;
- while (_while) {
- {
- EList<Attribute> _attributes = dc.getAttributes();
- CharSequence _deepCopy = this.deepCopy(_attributes);
- String _string = _deepCopy.toString();
- String _plus = (_string + result);
- result = _plus;
- DataClass _base = dc.getBase();
- dc = _base;
- }
- boolean _notEquals_1 = (!Objects.equal(dc, null));
- _while = _notEquals_1;
- }
- return result;
- }
-
- public CharSequence deepCopy(final List<Attribute> attributes) {
- StringConcatenation _builder = new StringConcatenation();
- {
- for(final Attribute a : attributes) {
- {
- RefableType _refType = a.getRefType();
- DataType _type = _refType.getType();
- if ((_type instanceof ComplexType)) {
- _builder.append("if (");
- String _name = a.getName();
- _builder.append(_name, "");
- _builder.append("!=null) {");
- _builder.newLineIfNotEmpty();
- {
- int _size = a.getSize();
- boolean _equals = (_size == 0);
- if (_equals) {
- _builder.append("\t");
- _builder.append("copy.");
- String _name_1 = a.getName();
- _builder.append(_name_1, " ");
- _builder.append(" = ");
- String _name_2 = a.getName();
- _builder.append(_name_2, " ");
- _builder.append(".deepCopy();");
- _builder.newLineIfNotEmpty();
- } else {
- _builder.append("\t");
- _builder.append("for (int i=0;i<");
- String _name_3 = a.getName();
- _builder.append(_name_3, " ");
- _builder.append(".length;i++){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("copy.");
- String _name_4 = a.getName();
- _builder.append(_name_4, " ");
- _builder.append("[i] = ");
- String _name_5 = a.getName();
- _builder.append(_name_5, " ");
- _builder.append("[i].deepCopy();");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- _builder.append("}");
- _builder.newLine();
- } else {
- {
- int _size_1 = a.getSize();
- boolean _equals_1 = (_size_1 == 0);
- if (_equals_1) {
- _builder.append("copy.");
- String _name_6 = a.getName();
- _builder.append(_name_6, "");
- _builder.append(" = ");
- String _name_7 = a.getName();
- _builder.append(_name_7, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- _builder.append("for (int i=0;i<");
- String _name_8 = a.getName();
- _builder.append(_name_8, "");
- _builder.append(".length;i++){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("copy.");
- String _name_9 = a.getName();
- _builder.append(_name_9, " ");
- _builder.append("[i] = ");
- String _name_10 = a.getName();
- _builder.append(_name_10, " ");
- _builder.append("[i];");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- }
- }
- return _builder;
- }
-}
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.ComplexType;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DataType;
+import org.eclipse.etrice.core.room.DetailCode;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.core.room.StandardOperation;
+import org.eclipse.etrice.core.room.util.RoomHelpers;
+import org.eclipse.etrice.generator.generic.ProcedureHelpers;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.etrice.generator.java.gen.JavaExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class DataClassGen {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private JavaExtensions _javaExtensions;
+
+ @Inject
+ private RoomExtensions _roomExtensions;
+
+ @Inject
+ private ProcedureHelpers _procedureHelpers;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root) {
+ EList<DataClass> _usedDataClasses = root.getUsedDataClasses();
+ for (final DataClass dc : _usedDataClasses) {
+ {
+ String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(dc);
+ String _path = this._roomExtensions.getPath(dc);
+ String path = (_generationTargetPath + _path);
+ String file = this._javaExtensions.getJavaFileName(dc);
+ String _plus = ("generating DataClass implementation \'" + file);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ this.fileAccess.setOutputPath(path);
+ CharSequence _generate = this.generate(root, dc);
+ this.fileAccess.generateFile(file, _generate);
+ }
+ }
+ }
+
+ public CharSequence generate(final Root root, final DataClass dc) {
+ CharSequence _xblockexpression = null;
+ {
+ EList<StandardOperation> _operations = dc.getOperations();
+ final Function1<StandardOperation,Boolean> _function = new Function1<StandardOperation,Boolean>() {
+ public Boolean apply(final StandardOperation op) {
+ boolean _isConstructor = RoomHelpers.isConstructor(op);
+ return Boolean.valueOf(_isConstructor);
+ }
+ };
+ Iterable<StandardOperation> _filter = IterableExtensions.<StandardOperation>filter(_operations, _function);
+ final StandardOperation ctor = IterableExtensions.<StandardOperation>head(_filter);
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("package ");
+ String _package = this._roomExtensions.getPackage(dc);
+ _builder.append(_package, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ EList<RoomModel> models = root.getReferencedModels(dc);
+ _builder.newLineIfNotEmpty();
+ {
+ for(final RoomModel model : models) {
+ _builder.append("import ");
+ String _name = model.getName();
+ _builder.append(_name, "");
+ _builder.append(".*;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(dc, 1);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("public class ");
+ String _name_1 = dc.getName();
+ _builder.append(_name_1, "");
+ {
+ DataClass _base = dc.getBase();
+ boolean _notEquals = (!Objects.equal(_base, null));
+ if (_notEquals) {
+ _builder.append(" extends ");
+ DataClass _base_1 = dc.getBase();
+ String _name_2 = _base_1.getName();
+ _builder.append(_name_2, "");
+ }
+ }
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ CharSequence _userCode_1 = this._procedureHelpers.userCode(dc, 2);
+ _builder.append(_userCode_1, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ EList<Attribute> _attributes = dc.getAttributes();
+ CharSequence _attributes_1 = this._procedureHelpers.attributes(_attributes);
+ _builder.append(_attributes_1, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ EList<Attribute> _attributes_2 = dc.getAttributes();
+ String _name_3 = dc.getName();
+ CharSequence _attributeSettersGettersImplementation = this._procedureHelpers.attributeSettersGettersImplementation(_attributes_2, _name_3);
+ _builder.append(_attributeSettersGettersImplementation, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ EList<StandardOperation> _operations_1 = dc.getOperations();
+ String _name_4 = dc.getName();
+ CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(_operations_1, _name_4);
+ _builder.append(_operationsImplementation, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("// default constructor");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ String _name_5 = dc.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("() {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("super();");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ EList<Attribute> _attributes_3 = dc.getAttributes();
+ CharSequence _attributeInitialization = this._procedureHelpers.attributeInitialization(_attributes_3, true);
+ _builder.append(_attributeInitialization, " ");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _notEquals_1 = (!Objects.equal(ctor, null));
+ if (_notEquals_1) {
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("{");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("// user defined constructor body");
+ _builder.newLine();
+ {
+ DetailCode _detailCode = ctor.getDetailCode();
+ EList<String> _commands = _detailCode.getCommands();
+ for(final String l : _commands) {
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append(l, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("// constructor using fields");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ String _name_6 = dc.getName();
+ _builder.append(_name_6, " ");
+ _builder.append("(");
+ String _argList = this.argList(dc);
+ _builder.append(_argList, " ");
+ _builder.append(") {");
+ _builder.newLineIfNotEmpty();
+ {
+ DataClass _base_2 = dc.getBase();
+ boolean _notEquals_2 = (!Objects.equal(_base_2, null));
+ if (_notEquals_2) {
+ _builder.append("\t\t");
+ _builder.append("super(");
+ DataClass _base_3 = dc.getBase();
+ String _paramList = this.paramList(_base_3);
+ _builder.append(_paramList, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("\t\t");
+ _builder.append("super();");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.newLine();
+ {
+ EList<Attribute> _attributes_4 = dc.getAttributes();
+ for(final Attribute a : _attributes_4) {
+ _builder.append("\t\t");
+ _builder.append("this.");
+ String _name_7 = a.getName();
+ _builder.append(_name_7, " ");
+ _builder.append(" = ");
+ String _name_8 = a.getName();
+ _builder.append(_name_8, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("// deep copy");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ String _name_9 = dc.getName();
+ _builder.append(_name_9, " ");
+ _builder.append(" deepCopy() {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ String _name_10 = dc.getName();
+ _builder.append(_name_10, " ");
+ _builder.append(" copy = new ");
+ String _name_11 = dc.getName();
+ _builder.append(_name_11, " ");
+ _builder.append("();");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ String _deepCopy = this.deepCopy(dc);
+ _builder.append(_deepCopy, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("return copy;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("};");
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public String paramList(final DataClass _dc) {
+ String result = "";
+ DataClass dc = _dc;
+ boolean _notEquals = (!Objects.equal(dc, null));
+ boolean _while = _notEquals;
+ while (_while) {
+ {
+ EList<Attribute> _attributes = dc.getAttributes();
+ CharSequence _paramList = this.paramList(_attributes);
+ String _string = _paramList.toString();
+ String _plus = (_string + result);
+ result = _plus;
+ DataClass _base = dc.getBase();
+ dc = _base;
+ boolean _notEquals_1 = (!Objects.equal(dc, null));
+ if (_notEquals_1) {
+ String _plus_1 = (", " + result);
+ result = _plus_1;
+ }
+ }
+ boolean _notEquals_1 = (!Objects.equal(dc, null));
+ _while = _notEquals_1;
+ }
+ return result;
+ }
+
+ public CharSequence paramList(final List<Attribute> attributes) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _hasElements = false;
+ for(final Attribute a : attributes) {
+ if (!_hasElements) {
+ _hasElements = true;
+ } else {
+ _builder.appendImmediate(", ", "");
+ }
+ String _name = a.getName();
+ _builder.append(_name, "");
+ }
+ }
+ return _builder;
+ }
+
+ public String argList(final DataClass _dc) {
+ String result = "";
+ DataClass dc = _dc;
+ boolean _notEquals = (!Objects.equal(dc, null));
+ boolean _while = _notEquals;
+ while (_while) {
+ {
+ EList<Attribute> _attributes = dc.getAttributes();
+ CharSequence _argList = this._procedureHelpers.argList(_attributes);
+ String _string = _argList.toString();
+ String _plus = (_string + result);
+ result = _plus;
+ DataClass _base = dc.getBase();
+ dc = _base;
+ boolean _notEquals_1 = (!Objects.equal(dc, null));
+ if (_notEquals_1) {
+ String _plus_1 = (", " + result);
+ result = _plus_1;
+ }
+ }
+ boolean _notEquals_1 = (!Objects.equal(dc, null));
+ _while = _notEquals_1;
+ }
+ return result;
+ }
+
+ public String deepCopy(final DataClass _dc) {
+ String result = "";
+ DataClass dc = _dc;
+ boolean _notEquals = (!Objects.equal(dc, null));
+ boolean _while = _notEquals;
+ while (_while) {
+ {
+ EList<Attribute> _attributes = dc.getAttributes();
+ CharSequence _deepCopy = this.deepCopy(_attributes);
+ String _string = _deepCopy.toString();
+ String _plus = (_string + result);
+ result = _plus;
+ DataClass _base = dc.getBase();
+ dc = _base;
+ }
+ boolean _notEquals_1 = (!Objects.equal(dc, null));
+ _while = _notEquals_1;
+ }
+ return result;
+ }
+
+ public CharSequence deepCopy(final List<Attribute> attributes) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ for(final Attribute a : attributes) {
+ {
+ RefableType _refType = a.getRefType();
+ DataType _type = _refType.getType();
+ if ((_type instanceof ComplexType)) {
+ _builder.append("if (");
+ String _name = a.getName();
+ _builder.append(_name, "");
+ _builder.append("!=null) {");
+ _builder.newLineIfNotEmpty();
+ {
+ int _size = a.getSize();
+ boolean _equals = (_size == 0);
+ if (_equals) {
+ _builder.append("\t");
+ _builder.append("copy.");
+ String _name_1 = a.getName();
+ _builder.append(_name_1, " ");
+ _builder.append(" = ");
+ String _name_2 = a.getName();
+ _builder.append(_name_2, " ");
+ _builder.append(".deepCopy();");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("\t");
+ _builder.append("for (int i=0;i<");
+ String _name_3 = a.getName();
+ _builder.append(_name_3, " ");
+ _builder.append(".length;i++){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("copy.");
+ String _name_4 = a.getName();
+ _builder.append(_name_4, " ");
+ _builder.append("[i] = ");
+ String _name_5 = a.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("[i].deepCopy();");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ } else {
+ {
+ int _size_1 = a.getSize();
+ boolean _equals_1 = (_size_1 == 0);
+ if (_equals_1) {
+ _builder.append("copy.");
+ String _name_6 = a.getName();
+ _builder.append(_name_6, "");
+ _builder.append(" = ");
+ String _name_7 = a.getName();
+ _builder.append(_name_7, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("for (int i=0;i<");
+ String _name_8 = a.getName();
+ _builder.append(_name_8, "");
+ _builder.append(".length;i++){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("copy.");
+ String _name_9 = a.getName();
+ _builder.append(_name_9, " ");
+ _builder.append("[i] = ");
+ String _name_10 = a.getName();
+ _builder.append(_name_10, " ");
+ _builder.append("[i];");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ }
+ }
+ return _builder;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/JavaExtensions.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/JavaExtensions.java
index 5380b8500..395be27a5 100644
--- a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/JavaExtensions.java
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/JavaExtensions.java
@@ -1,144 +1,240 @@
-package org.eclipse.etrice.generator.java.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.List;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.RoomClass;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator;
-import org.eclipse.etrice.generator.generic.ILanguageExtension;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.util.Pair;
-
-@Singleton
-@SuppressWarnings("all")
-public class JavaExtensions implements ILanguageExtension {
- @Inject
- private AbstractTransitionChainGenerator chainGenerator;
-
- public String getTypedDataDefinition(final Message m) {
- VarDecl _data = m.getData();
- return this.chainGenerator.generateTypedData(_data);
- }
-
- public String getJavaFileName(final RoomClass rc) {
- String _name = rc.getName();
- String _plus = (_name + ".java");
- return _plus;
- }
-
- public String accessLevelPrivate() {
- return "private ";
- }
-
- public String accessLevelProtected() {
- return "protected ";
- }
-
- public String accessLevelPublic() {
- return "public ";
- }
-
- public String memberAccess() {
- return "this.";
- }
-
- public String selfPointer(final String classname, final boolean hasArgs) {
- return "";
- }
-
- public String selfPointer(final boolean hasArgs) {
- return "";
- }
-
- public String operationScope(final String classname, final boolean isDeclaration) {
- return "";
- }
-
- public String memberInDeclaration(final String namespace, final String member) {
- return member;
- }
-
- public String memberInUse(final String namespace, final String member) {
- String _plus = (namespace + ".");
- return (_plus + member);
- }
-
- public boolean usesInheritance() {
- return true;
- }
-
- public String genEnumeration(final String name, final List<Pair<String,String>> entries) {
- StringConcatenation _builder = new StringConcatenation();
- {
- for(final Pair<String,String> entry : entries) {
- _builder.append("public static final int ");
- String _first = entry.getFirst();
- _builder.append(_first, "");
- _builder.append(" = ");
- String _second = entry.getSecond();
- _builder.append(_second, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- String _string = _builder.toString();
- return _string;
- }
-
- public String booleanConstant(final boolean b) {
- String _string = Boolean.valueOf(b).toString();
- return _string;
- }
-
- public String pointerLiteral() {
- return "";
- }
-
- public String nullPointer() {
- return "null";
- }
-
- public String voidPointer() {
- return "Object";
- }
-
- public String arrayDeclaration(final String type, final int size, final String name, final boolean isRef) {
- String _plus = (type + " ");
- String _plus_1 = (_plus + name);
- String _plus_2 = (_plus_1 + "[]");
- return _plus_2;
- }
-
- public String constructorName(final String cls) {
- return cls;
- }
-
- public String destructorName(final String cls) {
- String _plus = (cls + "_dtor");
- return _plus;
- }
-
- public String constructorReturnType() {
- return "";
- }
-
- public String destructorReturnType() {
- return "void";
- }
-
- public String toCharArrayExpr(final String s) {
- String _plus = ("\"" + s);
- String _plus_1 = (_plus + "\".toCharArray()");
- return _plus_1;
- }
-
- public String superCall(final String baseClassName, final String method, final String args) {
- String _plus = ("super." + method);
- String _plus_1 = (_plus + "(");
- String _plus_2 = (_plus_1 + args);
- String _plus_3 = (_plus_2 + ");");
- return _plus_3;
- }
-}
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.List;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.PrimitiveType;
+import org.eclipse.etrice.core.room.RoomClass;
+import org.eclipse.etrice.core.room.VarDecl;
+import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator;
+import org.eclipse.etrice.generator.generic.ILanguageExtension;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.util.Pair;
+import org.eclipse.xtext.xbase.lib.StringExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class JavaExtensions implements ILanguageExtension {
+ @Inject
+ private AbstractTransitionChainGenerator chainGenerator;
+
+ public String getTypedDataDefinition(final Message m) {
+ VarDecl _data = m.getData();
+ return this.chainGenerator.generateTypedData(_data);
+ }
+
+ public String getJavaFileName(final RoomClass rc) {
+ String _name = rc.getName();
+ String _plus = (_name + ".java");
+ return _plus;
+ }
+
+ public String toWrapper(final String type) {
+ String _switchResult = null;
+ boolean _matched = false;
+ if (!_matched) {
+ if (Objects.equal(type,"int")) {
+ _matched=true;
+ _switchResult = "Integer";
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(type,"char")) {
+ _matched=true;
+ _switchResult = "Character";
+ }
+ }
+ if (!_matched) {
+ String _firstUpper = StringExtensions.toFirstUpper(type);
+ _switchResult = _firstUpper;
+ }
+ return _switchResult;
+ }
+
+ public String accessLevelPrivate() {
+ return "private ";
+ }
+
+ public String accessLevelProtected() {
+ return "protected ";
+ }
+
+ public String accessLevelPublic() {
+ return "public ";
+ }
+
+ public String memberAccess() {
+ return "this.";
+ }
+
+ public String selfPointer(final String classname, final boolean hasArgs) {
+ return "";
+ }
+
+ public String selfPointer(final boolean hasArgs) {
+ return "";
+ }
+
+ public String operationScope(final String classname, final boolean isDeclaration) {
+ return "";
+ }
+
+ public String memberInDeclaration(final String namespace, final String member) {
+ return member;
+ }
+
+ public String memberInUse(final String namespace, final String member) {
+ String _plus = (namespace + ".");
+ return (_plus + member);
+ }
+
+ public boolean usesInheritance() {
+ return true;
+ }
+
+ public String genEnumeration(final String name, final List<Pair<String,String>> entries) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ for(final Pair<String,String> entry : entries) {
+ _builder.append("public static final int ");
+ String _first = entry.getFirst();
+ _builder.append(_first, "");
+ _builder.append(" = ");
+ String _second = entry.getSecond();
+ _builder.append(_second, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ String _string = _builder.toString();
+ return _string;
+ }
+
+ public String booleanConstant(final boolean b) {
+ String _string = Boolean.valueOf(b).toString();
+ return _string;
+ }
+
+ public String pointerLiteral() {
+ return "";
+ }
+
+ public String nullPointer() {
+ return "null";
+ }
+
+ public String voidPointer() {
+ return "Object";
+ }
+
+ public String arrayDeclaration(final String type, final int size, final String name, final boolean isRef) {
+ String _plus = (type + " ");
+ String _plus_1 = (_plus + name);
+ String _plus_2 = (_plus_1 + "[]");
+ return _plus_2;
+ }
+
+ public String constructorName(final String cls) {
+ return cls;
+ }
+
+ public String destructorName(final String cls) {
+ String _plus = (cls + "_dtor");
+ return _plus;
+ }
+
+ public String constructorReturnType() {
+ return "";
+ }
+
+ public String destructorReturnType() {
+ return "void";
+ }
+
+ public String toCharArrayExpr(final String s) {
+ String _plus = ("\"" + s);
+ String _plus_1 = (_plus + "\".toCharArray()");
+ return _plus_1;
+ }
+
+ public String superCall(final String baseClassName, final String method, final String args) {
+ String _plus = ("super." + method);
+ String _plus_1 = (_plus + "(");
+ String _plus_2 = (_plus_1 + args);
+ String _plus_3 = (_plus_2 + ");");
+ return _plus_3;
+ }
+
+ public String toValueLiteral(final PrimitiveType type, final String value) {
+ String _targetName = type.getTargetName();
+ final String _switchValue = _targetName;
+ boolean _matched = false;
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"boolean")) {
+ _matched=true;
+ return value;
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"byte")) {
+ _matched=true;
+ return ("(byte)" + value);
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"short")) {
+ _matched=true;
+ return ("(short)" + value);
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"int")) {
+ _matched=true;
+ return value;
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"long")) {
+ _matched=true;
+ return (value + "L");
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"float")) {
+ _matched=true;
+ return (value + "f");
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"double")) {
+ _matched=true;
+ return (value + "d");
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"char")) {
+ _matched=true;
+ int _length = value.length();
+ boolean _equals = (_length == 1);
+ if (_equals) {
+ String _plus = ("\'" + value);
+ return (_plus + "\'");
+ } else {
+ return this.toCharArrayExpr(value);
+ }
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(_switchValue,"String")) {
+ _matched=true;
+ String _plus_1 = ("\"" + value);
+ return (_plus_1 + "\"");
+ }
+ }
+ String _targetName_1 = type.getTargetName();
+ UnsupportedOperationException _unsupportedOperationException = new UnsupportedOperationException(_targetName_1);
+ throw _unsupportedOperationException;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/MainGen.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/MainGen.java
index 632b5e21e..fba8b068e 100644
--- a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/MainGen.java
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/MainGen.java
@@ -1,60 +1,60 @@
-package org.eclipse.etrice.generator.java.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.generator.generic.PrepareFileSystem;
-import org.eclipse.etrice.generator.java.gen.ActorClassGen;
-import org.eclipse.etrice.generator.java.gen.DataClassGen;
-import org.eclipse.etrice.generator.java.gen.ProtocolClassGen;
-import org.eclipse.etrice.generator.java.gen.SubSystemClassGen;
-import org.eclipse.etrice.generator.java.gen.SubSystemRunnerGen;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.eclipse.xtext.generator.IGenerator;
-
-@Singleton
-@SuppressWarnings("all")
-public class MainGen implements IGenerator {
- @Inject
- private DataClassGen dataClassGen;
-
- @Inject
- private ProtocolClassGen protocolClassGen;
-
- @Inject
- private ActorClassGen actorClassGen;
-
- @Inject
- private SubSystemClassGen subsystemClassGen;
-
- @Inject
- private SubSystemRunnerGen subsystemRunnerGen;
-
- @Inject
- private PrepareFileSystem prepFS;
-
- public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
- this.prepFS.prepare(resource);
- EList<EObject> _contents = resource.getContents();
- for (final EObject e : _contents) {
- if ((e instanceof Root)) {
- this.doGenerate(((Root) e));
- }
- }
- }
-
- public void doGenerate(final Root e) {
- this.dataClassGen.doGenerate(e);
- this.protocolClassGen.doGenerate(e);
- this.actorClassGen.doGenerate(e);
- this.subsystemClassGen.doGenerate(e);
- boolean _isLibrary = e.isLibrary();
- boolean _not = (!_isLibrary);
- if (_not) {
- this.subsystemRunnerGen.doGenerate(e);
- }
- }
-}
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.generator.generic.PrepareFileSystem;
+import org.eclipse.etrice.generator.java.gen.ActorClassGen;
+import org.eclipse.etrice.generator.java.gen.DataClassGen;
+import org.eclipse.etrice.generator.java.gen.ProtocolClassGen;
+import org.eclipse.etrice.generator.java.gen.SubSystemClassGen;
+import org.eclipse.etrice.generator.java.gen.SubSystemRunnerGen;
+import org.eclipse.xtext.generator.IFileSystemAccess;
+import org.eclipse.xtext.generator.IGenerator;
+
+@Singleton
+@SuppressWarnings("all")
+public class MainGen implements IGenerator {
+ @Inject
+ private DataClassGen dataClassGen;
+
+ @Inject
+ private ProtocolClassGen protocolClassGen;
+
+ @Inject
+ private ActorClassGen actorClassGen;
+
+ @Inject
+ private SubSystemClassGen subsystemClassGen;
+
+ @Inject
+ private SubSystemRunnerGen subsystemRunnerGen;
+
+ @Inject
+ private PrepareFileSystem prepFS;
+
+ public void doGenerate(final Resource resource, final IFileSystemAccess fsa) {
+ this.prepFS.prepare(resource);
+ EList<EObject> _contents = resource.getContents();
+ for (final EObject e : _contents) {
+ if ((e instanceof Root)) {
+ this.doGenerate(((Root) e));
+ }
+ }
+ }
+
+ public void doGenerate(final Root e) {
+ this.dataClassGen.doGenerate(e);
+ this.protocolClassGen.doGenerate(e);
+ this.actorClassGen.doGenerate(e);
+ this.subsystemClassGen.doGenerate(e);
+ boolean _isLibrary = e.isLibrary();
+ boolean _not = (!_isLibrary);
+ if (_not) {
+ this.subsystemRunnerGen.doGenerate(e);
+ }
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ProtocolClassGen.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ProtocolClassGen.java
index ca310c140..7b2090992 100644
--- a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ProtocolClassGen.java
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/ProtocolClassGen.java
@@ -1,790 +1,790 @@
-package org.eclipse.etrice.generator.java.gen;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.DataClass;
-import org.eclipse.etrice.core.room.DataType;
-import org.eclipse.etrice.core.room.DetailCode;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.MessageHandler;
-import org.eclipse.etrice.core.room.PortClass;
-import org.eclipse.etrice.core.room.PortOperation;
-import org.eclipse.etrice.core.room.PrimitiveType;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.eclipse.etrice.generator.generic.GenericProtocolClassGenerator;
-import org.eclipse.etrice.generator.generic.ProcedureHelpers;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.etrice.generator.generic.TypeHelpers;
-import org.eclipse.etrice.generator.java.gen.DataClassGen;
-import org.eclipse.etrice.generator.java.gen.JavaExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-
-@Singleton
-@SuppressWarnings("all")
-public class ProtocolClassGen extends GenericProtocolClassGenerator {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private JavaExtensions _javaExtensions;
-
- @Inject
- private RoomExtensions _roomExtensions;
-
- @Inject
- private ProcedureHelpers _procedureHelpers;
-
- @Inject
- private TypeHelpers _typeHelpers;
-
- @Inject
- private DataClassGen _dataClassGen;
-
- @Inject
- private ILogger logger;
-
- public void doGenerate(final Root root) {
- EList<ProtocolClass> _usedProtocolClasses = root.getUsedProtocolClasses();
- for (final ProtocolClass pc : _usedProtocolClasses) {
- {
- String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(pc);
- String _path = this._roomExtensions.getPath(pc);
- String path = (_generationTargetPath + _path);
- String file = this._javaExtensions.getJavaFileName(pc);
- String _plus = ("generating ProtocolClass implementation \'" + file);
- String _plus_1 = (_plus + "\' in \'");
- String _plus_2 = (_plus_1 + path);
- String _plus_3 = (_plus_2 + "\'");
- this.logger.logInfo(_plus_3);
- this.fileAccess.setOutputPath(path);
- CharSequence _generate = this.generate(root, pc);
- this.fileAccess.generateFile(file, _generate);
- }
- }
- }
-
- public CharSequence generate(final Root root, final ProtocolClass pc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("package ");
- String _package = this._roomExtensions.getPackage(pc);
- _builder.append(_package, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("import java.util.ArrayList;");
- _builder.newLine();
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.Address;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.Message;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.modelbase.*;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.debugging.DebuggingService;");
- _builder.newLine();
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(pc, 1);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- EList<RoomModel> models = root.getReferencedModels(pc);
- _builder.newLineIfNotEmpty();
- {
- for(final RoomModel model : models) {
- _builder.append("import ");
- String _name = model.getName();
- _builder.append(_name, "");
- _builder.append(".*;");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.newLine();
- _builder.append("public class ");
- String _name_1 = pc.getName();
- _builder.append(_name_1, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("// message IDs");
- _builder.newLine();
- _builder.append("\t");
- String _genMessageIDs = this.genMessageIDs(pc);
- _builder.append(_genMessageIDs, " ");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- CharSequence _userCode_1 = this._procedureHelpers.userCode(pc, 2);
- _builder.append(_userCode_1, " ");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("private static String messageStrings[] = {\"MIN\", ");
- {
- List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
- for(final Message m : _allOutgoingMessages) {
- _builder.append("\"");
- String _name_2 = m.getName();
- _builder.append(_name_2, " ");
- _builder.append("\",");
- }
- }
- _builder.append(" ");
- {
- List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
- for(final Message m_1 : _allIncomingMessages) {
- _builder.append("\"");
- String _name_3 = m_1.getName();
- _builder.append(_name_3, " ");
- _builder.append("\",");
- }
- }
- _builder.append("\"MAX\"};");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public String getMessageString(int msg_id) {");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("if (msg_id<MSG_MIN || msg_id>MSG_MAX+1){");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("// id out of range");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("return \"Message ID out of range\";");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("else{");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("return messageStrings[msg_id];");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- CharSequence _portClass = this.portClass(pc, Boolean.valueOf(false));
- _builder.append(_portClass, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- CharSequence _portClass_1 = this.portClass(pc, Boolean.valueOf(true));
- _builder.append(_portClass_1, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- return _builder;
- }
-
- public CharSequence portClass(final ProtocolClass pc, final Boolean conj) {
- CharSequence _xblockexpression = null;
- {
- PortClass pclass = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
- String portClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue());
- String replPortClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue(), true);
- StringConcatenation _builder = new StringConcatenation();
- _builder.newLine();
- _builder.append("// port class");
- _builder.newLine();
- _builder.append("static public class ");
- _builder.append(portClassName, "");
- _builder.append(" extends PortBase {");
- _builder.newLineIfNotEmpty();
- {
- boolean _notEquals = (!Objects.equal(pclass, null));
- if (_notEquals) {
- _builder.append("\t");
- DetailCode _userCode = pclass.getUserCode();
- CharSequence _userCode_1 = this._procedureHelpers.userCode(_userCode);
- _builder.append(_userCode_1, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.append("// constructors");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public ");
- _builder.append(portClassName, " ");
- _builder.append("(IEventReceiver actor, String name, int localId, Address addr, Address peerAddress) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("this(actor, name, localId, 0, addr, peerAddress);");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("DebuggingService.getInstance().addPortInstance(this);");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public ");
- _builder.append(portClassName, " ");
- _builder.append("(IEventReceiver actor, String name, int localId, int idx, Address addr, Address peerAddress) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("super(actor, name, localId, idx, addr, peerAddress);");
- _builder.newLine();
- {
- boolean _notEquals_1 = (!Objects.equal(pclass, null));
- if (_notEquals_1) {
- _builder.append("\t\t");
- EList<Attribute> _attributes = pclass.getAttributes();
- CharSequence _attributeInitialization = this._procedureHelpers.attributeInitialization(_attributes, true);
- _builder.append(_attributeInitialization, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t");
- _builder.append("DebuggingService.getInstance().addPortInstance(this);");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("@Override");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public void receive(Message m) {");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("if (!(m instanceof EventMessage))");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("return;");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("EventMessage msg = (EventMessage) m;");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("if (msg.getEvtId() <= 0 || msg.getEvtId() >= MSG_MAX)");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("System.out.println(\"unknown\");");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("else {");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("if (messageStrings[msg.getEvtId()] != \"timerTick\"){");
- _builder.newLine();
- _builder.append("\t\t\t\t\t");
- _builder.append("DebuggingService.getInstance().addMessageAsyncIn(getPeerAddress(), getAddress(), messageStrings[msg.getEvtId()]);");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("}");
- _builder.newLine();
- {
- boolean _handlesReceive = this._roomExtensions.handlesReceive(pc, (conj).booleanValue());
- if (_handlesReceive) {
- _builder.append("\t\t\t\t");
- _builder.append("switch (msg.getEvtId()) {");
- _builder.newLine();
- {
- List<MessageHandler> _receiveHandlers = this._roomExtensions.getReceiveHandlers(pc, (conj).booleanValue());
- for(final MessageHandler hdlr : _receiveHandlers) {
- _builder.append("\t\t\t\t");
- _builder.append("\t");
- _builder.append("case ");
- Message _msg = hdlr.getMsg();
- String _codeName = this._roomExtensions.getCodeName(_msg);
- _builder.append(_codeName, " ");
- _builder.append(":");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t\t");
- _builder.append("\t");
- _builder.append("{");
- _builder.newLine();
- {
- DetailCode _detailCode = hdlr.getDetailCode();
- EList<String> _commands = _detailCode.getCommands();
- for(final String command : _commands) {
- _builder.append("\t\t\t\t");
- _builder.append("\t");
- _builder.append("\t");
- _builder.append(command, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t\t\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("\t");
- _builder.append("break;");
- _builder.newLine();
- }
- }
- _builder.append("\t\t\t\t");
- _builder.append("\t");
- _builder.append("default:");
- _builder.newLine();
- }
- }
- _builder.append("\t\t\t\t\t");
- _builder.append("if (msg instanceof EventWithDataMessage)");
- _builder.newLine();
- _builder.append("\t\t\t\t\t\t");
- _builder.append("getActor().receiveEvent(this, msg.getEvtId(), ((EventWithDataMessage)msg).getData());");
- _builder.newLine();
- _builder.append("\t\t\t\t\t");
- _builder.append("else");
- _builder.newLine();
- _builder.append("\t\t\t\t\t\t");
- _builder.append("getActor().receiveEvent(this, msg.getEvtId(), null);");
- _builder.newLine();
- {
- boolean _handlesReceive_1 = this._roomExtensions.handlesReceive(pc, (conj).booleanValue());
- if (_handlesReceive_1) {
- _builder.append("\t\t\t\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- _builder.append("\t\t\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- {
- boolean _notEquals_2 = (!Objects.equal(pclass, null));
- if (_notEquals_2) {
- _builder.append("\t");
- EList<Attribute> _attributes_1 = pclass.getAttributes();
- CharSequence _attributes_2 = this._procedureHelpers.attributes(_attributes_1);
- _builder.append(_attributes_2, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("// TODO JH: Avoid collision attr getters/setter <-> user operations");
- _builder.newLine();
- _builder.append("\t");
- EList<Attribute> _attributes_3 = pclass.getAttributes();
- CharSequence _attributeSettersGettersImplementation = this._procedureHelpers.attributeSettersGettersImplementation(_attributes_3, null);
- _builder.append(_attributeSettersGettersImplementation, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- EList<PortOperation> _operations = pclass.getOperations();
- CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(_operations, portClassName);
- _builder.append(_operationsImplementation, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("// sent messages");
- _builder.newLine();
- {
- List<Message> _outgoing = this._roomExtensions.getOutgoing(pc, (conj).booleanValue());
- for(final Message m : _outgoing) {
- _builder.append("\t");
- CharSequence _sendMessage = this.sendMessage(m, (conj).booleanValue());
- _builder.append(_sendMessage, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("// replicated port class");
- _builder.newLine();
- _builder.append("static public class ");
- _builder.append(replPortClassName, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("private ArrayList<");
- _builder.append(portClassName, " ");
- _builder.append("> ports;");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("private int replication;");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public ");
- _builder.append(replPortClassName, " ");
- _builder.append("(IEventReceiver actor, String name, int localId, Address[] addr,");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("Address[] peerAddress) {");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("replication = addr==null? 0:addr.length;");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("ports = new ArrayList<");
- String _name = pc.getName();
- _builder.append(_name, " ");
- _builder.append(".");
- _builder.append(portClassName, " ");
- _builder.append(">(replication);");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("for (int i=0; i<replication; ++i) {");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("ports.add(new ");
- _builder.append(portClassName, " ");
- _builder.append("(");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t\t\t");
- _builder.append("actor, name+i, localId, i, addr[i], peerAddress[i]));");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public int getReplication() {");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("return replication;");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public int getIndexOf(InterfaceItemBase ifitem){");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("return ifitem.getIdx();");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public ");
- _builder.append(portClassName, " ");
- _builder.append(" get(int i) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("return ports.get(i);");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- {
- if ((conj).booleanValue()) {
- _builder.append("\t");
- _builder.append("// incoming messages");
- _builder.newLine();
- {
- List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
- for(final Message m_1 : _allIncomingMessages) {
- _builder.append("\t");
- CharSequence _messageSignature = this.messageSignature(m_1);
- _builder.append(_messageSignature, " ");
- _builder.append("{");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("for (int i=0; i<replication; ++i) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t\t");
- _builder.append("ports.get(i).");
- CharSequence _messageCall = this.messageCall(m_1);
- _builder.append(_messageCall, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- } else {
- _builder.append("\t");
- _builder.append("// outgoing messages");
- _builder.newLine();
- {
- List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
- for(final Message m_2 : _allOutgoingMessages) {
- _builder.append("\t");
- CharSequence _messageSignature_1 = this.messageSignature(m_2);
- _builder.append(_messageSignature_1, " ");
- _builder.append("{");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("for (int i=0; i<replication; ++i) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t\t");
- _builder.append("ports.get(i).");
- CharSequence _messageCall_1 = this.messageCall(m_2);
- _builder.append(_messageCall_1, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public CharSequence messageSignature(final Message m) {
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _isPriv = m.isPriv();
- if (_isPriv) {
- _builder.append("private");
- } else {
- _builder.append("public");
- }
- }
- _builder.append(" void ");
- String _name = m.getName();
- _builder.append(_name, "");
- _builder.append("(");
- {
- VarDecl _data = m.getData();
- boolean _notEquals = (!Objects.equal(_data, null));
- if (_notEquals) {
- VarDecl _data_1 = m.getData();
- RefableType _refType = _data_1.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- _builder.append(_typeName, "");
- _builder.append(" ");
- VarDecl _data_2 = m.getData();
- String _name_1 = _data_2.getName();
- _builder.append(_name_1, "");
- }
- }
- _builder.append(")");
- return _builder;
- }
-
- public CharSequence messageSignatureExplicit(final Message m) {
- CharSequence _xblockexpression = null;
- {
- VarDecl _data = m.getData();
- RefableType _refType = _data.getRefType();
- DataType _type = _refType.getType();
- DataClass dc = ((DataClass) _type);
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("public void ");
- String _name = m.getName();
- _builder.append(_name, "");
- _builder.append("(");
- String _argList = this._dataClassGen.argList(dc);
- _builder.append(_argList, "");
- _builder.append(")");
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- public CharSequence messageCall(final Message m) {
- StringConcatenation _builder = new StringConcatenation();
- String _name = m.getName();
- _builder.append(_name, "");
- _builder.append("(");
- {
- VarDecl _data = m.getData();
- boolean _notEquals = (!Objects.equal(_data, null));
- if (_notEquals) {
- _builder.append(" ");
- VarDecl _data_1 = m.getData();
- String _name_1 = _data_1.getName();
- _builder.append(_name_1, "");
- }
- }
- _builder.append(")");
- return _builder;
- }
-
- public CharSequence sendMessage(final Message m, final boolean conj) {
- CharSequence _xblockexpression = null;
- {
- String _xifexpression = null;
- if (conj) {
- _xifexpression = "IN";
- } else {
- _xifexpression = "OUT";
- }
- String dir = _xifexpression;
- MessageHandler hdlr = this._roomExtensions.getSendHandler(m, conj);
- StringConcatenation _builder = new StringConcatenation();
- CharSequence _messageSignature = this.messageSignature(m);
- _builder.append(_messageSignature, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- {
- boolean _notEquals = (!Objects.equal(hdlr, null));
- if (_notEquals) {
- _builder.append("\t");
- {
- DetailCode _detailCode = hdlr.getDetailCode();
- EList<String> _commands = _detailCode.getCommands();
- for(final String command : _commands) {
- _builder.append("\t");
- _builder.append(command, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- } else {
- _builder.append("\t");
- _builder.append("if (messageStrings[ ");
- _builder.append(dir, " ");
- _builder.append("_");
- String _name = m.getName();
- _builder.append(_name, " ");
- _builder.append("] != \"timerTick\"){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[");
- _builder.append(dir, " ");
- _builder.append("_");
- String _name_1 = m.getName();
- _builder.append(_name_1, " ");
- _builder.append("]);");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("if (getPeerAddress()!=null)");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- {
- VarDecl _data = m.getData();
- boolean _equals = Objects.equal(_data, null);
- if (_equals) {
- _builder.append("getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), ");
- _builder.append(dir, " ");
- _builder.append("_");
- String _name_2 = m.getName();
- _builder.append(_name_2, " ");
- _builder.append("));");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- } else {
- _builder.append("getPeerMsgReceiver().receive(new EventWithDataMessage(getPeerAddress(), ");
- _builder.append(dir, " ");
- _builder.append("_");
- String _name_3 = m.getName();
- _builder.append(_name_3, " ");
- _builder.append(", ");
- VarDecl _data_1 = m.getData();
- String _name_4 = _data_1.getName();
- _builder.append(_name_4, " ");
- {
- boolean _and = false;
- VarDecl _data_2 = m.getData();
- RefableType _refType = _data_2.getRefType();
- boolean _isRef = _refType.isRef();
- boolean _not = (!_isRef);
- if (!_not) {
- _and = false;
- } else {
- VarDecl _data_3 = m.getData();
- RefableType _refType_1 = _data_3.getRefType();
- DataType _type = _refType_1.getType();
- boolean _not_1 = (!(_type instanceof PrimitiveType));
- _and = (_not && _not_1);
- }
- if (_and) {
- _builder.append(".deepCopy()");
- }
- }
- _builder.append("));");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.append("}");
- _builder.newLine();
- {
- boolean _and_1 = false;
- VarDecl _data_4 = m.getData();
- boolean _notEquals_1 = (!Objects.equal(_data_4, null));
- if (!_notEquals_1) {
- _and_1 = false;
- } else {
- VarDecl _data_5 = m.getData();
- RefableType _refType_2 = _data_5.getRefType();
- DataType _type_1 = _refType_2.getType();
- _and_1 = (_notEquals_1 && (_type_1 instanceof DataClass));
- }
- if (_and_1) {
- CharSequence _messageSignatureExplicit = this.messageSignatureExplicit(m);
- _builder.append(_messageSignatureExplicit, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- String _name_5 = m.getName();
- _builder.append(_name_5, " ");
- _builder.append("(new ");
- VarDecl _data_6 = m.getData();
- RefableType _refType_3 = _data_6.getRefType();
- DataType _type_2 = _refType_3.getType();
- String _name_6 = _type_2.getName();
- _builder.append(_name_6, " ");
- _builder.append("(");
- VarDecl _data_7 = m.getData();
- RefableType _refType_4 = _data_7.getRefType();
- DataType _type_3 = _refType_4.getType();
- String _paramList = this._dataClassGen.paramList(((DataClass) _type_3));
- _builder.append(_paramList, " ");
- _builder.append("));");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-}
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DataType;
+import org.eclipse.etrice.core.room.DetailCode;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.MessageHandler;
+import org.eclipse.etrice.core.room.PortClass;
+import org.eclipse.etrice.core.room.PortOperation;
+import org.eclipse.etrice.core.room.PrimitiveType;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.core.room.VarDecl;
+import org.eclipse.etrice.generator.generic.GenericProtocolClassGenerator;
+import org.eclipse.etrice.generator.generic.ProcedureHelpers;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.etrice.generator.generic.TypeHelpers;
+import org.eclipse.etrice.generator.java.gen.DataClassGen;
+import org.eclipse.etrice.generator.java.gen.JavaExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+
+@Singleton
+@SuppressWarnings("all")
+public class ProtocolClassGen extends GenericProtocolClassGenerator {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private JavaExtensions _javaExtensions;
+
+ @Inject
+ private RoomExtensions _roomExtensions;
+
+ @Inject
+ private ProcedureHelpers _procedureHelpers;
+
+ @Inject
+ private TypeHelpers _typeHelpers;
+
+ @Inject
+ private DataClassGen _dataClassGen;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root) {
+ EList<ProtocolClass> _usedProtocolClasses = root.getUsedProtocolClasses();
+ for (final ProtocolClass pc : _usedProtocolClasses) {
+ {
+ String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(pc);
+ String _path = this._roomExtensions.getPath(pc);
+ String path = (_generationTargetPath + _path);
+ String file = this._javaExtensions.getJavaFileName(pc);
+ String _plus = ("generating ProtocolClass implementation \'" + file);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ this.fileAccess.setOutputPath(path);
+ CharSequence _generate = this.generate(root, pc);
+ this.fileAccess.generateFile(file, _generate);
+ }
+ }
+ }
+
+ public CharSequence generate(final Root root, final ProtocolClass pc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("package ");
+ String _package = this._roomExtensions.getPackage(pc);
+ _builder.append(_package, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("import java.util.ArrayList;");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.Address;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.Message;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.modelbase.*;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.debugging.DebuggingService;");
+ _builder.newLine();
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(pc, 1);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ EList<RoomModel> models = root.getReferencedModels(pc);
+ _builder.newLineIfNotEmpty();
+ {
+ for(final RoomModel model : models) {
+ _builder.append("import ");
+ String _name = model.getName();
+ _builder.append(_name, "");
+ _builder.append(".*;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.append("public class ");
+ String _name_1 = pc.getName();
+ _builder.append(_name_1, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("// message IDs");
+ _builder.newLine();
+ _builder.append("\t");
+ String _genMessageIDs = this.genMessageIDs(pc);
+ _builder.append(_genMessageIDs, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ CharSequence _userCode_1 = this._procedureHelpers.userCode(pc, 2);
+ _builder.append(_userCode_1, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("private static String messageStrings[] = {\"MIN\", ");
+ {
+ List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
+ for(final Message m : _allOutgoingMessages) {
+ _builder.append("\"");
+ String _name_2 = m.getName();
+ _builder.append(_name_2, " ");
+ _builder.append("\",");
+ }
+ }
+ _builder.append(" ");
+ {
+ List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
+ for(final Message m_1 : _allIncomingMessages) {
+ _builder.append("\"");
+ String _name_3 = m_1.getName();
+ _builder.append(_name_3, " ");
+ _builder.append("\",");
+ }
+ }
+ _builder.append("\"MAX\"};");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public String getMessageString(int msg_id) {");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("if (msg_id<MSG_MIN || msg_id>MSG_MAX+1){");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("// id out of range");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("return \"Message ID out of range\";");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("else{");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("return messageStrings[msg_id];");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ CharSequence _portClass = this.portClass(pc, Boolean.valueOf(false));
+ _builder.append(_portClass, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ CharSequence _portClass_1 = this.portClass(pc, Boolean.valueOf(true));
+ _builder.append(_portClass_1, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ return _builder;
+ }
+
+ public CharSequence portClass(final ProtocolClass pc, final Boolean conj) {
+ CharSequence _xblockexpression = null;
+ {
+ PortClass pclass = this._roomExtensions.getPortClass(pc, (conj).booleanValue());
+ String portClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue());
+ String replPortClassName = this._roomExtensions.getPortClassName(pc, (conj).booleanValue(), true);
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.newLine();
+ _builder.append("// port class");
+ _builder.newLine();
+ _builder.append("static public class ");
+ _builder.append(portClassName, "");
+ _builder.append(" extends PortBase {");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _notEquals = (!Objects.equal(pclass, null));
+ if (_notEquals) {
+ _builder.append("\t");
+ DetailCode _userCode = pclass.getUserCode();
+ CharSequence _userCode_1 = this._procedureHelpers.userCode(_userCode);
+ _builder.append(_userCode_1, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("// constructors");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ _builder.append(portClassName, " ");
+ _builder.append("(IEventReceiver actor, String name, int localId, Address addr, Address peerAddress) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("this(actor, name, localId, 0, addr, peerAddress);");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("DebuggingService.getInstance().addPortInstance(this);");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ _builder.append(portClassName, " ");
+ _builder.append("(IEventReceiver actor, String name, int localId, int idx, Address addr, Address peerAddress) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("super(actor, name, localId, idx, addr, peerAddress);");
+ _builder.newLine();
+ {
+ boolean _notEquals_1 = (!Objects.equal(pclass, null));
+ if (_notEquals_1) {
+ _builder.append("\t\t");
+ EList<Attribute> _attributes = pclass.getAttributes();
+ CharSequence _attributeInitialization = this._procedureHelpers.attributeInitialization(_attributes, true);
+ _builder.append(_attributeInitialization, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("DebuggingService.getInstance().addPortInstance(this);");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void receive(Message m) {");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("if (!(m instanceof EventMessage))");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("return;");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("EventMessage msg = (EventMessage) m;");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("if (msg.getEvtId() <= 0 || msg.getEvtId() >= MSG_MAX)");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("System.out.println(\"unknown\");");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("else {");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("if (messageStrings[msg.getEvtId()] != \"timerTick\"){");
+ _builder.newLine();
+ _builder.append("\t\t\t\t\t");
+ _builder.append("DebuggingService.getInstance().addMessageAsyncIn(getPeerAddress(), getAddress(), messageStrings[msg.getEvtId()]);");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ {
+ boolean _handlesReceive = this._roomExtensions.handlesReceive(pc, (conj).booleanValue());
+ if (_handlesReceive) {
+ _builder.append("\t\t\t\t");
+ _builder.append("switch (msg.getEvtId()) {");
+ _builder.newLine();
+ {
+ List<MessageHandler> _receiveHandlers = this._roomExtensions.getReceiveHandlers(pc, (conj).booleanValue());
+ for(final MessageHandler hdlr : _receiveHandlers) {
+ _builder.append("\t\t\t\t");
+ _builder.append("\t");
+ _builder.append("case ");
+ Message _msg = hdlr.getMsg();
+ String _codeName = this._roomExtensions.getCodeName(_msg);
+ _builder.append(_codeName, " ");
+ _builder.append(":");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t\t");
+ _builder.append("\t");
+ _builder.append("{");
+ _builder.newLine();
+ {
+ DetailCode _detailCode = hdlr.getDetailCode();
+ EList<String> _commands = _detailCode.getCommands();
+ for(final String command : _commands) {
+ _builder.append("\t\t\t\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append(command, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t\t\t");
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("\t");
+ _builder.append("break;");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t\t\t");
+ _builder.append("\t");
+ _builder.append("default:");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t\t\t\t");
+ _builder.append("if (msg instanceof EventWithDataMessage)");
+ _builder.newLine();
+ _builder.append("\t\t\t\t\t\t");
+ _builder.append("getActor().receiveEvent(this, msg.getEvtId(), ((EventWithDataMessage)msg).getData());");
+ _builder.newLine();
+ _builder.append("\t\t\t\t\t");
+ _builder.append("else");
+ _builder.newLine();
+ _builder.append("\t\t\t\t\t\t");
+ _builder.append("getActor().receiveEvent(this, msg.getEvtId(), null);");
+ _builder.newLine();
+ {
+ boolean _handlesReceive_1 = this._roomExtensions.handlesReceive(pc, (conj).booleanValue());
+ if (_handlesReceive_1) {
+ _builder.append("\t\t\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ boolean _notEquals_2 = (!Objects.equal(pclass, null));
+ if (_notEquals_2) {
+ _builder.append("\t");
+ EList<Attribute> _attributes_1 = pclass.getAttributes();
+ CharSequence _attributes_2 = this._procedureHelpers.attributes(_attributes_1);
+ _builder.append(_attributes_2, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("// TODO JH: Avoid collision attr getters/setter <-> user operations");
+ _builder.newLine();
+ _builder.append("\t");
+ EList<Attribute> _attributes_3 = pclass.getAttributes();
+ CharSequence _attributeSettersGettersImplementation = this._procedureHelpers.attributeSettersGettersImplementation(_attributes_3, null);
+ _builder.append(_attributeSettersGettersImplementation, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ EList<PortOperation> _operations = pclass.getOperations();
+ CharSequence _operationsImplementation = this._procedureHelpers.operationsImplementation(_operations, portClassName);
+ _builder.append(_operationsImplementation, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("// sent messages");
+ _builder.newLine();
+ {
+ List<Message> _outgoing = this._roomExtensions.getOutgoing(pc, (conj).booleanValue());
+ for(final Message m : _outgoing) {
+ _builder.append("\t");
+ CharSequence _sendMessage = this.sendMessage(m, (conj).booleanValue());
+ _builder.append(_sendMessage, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("// replicated port class");
+ _builder.newLine();
+ _builder.append("static public class ");
+ _builder.append(replPortClassName, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("private ArrayList<");
+ _builder.append(portClassName, " ");
+ _builder.append("> ports;");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("private int replication;");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ _builder.append(replPortClassName, " ");
+ _builder.append("(IEventReceiver actor, String name, int localId, Address[] addr,");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("Address[] peerAddress) {");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("replication = addr==null? 0:addr.length;");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("ports = new ArrayList<");
+ String _name = pc.getName();
+ _builder.append(_name, " ");
+ _builder.append(".");
+ _builder.append(portClassName, " ");
+ _builder.append(">(replication);");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("for (int i=0; i<replication; ++i) {");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("ports.add(new ");
+ _builder.append(portClassName, " ");
+ _builder.append("(");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t\t\t");
+ _builder.append("actor, name+i, localId, i, addr[i], peerAddress[i]));");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public int getReplication() {");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("return replication;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public int getIndexOf(InterfaceItemBase ifitem){");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("return ifitem.getIdx();");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ _builder.append(portClassName, " ");
+ _builder.append(" get(int i) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("return ports.get(i);");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ {
+ if ((conj).booleanValue()) {
+ _builder.append("\t");
+ _builder.append("// incoming messages");
+ _builder.newLine();
+ {
+ List<Message> _allIncomingMessages = this._roomExtensions.getAllIncomingMessages(pc);
+ for(final Message m_1 : _allIncomingMessages) {
+ _builder.append("\t");
+ CharSequence _messageSignature = this.messageSignature(m_1);
+ _builder.append(_messageSignature, " ");
+ _builder.append("{");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("for (int i=0; i<replication; ++i) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t\t");
+ _builder.append("ports.get(i).");
+ CharSequence _messageCall = this.messageCall(m_1);
+ _builder.append(_messageCall, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ } else {
+ _builder.append("\t");
+ _builder.append("// outgoing messages");
+ _builder.newLine();
+ {
+ List<Message> _allOutgoingMessages = this._roomExtensions.getAllOutgoingMessages(pc);
+ for(final Message m_2 : _allOutgoingMessages) {
+ _builder.append("\t");
+ CharSequence _messageSignature_1 = this.messageSignature(m_2);
+ _builder.append(_messageSignature_1, " ");
+ _builder.append("{");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("for (int i=0; i<replication; ++i) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t\t");
+ _builder.append("ports.get(i).");
+ CharSequence _messageCall_1 = this.messageCall(m_2);
+ _builder.append(_messageCall_1, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public CharSequence messageSignature(final Message m) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _isPriv = m.isPriv();
+ if (_isPriv) {
+ _builder.append("private");
+ } else {
+ _builder.append("public");
+ }
+ }
+ _builder.append(" void ");
+ String _name = m.getName();
+ _builder.append(_name, "");
+ _builder.append("(");
+ {
+ VarDecl _data = m.getData();
+ boolean _notEquals = (!Objects.equal(_data, null));
+ if (_notEquals) {
+ VarDecl _data_1 = m.getData();
+ RefableType _refType = _data_1.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ _builder.append(_typeName, "");
+ _builder.append(" ");
+ VarDecl _data_2 = m.getData();
+ String _name_1 = _data_2.getName();
+ _builder.append(_name_1, "");
+ }
+ }
+ _builder.append(")");
+ return _builder;
+ }
+
+ public CharSequence messageSignatureExplicit(final Message m) {
+ CharSequence _xblockexpression = null;
+ {
+ VarDecl _data = m.getData();
+ RefableType _refType = _data.getRefType();
+ DataType _type = _refType.getType();
+ DataClass dc = ((DataClass) _type);
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("public void ");
+ String _name = m.getName();
+ _builder.append(_name, "");
+ _builder.append("(");
+ String _argList = this._dataClassGen.argList(dc);
+ _builder.append(_argList, "");
+ _builder.append(")");
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ public CharSequence messageCall(final Message m) {
+ StringConcatenation _builder = new StringConcatenation();
+ String _name = m.getName();
+ _builder.append(_name, "");
+ _builder.append("(");
+ {
+ VarDecl _data = m.getData();
+ boolean _notEquals = (!Objects.equal(_data, null));
+ if (_notEquals) {
+ _builder.append(" ");
+ VarDecl _data_1 = m.getData();
+ String _name_1 = _data_1.getName();
+ _builder.append(_name_1, "");
+ }
+ }
+ _builder.append(")");
+ return _builder;
+ }
+
+ public CharSequence sendMessage(final Message m, final boolean conj) {
+ CharSequence _xblockexpression = null;
+ {
+ String _xifexpression = null;
+ if (conj) {
+ _xifexpression = "IN";
+ } else {
+ _xifexpression = "OUT";
+ }
+ String dir = _xifexpression;
+ MessageHandler hdlr = this._roomExtensions.getSendHandler(m, conj);
+ StringConcatenation _builder = new StringConcatenation();
+ CharSequence _messageSignature = this.messageSignature(m);
+ _builder.append(_messageSignature, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _notEquals = (!Objects.equal(hdlr, null));
+ if (_notEquals) {
+ _builder.append("\t");
+ {
+ DetailCode _detailCode = hdlr.getDetailCode();
+ EList<String> _commands = _detailCode.getCommands();
+ for(final String command : _commands) {
+ _builder.append("\t");
+ _builder.append(command, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ } else {
+ _builder.append("\t");
+ _builder.append("if (messageStrings[ ");
+ _builder.append(dir, " ");
+ _builder.append("_");
+ String _name = m.getName();
+ _builder.append(_name, " ");
+ _builder.append("] != \"timerTick\"){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[");
+ _builder.append(dir, " ");
+ _builder.append("_");
+ String _name_1 = m.getName();
+ _builder.append(_name_1, " ");
+ _builder.append("]);");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("if (getPeerAddress()!=null)");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ {
+ VarDecl _data = m.getData();
+ boolean _equals = Objects.equal(_data, null);
+ if (_equals) {
+ _builder.append("getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), ");
+ _builder.append(dir, " ");
+ _builder.append("_");
+ String _name_2 = m.getName();
+ _builder.append(_name_2, " ");
+ _builder.append("));");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ } else {
+ _builder.append("getPeerMsgReceiver().receive(new EventWithDataMessage(getPeerAddress(), ");
+ _builder.append(dir, " ");
+ _builder.append("_");
+ String _name_3 = m.getName();
+ _builder.append(_name_3, " ");
+ _builder.append(", ");
+ VarDecl _data_1 = m.getData();
+ String _name_4 = _data_1.getName();
+ _builder.append(_name_4, " ");
+ {
+ boolean _and = false;
+ VarDecl _data_2 = m.getData();
+ RefableType _refType = _data_2.getRefType();
+ boolean _isRef = _refType.isRef();
+ boolean _not = (!_isRef);
+ if (!_not) {
+ _and = false;
+ } else {
+ VarDecl _data_3 = m.getData();
+ RefableType _refType_1 = _data_3.getRefType();
+ DataType _type = _refType_1.getType();
+ boolean _not_1 = (!(_type instanceof PrimitiveType));
+ _and = (_not && _not_1);
+ }
+ if (_and) {
+ _builder.append(".deepCopy()");
+ }
+ }
+ _builder.append("));");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ {
+ boolean _and_1 = false;
+ VarDecl _data_4 = m.getData();
+ boolean _notEquals_1 = (!Objects.equal(_data_4, null));
+ if (!_notEquals_1) {
+ _and_1 = false;
+ } else {
+ VarDecl _data_5 = m.getData();
+ RefableType _refType_2 = _data_5.getRefType();
+ DataType _type_1 = _refType_2.getType();
+ _and_1 = (_notEquals_1 && (_type_1 instanceof DataClass));
+ }
+ if (_and_1) {
+ CharSequence _messageSignatureExplicit = this.messageSignatureExplicit(m);
+ _builder.append(_messageSignatureExplicit, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ String _name_5 = m.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("(new ");
+ VarDecl _data_6 = m.getData();
+ RefableType _refType_3 = _data_6.getRefType();
+ DataType _type_2 = _refType_3.getType();
+ String _name_6 = _type_2.getName();
+ _builder.append(_name_6, " ");
+ _builder.append("(");
+ VarDecl _data_7 = m.getData();
+ RefableType _refType_4 = _data_7.getRefType();
+ DataType _type_3 = _refType_4.getType();
+ String _paramList = this._dataClassGen.paramList(((DataClass) _type_3));
+ _builder.append(_paramList, " ");
+ _builder.append("));");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/StateMachineGen.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/StateMachineGen.java
index 8c76867d7..bb397d606 100644
--- a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/StateMachineGen.java
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/StateMachineGen.java
@@ -1,81 +1,81 @@
-package org.eclipse.etrice.generator.java.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.List;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.generator.generic.GenericStateMachineGenerator;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-
-@Singleton
-@SuppressWarnings("all")
-public class StateMachineGen extends GenericStateMachineGenerator {
- @Inject
- private RoomExtensions _roomExtensions;
-
- public CharSequence genExtra(final ExpandedActorClass xpac) {
- CharSequence _xblockexpression = null;
- {
- final ActorClass ac = xpac.getActorClass();
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("// state names");
- _builder.newLine();
- _builder.append("protected static final String stateStrings[] = {\"<no state>\",\"<top>\",");
- {
- List<State> _allBaseStatesLeavesLast = this._roomExtensions.getAllBaseStatesLeavesLast(ac);
- boolean _hasElements = false;
- for(final State state : _allBaseStatesLeavesLast) {
- if (!_hasElements) {
- _hasElements = true;
- } else {
- _builder.appendImmediate(",", "");
- }
- _builder.append("\"");
- String _statePathName = this._roomExtensions.getStatePathName(state);
- _builder.append(_statePathName, "");
- _builder.append("\"");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("};");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("// history");
- _builder.newLine();
- _builder.append("protected int history[] = {NO_STATE,NO_STATE");
- {
- List<State> _allBaseStates = this._roomExtensions.getAllBaseStates(ac);
- for(final State state_1 : _allBaseStates) {
- _builder.append(",NO_STATE");
- }
- }
- _builder.append("};");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("private void setState(int new_state) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("DebuggingService.getInstance().addActorState(this,stateStrings[new_state]);");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("if (stateStrings[new_state]!=\"Idle\") {");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("System.out.println(getInstancePath() + \" -> \" + stateStrings[new_state]);");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("this.state = new_state;");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-}
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.List;
+import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.etrice.generator.generic.GenericStateMachineGenerator;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+
+@Singleton
+@SuppressWarnings("all")
+public class StateMachineGen extends GenericStateMachineGenerator {
+ @Inject
+ private RoomExtensions _roomExtensions;
+
+ public CharSequence genExtra(final ExpandedActorClass xpac) {
+ CharSequence _xblockexpression = null;
+ {
+ final ActorClass ac = xpac.getActorClass();
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("// state names");
+ _builder.newLine();
+ _builder.append("protected static final String stateStrings[] = {\"<no state>\",\"<top>\",");
+ {
+ List<State> _allBaseStatesLeavesLast = this._roomExtensions.getAllBaseStatesLeavesLast(ac);
+ boolean _hasElements = false;
+ for(final State state : _allBaseStatesLeavesLast) {
+ if (!_hasElements) {
+ _hasElements = true;
+ } else {
+ _builder.appendImmediate(",", "");
+ }
+ _builder.append("\"");
+ String _statePathName = this._roomExtensions.getStatePathName(state);
+ _builder.append(_statePathName, "");
+ _builder.append("\"");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("};");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("// history");
+ _builder.newLine();
+ _builder.append("protected int history[] = {NO_STATE,NO_STATE");
+ {
+ List<State> _allBaseStates = this._roomExtensions.getAllBaseStates(ac);
+ for(final State state_1 : _allBaseStates) {
+ _builder.append(",NO_STATE");
+ }
+ }
+ _builder.append("};");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("private void setState(int new_state) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("DebuggingService.getInstance().addActorState(this,stateStrings[new_state]);");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("if (stateStrings[new_state]!=\"Idle\") {");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("System.out.println(getInstancePath() + \" -> \" + stateStrings[new_state]);");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("this.state = new_state;");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.java
index 062f0cc4f..8e14ef1bd 100644
--- a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.java
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemClassGen.java
@@ -1,910 +1,817 @@
-package org.eclipse.etrice.generator.java.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.config.AttrInstanceConfig;
-import org.eclipse.etrice.core.config.LiteralArray;
-import org.eclipse.etrice.core.config.PortInstanceConfig;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.DataType;
-import org.eclipse.etrice.core.room.InterfaceItem;
-import org.eclipse.etrice.core.room.LogicalThread;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.SubSystemClass;
-import org.eclipse.etrice.generator.base.Indexed;
-import org.eclipse.etrice.generator.generic.ConfigExtension;
-import org.eclipse.etrice.generator.generic.ProcedureHelpers;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.etrice.generator.generic.TypeHelpers;
-import org.eclipse.etrice.generator.java.gen.JavaExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-
-@Singleton
-@SuppressWarnings("all")
-public class SubSystemClassGen {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private JavaExtensions _javaExtensions;
-
- @Inject
- private RoomExtensions _roomExtensions;
-
- @Inject
- private ConfigExtension _configExtension;
-
- @Inject
- private ProcedureHelpers _procedureHelpers;
-
- @Inject
- private TypeHelpers _typeHelpers;
-
- @Inject
- private ILogger logger;
-
- public void doGenerate(final Root root) {
- EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
- for (final SubSystemInstance ssi : _subSystemInstances) {
- {
- SubSystemClass _subSystemClass = ssi.getSubSystemClass();
- String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(_subSystemClass);
- SubSystemClass _subSystemClass_1 = ssi.getSubSystemClass();
- String _path = this._roomExtensions.getPath(_subSystemClass_1);
- String path = (_generationTargetPath + _path);
- SubSystemClass _subSystemClass_2 = ssi.getSubSystemClass();
- String file = this._javaExtensions.getJavaFileName(_subSystemClass_2);
- String _plus = ("generating SubSystemClass implementation: \'" + file);
- String _plus_1 = (_plus + "\' in \'");
- String _plus_2 = (_plus_1 + path);
- String _plus_3 = (_plus_2 + "\'");
- this.logger.logInfo(_plus_3);
- this.fileAccess.setOutputPath(path);
- SubSystemClass _subSystemClass_3 = ssi.getSubSystemClass();
- CharSequence _generate = this.generate(root, ssi, _subSystemClass_3);
- this.fileAccess.generateFile(file, _generate);
- }
- }
- }
-
- public CharSequence generate(final Root root, final SubSystemInstance comp, final SubSystemClass cc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("package ");
- String _package = this._roomExtensions.getPackage(cc);
- _builder.append(_package, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.MessageService;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.RTServices;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.Address;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.IRTObject;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.messaging.RTSystemServicesProtocol.*;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;");
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;");
- _builder.newLine();
- _builder.newLine();
- EList<RoomModel> models = root.getReferencedModels(cc);
- _builder.newLineIfNotEmpty();
- {
- for(final RoomModel model : models) {
- _builder.append("import ");
- String _name = model.getName();
- _builder.append(_name, "");
- _builder.append(".*;");
- }
- }
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.newLine();
- CharSequence _userCode = this._procedureHelpers.userCode(cc, 1);
- _builder.append(_userCode, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("public class ");
- String _name_1 = comp.getName();
- _builder.append(_name_1, "");
- _builder.append(" extends SubSystemClassBase{");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- CharSequence _userCode_1 = this._procedureHelpers.userCode(cc, 2);
- _builder.append(_userCode_1, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public ");
- String _name_2 = comp.getName();
- _builder.append(_name_2, " ");
- _builder.append("(IRTObject parent, String name) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("super(parent, name);");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("@Override");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data){");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("@Override\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public void instantiateMessageServices(){");
- _builder.newLine();
- _builder.append("\t");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("RTServices.getInstance().getMsgSvcCtrl().addMsgSvc(new MessageService(this, new Address(0, 0, 0),\"MessageService_Main\"));");
- _builder.newLine();
- {
- EList<LogicalThread> _threads = cc.getThreads();
- for(final LogicalThread thread : _threads) {
- _builder.append("\t\t");
- _builder.append("RTServices.getInstance().getMsgSvcCtrl().addMsgSvc(new MessageService(this, new Address(0, ");
- EList<LogicalThread> _threads_1 = cc.getThreads();
- int _indexOf = _threads_1.indexOf(thread);
- int _plus = (_indexOf + 1);
- _builder.append(_plus, " ");
- _builder.append(", 0),\"MessageService_");
- String _name_3 = thread.getName();
- _builder.append(_name_3, " ");
- _builder.append("\", ");
- int _prio = thread.getPrio();
- _builder.append(_prio, " ");
- _builder.append("));");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("@Override");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public void instantiateActors(){");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// all addresses");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// Addresses for the Subsystem Systemport");
- _builder.newLine();
- {
- EList<ActorInstance> _allContainedInstances = comp.getAllContainedInstances();
- int _maxObjId = comp.getMaxObjId();
- Iterable<Indexed<ActorInstance>> _indexed = Indexed.<ActorInstance>indexed(_allContainedInstances, _maxObjId);
- for(final Indexed<ActorInstance> ai : _indexed) {
- _builder.append("\t\t");
- _builder.append("Address addr_item_SystemPort_");
- EList<ActorInstance> _allContainedInstances_1 = comp.getAllContainedInstances();
- ActorInstance _value = ai.getValue();
- int _indexOf_1 = _allContainedInstances_1.indexOf(_value);
- _builder.append(_indexOf_1, " ");
- _builder.append(" = new Address(0,0,");
- int _index1 = ai.getIndex1();
- _builder.append(_index1, " ");
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t");
- _builder.newLine();
- {
- EList<ActorInstance> _allContainedInstances_2 = comp.getAllContainedInstances();
- for(final ActorInstance ai_1 : _allContainedInstances_2) {
- _builder.append("\t\t");
- _builder.append("// actor instance ");
- String _path = ai_1.getPath();
- _builder.append(_path, " ");
- _builder.append(" itself => Systemport Address");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("// TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("Address addr_item_");
- String _path_1 = ai_1.getPath();
- String _pathName = this._roomExtensions.getPathName(_path_1);
- _builder.append(_pathName, " ");
- _builder.append(" = new Address(0,");
- int _threadId = ai_1.getThreadId();
- _builder.append(_threadId, " ");
- _builder.append(",");
- int _objId = ai_1.getObjId();
- _builder.append(_objId, " ");
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("// interface items of ");
- String _path_2 = ai_1.getPath();
- _builder.append(_path_2, " ");
- _builder.newLineIfNotEmpty();
- {
- EList<InterfaceItemInstance> _orderedIfItemInstances = ai_1.getOrderedIfItemInstances();
- for(final InterfaceItemInstance pi : _orderedIfItemInstances) {
- {
- boolean _isReplicated = pi.isReplicated();
- if (_isReplicated) {
- {
- EList<InterfaceItemInstance> _peers = pi.getPeers();
- for(final InterfaceItemInstance peer : _peers) {
- _builder.append("\t\t");
- EList<InterfaceItemInstance> _peers_1 = pi.getPeers();
- int i = _peers_1.indexOf(peer);
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("Address addr_item_");
- String _path_3 = pi.getPath();
- String _pathName_1 = this._roomExtensions.getPathName(_path_3);
- _builder.append(_pathName_1, " ");
- _builder.append("_");
- _builder.append(i, " ");
- _builder.append(" = new Address(0,");
- int _threadId_1 = pi.getThreadId();
- _builder.append(_threadId_1, " ");
- _builder.append(",");
- int _objId_1 = pi.getObjId();
- int _plus_1 = (_objId_1 + i);
- _builder.append(_plus_1, " ");
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- }
- }
- } else {
- _builder.append("\t\t");
- _builder.append("Address addr_item_");
- String _path_4 = pi.getPath();
- String _pathName_2 = this._roomExtensions.getPathName(_path_4);
- _builder.append(_pathName_2, " ");
- _builder.append(" = new Address(0,");
- int _threadId_2 = ai_1.getThreadId();
- _builder.append(_threadId_2, " ");
- _builder.append(",");
- int _objId_2 = pi.getObjId();
- _builder.append(_objId_2, " ");
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- }
- }
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// instantiate all actor instances");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("instances = new ActorClassBase[");
- EList<ActorInstance> _allContainedInstances_3 = comp.getAllContainedInstances();
- int _size = _allContainedInstances_3.size();
- _builder.append(_size, " ");
- _builder.append("];");
- _builder.newLineIfNotEmpty();
- {
- EList<ActorInstance> _allContainedInstances_4 = comp.getAllContainedInstances();
- for(final ActorInstance ai_2 : _allContainedInstances_4) {
- _builder.append("\t\t");
- _builder.append("instances[");
- EList<ActorInstance> _allContainedInstances_5 = comp.getAllContainedInstances();
- int _indexOf_2 = _allContainedInstances_5.indexOf(ai_2);
- _builder.append(_indexOf_2, " ");
- _builder.append("] = new ");
- ActorClass _actorClass = ai_2.getActorClass();
- String _name_4 = _actorClass.getName();
- _builder.append(_name_4, " ");
- _builder.append("(");
- _builder.newLineIfNotEmpty();
- {
- EObject _eContainer = ai_2.eContainer();
- if ((_eContainer instanceof SubSystemInstance)) {
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("this,");
- _builder.newLine();
- } else {
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("instances[");
- EList<ActorInstance> _allContainedInstances_6 = comp.getAllContainedInstances();
- EObject _eContainer_1 = ai_2.eContainer();
- int _indexOf_3 = _allContainedInstances_6.indexOf(_eContainer_1);
- _builder.append(_indexOf_3, " ");
- _builder.append("],");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("\"");
- String _name_5 = ai_2.getName();
- _builder.append(_name_5, " ");
- _builder.append("\",");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("// own interface item addresses");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("new Address[][] {{addr_item_");
- String _path_5 = ai_2.getPath();
- String _pathName_3 = this._roomExtensions.getPathName(_path_5);
- _builder.append(_pathName_3, " ");
- _builder.append("}");
- {
- EList<InterfaceItemInstance> _orderedIfItemInstances_1 = ai_2.getOrderedIfItemInstances();
- boolean _isEmpty = _orderedIfItemInstances_1.isEmpty();
- boolean _not = (!_isEmpty);
- if (_not) {
- _builder.append(",");
- }
- }
- _builder.newLineIfNotEmpty();
- {
- EList<InterfaceItemInstance> _orderedIfItemInstances_2 = ai_2.getOrderedIfItemInstances();
- boolean _hasElements = false;
- for(final InterfaceItemInstance pi_1 : _orderedIfItemInstances_2) {
- if (!_hasElements) {
- _hasElements = true;
- } else {
- _builder.appendImmediate(",", " ");
- }
- {
- boolean _isReplicated_1 = pi_1.isReplicated();
- if (_isReplicated_1) {
- {
- EList<InterfaceItemInstance> _peers_2 = pi_1.getPeers();
- boolean _isEmpty_1 = _peers_2.isEmpty();
- if (_isEmpty_1) {
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("null");
- _builder.newLine();
- } else {
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("{");
- _builder.newLine();
- {
- EList<InterfaceItemInstance> _peers_3 = pi_1.getPeers();
- boolean _hasElements_1 = false;
- for(final InterfaceItemInstance peer_1 : _peers_3) {
- if (!_hasElements_1) {
- _hasElements_1 = true;
- } else {
- _builder.appendImmediate(",", " ");
- }
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("addr_item_");
- String _path_6 = pi_1.getPath();
- String _pathName_4 = this._roomExtensions.getPathName(_path_6);
- _builder.append(_pathName_4, " ");
- _builder.append("_");
- EList<InterfaceItemInstance> _peers_4 = pi_1.getPeers();
- int _indexOf_4 = _peers_4.indexOf(peer_1);
- _builder.append(_indexOf_4, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- } else {
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("addr_item_");
- String _path_7 = pi_1.getPath();
- String _pathName_5 = this._roomExtensions.getPathName(_path_7);
- _builder.append(_pathName_5, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("},");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("// peer interface item addresses");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("new Address[][] {{addr_item_SystemPort_");
- EList<ActorInstance> _allContainedInstances_7 = comp.getAllContainedInstances();
- int _indexOf_5 = _allContainedInstances_7.indexOf(ai_2);
- _builder.append(_indexOf_5, " ");
- _builder.append("}");
- {
- EList<InterfaceItemInstance> _orderedIfItemInstances_3 = ai_2.getOrderedIfItemInstances();
- boolean _isEmpty_2 = _orderedIfItemInstances_3.isEmpty();
- boolean _not_1 = (!_isEmpty_2);
- if (_not_1) {
- _builder.append(",");
- }
- }
- _builder.newLineIfNotEmpty();
- {
- EList<InterfaceItemInstance> _orderedIfItemInstances_4 = ai_2.getOrderedIfItemInstances();
- boolean _hasElements_2 = false;
- for(final InterfaceItemInstance pi_2 : _orderedIfItemInstances_4) {
- if (!_hasElements_2) {
- _hasElements_2 = true;
- } else {
- _builder.appendImmediate(",", " ");
- }
- {
- boolean _and = false;
- boolean _isReplicated_2 = pi_2.isReplicated();
- if (!_isReplicated_2) {
- _and = false;
- } else {
- EList<InterfaceItemInstance> _peers_5 = pi_2.getPeers();
- boolean _isEmpty_3 = _peers_5.isEmpty();
- _and = (_isReplicated_2 && _isEmpty_3);
- }
- if (_and) {
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("null");
- _builder.newLine();
- } else {
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("{");
- _builder.newLine();
- {
- EList<InterfaceItemInstance> _peers_6 = pi_2.getPeers();
- boolean _isEmpty_4 = _peers_6.isEmpty();
- if (_isEmpty_4) {
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("null");
- _builder.newLine();
- } else {
- {
- EList<InterfaceItemInstance> _peers_7 = pi_2.getPeers();
- boolean _hasElements_3 = false;
- for(final InterfaceItemInstance pp : _peers_7) {
- if (!_hasElements_3) {
- _hasElements_3 = true;
- } else {
- _builder.appendImmediate(",", " ");
- }
- {
- boolean _isReplicated_3 = pp.isReplicated();
- if (_isReplicated_3) {
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("addr_item_");
- String _path_8 = pp.getPath();
- String _pathName_6 = this._roomExtensions.getPathName(_path_8);
- _builder.append(_pathName_6, " ");
- _builder.append("_");
- EList<InterfaceItemInstance> _peers_8 = pp.getPeers();
- int _indexOf_6 = _peers_8.indexOf(pi_2);
- _builder.append(_indexOf_6, " ");
- _builder.newLineIfNotEmpty();
- } else {
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("addr_item_");
- String _path_9 = pp.getPath();
- String _pathName_7 = this._roomExtensions.getPathName(_path_9);
- _builder.append(_pathName_7, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- }
- }
- _builder.append("\t\t");
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("); ");
- _builder.newLine();
- }
- }
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// apply instance attribute configurations");
- _builder.newLine();
- {
- EList<ActorInstance> _allContainedInstances_8 = comp.getAllContainedInstances();
- for(final ActorInstance ai_3 : _allContainedInstances_8) {
- _builder.append("\t\t");
- List<AttrInstanceConfig> attrConfigs = this._configExtension.getConfigAttributes(ai_3);
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- List<PortInstanceConfig> portConfigs = this._configExtension.getConfigPorts(ai_3);
- _builder.newLineIfNotEmpty();
- {
- boolean _or = false;
- boolean _isEmpty_5 = attrConfigs.isEmpty();
- boolean _not_2 = (!_isEmpty_5);
- if (_not_2) {
- _or = true;
- } else {
- boolean _isEmpty_6 = portConfigs.isEmpty();
- boolean _not_3 = (!_isEmpty_6);
- _or = (_not_2 || _not_3);
- }
- if (_or) {
- _builder.append("\t\t");
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- String aiName = "inst";
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- ActorClass _actorClass_1 = ai_3.getActorClass();
- String _name_6 = _actorClass_1.getName();
- _builder.append(_name_6, " ");
- _builder.append(" ");
- _builder.append(aiName, " ");
- _builder.append(" = (");
- ActorClass _actorClass_2 = ai_3.getActorClass();
- String _name_7 = _actorClass_2.getName();
- _builder.append(_name_7, " ");
- _builder.append(") instances[");
- EList<ActorInstance> _allContainedInstances_9 = comp.getAllContainedInstances();
- int _indexOf_7 = _allContainedInstances_9.indexOf(ai_3);
- _builder.append(_indexOf_7, " ");
- _builder.append("];");
- _builder.newLineIfNotEmpty();
- {
- for(final AttrInstanceConfig attrConfig : attrConfigs) {
- _builder.append("\t\t");
- _builder.append("\t");
- Attribute a = attrConfig.getAttribute();
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- LiteralArray _value_1 = attrConfig.getValue();
- String value = this._configExtension.stringValue(_value_1, a);
- _builder.newLineIfNotEmpty();
- {
- boolean _isArray = this._configExtension.isArray(a);
- boolean _not_4 = (!_isArray);
- if (_not_4) {
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append(aiName, " ");
- _builder.append(".");
- String _name_8 = a.getName();
- ActorClass _actorClass_3 = ai_3.getActorClass();
- String _name_9 = _actorClass_3.getName();
- CharSequence _invokeSetter = this._procedureHelpers.invokeSetter(_name_8, _name_9, value);
- _builder.append(_invokeSetter, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- boolean _startsWith = value.startsWith("{");
- if (_startsWith) {
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append(aiName, " ");
- _builder.append(".");
- String _name_10 = a.getName();
- ActorClass _actorClass_4 = ai_3.getActorClass();
- String _name_11 = _actorClass_4.getName();
- RefableType _refType = a.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- String _plus_2 = ("new " + _typeName);
- String _plus_3 = (_plus_2 + "[]");
- String _plus_4 = (_plus_3 + value);
- CharSequence _invokeSetter_1 = this._procedureHelpers.invokeSetter(_name_10, _name_11, _plus_4);
- _builder.append(_invokeSetter_1, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("\t");
- RefableType _refType_1 = a.getRefType();
- DataType _type_1 = _refType_1.getType();
- String _typeName_1 = this._typeHelpers.typeName(_type_1);
- _builder.append(_typeName_1, " ");
- _builder.append("[] array = ");
- _builder.append(aiName, " ");
- _builder.append(".");
- String _name_12 = a.getName();
- ActorClass _actorClass_5 = ai_3.getActorClass();
- String _name_13 = _actorClass_5.getName();
- CharSequence _invokeGetter = this._procedureHelpers.invokeGetter(_name_12, _name_13);
- _builder.append(_invokeGetter, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("for (int i=0;i<");
- int _size_1 = a.getSize();
- _builder.append(_size_1, " ");
- _builder.append(";i++){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("\t\t");
- _builder.append("array[i] = ");
- _builder.append(value, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- }
- {
- for(final PortInstanceConfig portConfig : portConfigs) {
- _builder.append("\t\t");
- _builder.append("\t");
- InterfaceItem item = portConfig.getItem();
- _builder.newLineIfNotEmpty();
- {
- EList<AttrInstanceConfig> _attributes = portConfig.getAttributes();
- for(final AttrInstanceConfig attrConfig_1 : _attributes) {
- _builder.append("\t\t");
- _builder.append("\t");
- Attribute a_1 = attrConfig_1.getAttribute();
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- LiteralArray _value_2 = attrConfig_1.getValue();
- String value_1 = this._configExtension.stringValue(_value_2, a_1);
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- String _plus_5 = (aiName + ".");
- String _name_14 = item.getName();
- String _portClassName = this._roomExtensions.getPortClassName(item);
- CharSequence _invokeGetter_1 = this._procedureHelpers.invokeGetter(_name_14, _portClassName);
- String refToItem = (_plus_5 + _invokeGetter_1);
- _builder.newLineIfNotEmpty();
- {
- boolean _isArray_1 = this._configExtension.isArray(a_1);
- boolean _not_5 = (!_isArray_1);
- if (_not_5) {
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append(refToItem, " ");
- _builder.append(".");
- String _name_15 = a_1.getName();
- String _portClassName_1 = this._roomExtensions.getPortClassName(item);
- CharSequence _invokeSetter_2 = this._procedureHelpers.invokeSetter(_name_15, _portClassName_1, value_1);
- _builder.append(_invokeSetter_2, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- boolean _startsWith_1 = value_1.startsWith("{");
- if (_startsWith_1) {
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append(refToItem, " ");
- _builder.append(".");
- String _name_16 = a_1.getName();
- ActorClass _actorClass_6 = ai_3.getActorClass();
- String _name_17 = _actorClass_6.getName();
- RefableType _refType_2 = a_1.getRefType();
- DataType _type_2 = _refType_2.getType();
- String _typeName_2 = this._typeHelpers.typeName(_type_2);
- String _plus_6 = ("new " + _typeName_2);
- String _plus_7 = (_plus_6 + "[]");
- String _plus_8 = (_plus_7 + value_1);
- CharSequence _invokeSetter_3 = this._procedureHelpers.invokeSetter(_name_16, _name_17, _plus_8);
- _builder.append(_invokeSetter_3, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("\t");
- RefableType _refType_3 = a_1.getRefType();
- DataType _type_3 = _refType_3.getType();
- String _typeName_3 = this._typeHelpers.typeName(_type_3);
- _builder.append(_typeName_3, " ");
- _builder.append("[] array = ");
- _builder.append(refToItem, " ");
- _builder.append(".");
- String _name_18 = a_1.getName();
- ActorClass _actorClass_7 = ai_3.getActorClass();
- String _name_19 = _actorClass_7.getName();
- CharSequence _invokeGetter_2 = this._procedureHelpers.invokeGetter(_name_18, _name_19);
- _builder.append(_invokeGetter_2, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("for (int i=0;i<");
- int _size_2 = a_1.getSize();
- _builder.append(_size_2, " ");
- _builder.append(";i++){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("\t\t");
- _builder.append("array[i] = ");
- _builder.append(value_1, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- }
- }
- }
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// create the subsystem system port\t");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("RTSystemPort = new RTSystemServicesProtocolConjPortRepl(this, \"RTSystemPort\",");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("0, //local ID");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("// own addresses");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("new Address[]{");
- _builder.newLine();
- {
- EList<ActorInstance> _allContainedInstances_10 = comp.getAllContainedInstances();
- boolean _hasElements_4 = false;
- for(final ActorInstance ai_4 : _allContainedInstances_10) {
- if (!_hasElements_4) {
- _hasElements_4 = true;
- } else {
- _builder.appendImmediate(",", " ");
- }
- _builder.append("\t\t\t\t\t");
- _builder.append("addr_item_SystemPort_");
- EList<ActorInstance> _allContainedInstances_11 = comp.getAllContainedInstances();
- int _indexOf_8 = _allContainedInstances_11.indexOf(ai_4);
- _builder.append(_indexOf_8, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t\t\t");
- _builder.append("},");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("// peer addresses");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("new Address[]{");
- _builder.newLine();
- {
- EList<ActorInstance> _allContainedInstances_12 = comp.getAllContainedInstances();
- boolean _hasElements_5 = false;
- for(final ActorInstance ai_5 : _allContainedInstances_12) {
- if (!_hasElements_5) {
- _hasElements_5 = true;
- } else {
- _builder.appendImmediate(",", " ");
- }
- _builder.append("\t\t\t\t\t");
- _builder.append("addr_item_");
- String _path_10 = ai_5.getPath();
- String _pathName_8 = this._roomExtensions.getPathName(_path_10);
- _builder.append(_pathName_8, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t\t\t");
- _builder.append("});");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("};");
- _builder.newLine();
- return _builder;
- }
-}
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.core.config.AttrInstanceConfig;
+import org.eclipse.etrice.core.config.PortInstanceConfig;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance;
+import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.InterfaceItem;
+import org.eclipse.etrice.core.room.LogicalThread;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.core.room.SubSystemClass;
+import org.eclipse.etrice.generator.base.Indexed;
+import org.eclipse.etrice.generator.generic.ConfigExtension;
+import org.eclipse.etrice.generator.generic.ProcedureHelpers;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.etrice.generator.generic.TypeHelpers;
+import org.eclipse.etrice.generator.java.gen.ConfigGenAddon;
+import org.eclipse.etrice.generator.java.gen.JavaExtensions;
+import org.eclipse.etrice.generator.java.gen.VariableServiceGen;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class SubSystemClassGen {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private JavaExtensions _javaExtensions;
+
+ @Inject
+ private RoomExtensions _roomExtensions;
+
+ @Inject
+ private ConfigExtension _configExtension;
+
+ @Inject
+ private ConfigGenAddon configAddon;
+
+ @Inject
+ private ProcedureHelpers _procedureHelpers;
+
+ @Inject
+ private TypeHelpers _typeHelpers;
+
+ @Inject
+ private VariableServiceGen varService;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root) {
+ EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
+ for (final SubSystemInstance ssi : _subSystemInstances) {
+ {
+ SubSystemClass _subSystemClass = ssi.getSubSystemClass();
+ String _generationTargetPath = this._roomExtensions.getGenerationTargetPath(_subSystemClass);
+ SubSystemClass _subSystemClass_1 = ssi.getSubSystemClass();
+ String _path = this._roomExtensions.getPath(_subSystemClass_1);
+ String path = (_generationTargetPath + _path);
+ SubSystemClass _subSystemClass_2 = ssi.getSubSystemClass();
+ String file = this._javaExtensions.getJavaFileName(_subSystemClass_2);
+ String _plus = ("generating SubSystemClass implementation: \'" + file);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ this.fileAccess.setOutputPath(path);
+ SubSystemClass _subSystemClass_3 = ssi.getSubSystemClass();
+ CharSequence _generate = this.generate(root, ssi, _subSystemClass_3);
+ this.fileAccess.generateFile(file, _generate);
+ SubSystemClass _subSystemClass_4 = ssi.getSubSystemClass();
+ boolean _hasVariableService = this._configExtension.hasVariableService(_subSystemClass_4);
+ if (_hasVariableService) {
+ this.varService.doGenerate(root, ssi);
+ }
+ }
+ }
+ }
+
+ public CharSequence generate(final Root root, final SubSystemInstance comp, final SubSystemClass cc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("package ");
+ String _package = this._roomExtensions.getPackage(cc);
+ _builder.append(_package, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ boolean _hasVariableService = this._configExtension.hasVariableService(cc);
+ if (_hasVariableService) {
+ _builder.append("import org.eclipse.etrice.runtime.java.config.VariableService;");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.MessageService;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.RTServices;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.Address;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.IRTObject;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.messaging.RTSystemServicesProtocol.*;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;");
+ _builder.newLine();
+ _builder.newLine();
+ EList<RoomModel> models = root.getReferencedModels(cc);
+ _builder.newLineIfNotEmpty();
+ {
+ for(final RoomModel model : models) {
+ _builder.append("import ");
+ String _name = model.getName();
+ _builder.append(_name, "");
+ _builder.append(".*;");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.newLine();
+ CharSequence _userCode = this._procedureHelpers.userCode(cc, 1);
+ _builder.append(_userCode, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("public class ");
+ String _name_1 = comp.getName();
+ _builder.append(_name_1, "");
+ _builder.append(" extends SubSystemClassBase{");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ CharSequence _userCode_1 = this._procedureHelpers.userCode(cc, 2);
+ _builder.append(_userCode_1, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ String _name_2 = comp.getName();
+ _builder.append(_name_2, " ");
+ _builder.append("(IRTObject parent, String name) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("super(parent, name);");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data){");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void instantiateMessageServices(){");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("RTServices.getInstance().getMsgSvcCtrl().addMsgSvc(new MessageService(this, new Address(0, 0, 0),\"MessageService_Main\"));");
+ _builder.newLine();
+ {
+ EList<LogicalThread> _threads = cc.getThreads();
+ for(final LogicalThread thread : _threads) {
+ _builder.append("\t\t");
+ _builder.append("RTServices.getInstance().getMsgSvcCtrl().addMsgSvc(new MessageService(this, new Address(0, ");
+ EList<LogicalThread> _threads_1 = cc.getThreads();
+ int _indexOf = _threads_1.indexOf(thread);
+ int _plus = (_indexOf + 1);
+ _builder.append(_plus, " ");
+ _builder.append(", 0),\"MessageService_");
+ String _name_3 = thread.getName();
+ _builder.append(_name_3, " ");
+ _builder.append("\", ");
+ int _prio = thread.getPrio();
+ _builder.append(_prio, " ");
+ _builder.append("));");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void instantiateActors(){");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// all addresses");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// Addresses for the Subsystem Systemport");
+ _builder.newLine();
+ {
+ EList<ActorInstance> _allContainedInstances = comp.getAllContainedInstances();
+ int _maxObjId = comp.getMaxObjId();
+ Iterable<Indexed<ActorInstance>> _indexed = Indexed.<ActorInstance>indexed(_allContainedInstances, _maxObjId);
+ for(final Indexed<ActorInstance> ai : _indexed) {
+ _builder.append("\t\t");
+ _builder.append("Address addr_item_SystemPort_");
+ EList<ActorInstance> _allContainedInstances_1 = comp.getAllContainedInstances();
+ ActorInstance _value = ai.getValue();
+ int _indexOf_1 = _allContainedInstances_1.indexOf(_value);
+ _builder.append(_indexOf_1, " ");
+ _builder.append(" = new Address(0,0,");
+ int _index1 = ai.getIndex1();
+ _builder.append(_index1, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.newLine();
+ {
+ EList<ActorInstance> _allContainedInstances_2 = comp.getAllContainedInstances();
+ for(final ActorInstance ai_1 : _allContainedInstances_2) {
+ _builder.append("\t\t");
+ _builder.append("// actor instance ");
+ String _path = ai_1.getPath();
+ _builder.append(_path, " ");
+ _builder.append(" itself => Systemport Address");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("// TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("Address addr_item_");
+ String _path_1 = ai_1.getPath();
+ String _pathName = this._roomExtensions.getPathName(_path_1);
+ _builder.append(_pathName, " ");
+ _builder.append(" = new Address(0,");
+ int _threadId = ai_1.getThreadId();
+ _builder.append(_threadId, " ");
+ _builder.append(",");
+ int _objId = ai_1.getObjId();
+ _builder.append(_objId, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("// interface items of ");
+ String _path_2 = ai_1.getPath();
+ _builder.append(_path_2, " ");
+ _builder.newLineIfNotEmpty();
+ {
+ EList<InterfaceItemInstance> _orderedIfItemInstances = ai_1.getOrderedIfItemInstances();
+ for(final InterfaceItemInstance pi : _orderedIfItemInstances) {
+ {
+ boolean _isReplicated = pi.isReplicated();
+ if (_isReplicated) {
+ {
+ EList<InterfaceItemInstance> _peers = pi.getPeers();
+ for(final InterfaceItemInstance peer : _peers) {
+ _builder.append("\t\t");
+ EList<InterfaceItemInstance> _peers_1 = pi.getPeers();
+ int i = _peers_1.indexOf(peer);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("Address addr_item_");
+ String _path_3 = pi.getPath();
+ String _pathName_1 = this._roomExtensions.getPathName(_path_3);
+ _builder.append(_pathName_1, " ");
+ _builder.append("_");
+ _builder.append(i, " ");
+ _builder.append(" = new Address(0,");
+ int _threadId_1 = pi.getThreadId();
+ _builder.append(_threadId_1, " ");
+ _builder.append(",");
+ int _objId_1 = pi.getObjId();
+ int _plus_1 = (_objId_1 + i);
+ _builder.append(_plus_1, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ } else {
+ _builder.append("\t\t");
+ _builder.append("Address addr_item_");
+ String _path_4 = pi.getPath();
+ String _pathName_2 = this._roomExtensions.getPathName(_path_4);
+ _builder.append(_pathName_2, " ");
+ _builder.append(" = new Address(0,");
+ int _threadId_2 = ai_1.getThreadId();
+ _builder.append(_threadId_2, " ");
+ _builder.append(",");
+ int _objId_2 = pi.getObjId();
+ _builder.append(_objId_2, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// instantiate all actor instances");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("instances = new ActorClassBase[");
+ EList<ActorInstance> _allContainedInstances_3 = comp.getAllContainedInstances();
+ int _size = _allContainedInstances_3.size();
+ _builder.append(_size, " ");
+ _builder.append("];");
+ _builder.newLineIfNotEmpty();
+ {
+ EList<ActorInstance> _allContainedInstances_4 = comp.getAllContainedInstances();
+ for(final ActorInstance ai_2 : _allContainedInstances_4) {
+ _builder.append("\t\t");
+ _builder.append("instances[");
+ EList<ActorInstance> _allContainedInstances_5 = comp.getAllContainedInstances();
+ int _indexOf_2 = _allContainedInstances_5.indexOf(ai_2);
+ _builder.append(_indexOf_2, " ");
+ _builder.append("] = new ");
+ ActorClass _actorClass = ai_2.getActorClass();
+ String _name_4 = _actorClass.getName();
+ _builder.append(_name_4, " ");
+ _builder.append("(");
+ _builder.newLineIfNotEmpty();
+ {
+ EObject _eContainer = ai_2.eContainer();
+ if ((_eContainer instanceof SubSystemInstance)) {
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("this,");
+ _builder.newLine();
+ } else {
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("instances[");
+ EList<ActorInstance> _allContainedInstances_6 = comp.getAllContainedInstances();
+ EObject _eContainer_1 = ai_2.eContainer();
+ int _indexOf_3 = _allContainedInstances_6.indexOf(_eContainer_1);
+ _builder.append(_indexOf_3, " ");
+ _builder.append("],");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("\"");
+ String _name_5 = ai_2.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("\",");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("// own interface item addresses");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("new Address[][] {{addr_item_");
+ String _path_5 = ai_2.getPath();
+ String _pathName_3 = this._roomExtensions.getPathName(_path_5);
+ _builder.append(_pathName_3, " ");
+ _builder.append("}");
+ {
+ EList<InterfaceItemInstance> _orderedIfItemInstances_1 = ai_2.getOrderedIfItemInstances();
+ boolean _isEmpty = _orderedIfItemInstances_1.isEmpty();
+ boolean _not = (!_isEmpty);
+ if (_not) {
+ _builder.append(",");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ {
+ EList<InterfaceItemInstance> _orderedIfItemInstances_2 = ai_2.getOrderedIfItemInstances();
+ boolean _hasElements = false;
+ for(final InterfaceItemInstance pi_1 : _orderedIfItemInstances_2) {
+ if (!_hasElements) {
+ _hasElements = true;
+ } else {
+ _builder.appendImmediate(",", " ");
+ }
+ {
+ boolean _isReplicated_1 = pi_1.isReplicated();
+ if (_isReplicated_1) {
+ {
+ EList<InterfaceItemInstance> _peers_2 = pi_1.getPeers();
+ boolean _isEmpty_1 = _peers_2.isEmpty();
+ if (_isEmpty_1) {
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("null");
+ _builder.newLine();
+ } else {
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("{");
+ _builder.newLine();
+ {
+ EList<InterfaceItemInstance> _peers_3 = pi_1.getPeers();
+ boolean _hasElements_1 = false;
+ for(final InterfaceItemInstance peer_1 : _peers_3) {
+ if (!_hasElements_1) {
+ _hasElements_1 = true;
+ } else {
+ _builder.appendImmediate(",", " ");
+ }
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("addr_item_");
+ String _path_6 = pi_1.getPath();
+ String _pathName_4 = this._roomExtensions.getPathName(_path_6);
+ _builder.append(_pathName_4, " ");
+ _builder.append("_");
+ EList<InterfaceItemInstance> _peers_4 = pi_1.getPeers();
+ int _indexOf_4 = _peers_4.indexOf(peer_1);
+ _builder.append(_indexOf_4, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ } else {
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("{");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("addr_item_");
+ String _path_7 = pi_1.getPath();
+ String _pathName_5 = this._roomExtensions.getPathName(_path_7);
+ _builder.append(_pathName_5, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("},");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("// peer interface item addresses");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("new Address[][] {{addr_item_SystemPort_");
+ EList<ActorInstance> _allContainedInstances_7 = comp.getAllContainedInstances();
+ int _indexOf_5 = _allContainedInstances_7.indexOf(ai_2);
+ _builder.append(_indexOf_5, " ");
+ _builder.append("}");
+ {
+ EList<InterfaceItemInstance> _orderedIfItemInstances_3 = ai_2.getOrderedIfItemInstances();
+ boolean _isEmpty_2 = _orderedIfItemInstances_3.isEmpty();
+ boolean _not_1 = (!_isEmpty_2);
+ if (_not_1) {
+ _builder.append(",");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ {
+ EList<InterfaceItemInstance> _orderedIfItemInstances_4 = ai_2.getOrderedIfItemInstances();
+ boolean _hasElements_2 = false;
+ for(final InterfaceItemInstance pi_2 : _orderedIfItemInstances_4) {
+ if (!_hasElements_2) {
+ _hasElements_2 = true;
+ } else {
+ _builder.appendImmediate(",", " ");
+ }
+ {
+ boolean _and = false;
+ boolean _isReplicated_2 = pi_2.isReplicated();
+ if (!_isReplicated_2) {
+ _and = false;
+ } else {
+ EList<InterfaceItemInstance> _peers_5 = pi_2.getPeers();
+ boolean _isEmpty_3 = _peers_5.isEmpty();
+ _and = (_isReplicated_2 && _isEmpty_3);
+ }
+ if (_and) {
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("null");
+ _builder.newLine();
+ } else {
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("{");
+ _builder.newLine();
+ {
+ EList<InterfaceItemInstance> _peers_6 = pi_2.getPeers();
+ boolean _isEmpty_4 = _peers_6.isEmpty();
+ if (_isEmpty_4) {
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("null");
+ _builder.newLine();
+ } else {
+ {
+ EList<InterfaceItemInstance> _peers_7 = pi_2.getPeers();
+ boolean _hasElements_3 = false;
+ for(final InterfaceItemInstance pp : _peers_7) {
+ if (!_hasElements_3) {
+ _hasElements_3 = true;
+ } else {
+ _builder.appendImmediate(",", " ");
+ }
+ {
+ boolean _isReplicated_3 = pp.isReplicated();
+ if (_isReplicated_3) {
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("addr_item_");
+ String _path_8 = pp.getPath();
+ String _pathName_6 = this._roomExtensions.getPathName(_path_8);
+ _builder.append(_pathName_6, " ");
+ _builder.append("_");
+ EList<InterfaceItemInstance> _peers_8 = pp.getPeers();
+ int _indexOf_6 = _peers_8.indexOf(pi_2);
+ _builder.append(_indexOf_6, " ");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("addr_item_");
+ String _path_9 = pp.getPath();
+ String _pathName_7 = this._roomExtensions.getPathName(_path_9);
+ _builder.append(_pathName_7, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ {
+ List<AttrInstanceConfig> _configAttributes = this._configExtension.getConfigAttributes(ai_2);
+ final Function1<AttrInstanceConfig,Boolean> _function = new Function1<AttrInstanceConfig,Boolean>() {
+ public Boolean apply(final AttrInstanceConfig c) {
+ boolean _isDynConfig = c.isDynConfig();
+ return Boolean.valueOf(_isDynConfig);
+ }
+ };
+ boolean _exists = IterableExtensions.<AttrInstanceConfig>exists(_configAttributes, _function);
+ if (_exists) {
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append(", variableService");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("); ");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// apply instance attribute configurations");
+ _builder.newLine();
+ {
+ EList<ActorInstance> _allContainedInstances_8 = comp.getAllContainedInstances();
+ for(final ActorInstance ai_3 : _allContainedInstances_8) {
+ {
+ boolean _and_1 = false;
+ List<AttrInstanceConfig> _configAttributes_1 = this._configExtension.getConfigAttributes(ai_3);
+ boolean _isEmpty_5 = _configAttributes_1.isEmpty();
+ if (!_isEmpty_5) {
+ _and_1 = false;
+ } else {
+ List<PortInstanceConfig> _configPorts = this._configExtension.getConfigPorts(ai_3);
+ boolean _isEmpty_6 = _configPorts.isEmpty();
+ _and_1 = (_isEmpty_5 && _isEmpty_6);
+ }
+ boolean _not_2 = (!_and_1);
+ if (_not_2) {
+ _builder.append("\t\t");
+ _builder.append("{");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ ActorClass _actorClass_1 = ai_3.getActorClass();
+ String _name_6 = _actorClass_1.getName();
+ _builder.append(_name_6, " ");
+ _builder.append(" inst = (");
+ ActorClass _actorClass_2 = ai_3.getActorClass();
+ String _name_7 = _actorClass_2.getName();
+ _builder.append(_name_7, " ");
+ _builder.append(") instances[");
+ EList<ActorInstance> _allContainedInstances_9 = comp.getAllContainedInstances();
+ int _indexOf_7 = _allContainedInstances_9.indexOf(ai_3);
+ _builder.append(_indexOf_7, " ");
+ _builder.append("];");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ ActorClass _actorClass_3 = ai_3.getActorClass();
+ String _name_8 = _actorClass_3.getName();
+ List<AttrInstanceConfig> _configAttributes_2 = this._configExtension.getConfigAttributes(ai_3);
+ CharSequence _applyInstanceConfig = this.configAddon.applyInstanceConfig("inst", _name_8, _configAttributes_2);
+ _builder.append(_applyInstanceConfig, " ");
+ _builder.newLineIfNotEmpty();
+ {
+ List<PortInstanceConfig> _configPorts_1 = this._configExtension.getConfigPorts(ai_3);
+ for(final PortInstanceConfig portConfig : _configPorts_1) {
+ _builder.append("\t\t");
+ _builder.append("\t");
+ InterfaceItem _item = portConfig.getItem();
+ String _name_9 = _item.getName();
+ ActorClass _actorClass_4 = ai_3.getActorClass();
+ String _name_10 = _actorClass_4.getName();
+ CharSequence _invokeGetter = this._procedureHelpers.invokeGetter(_name_9, _name_10);
+ String _plus_2 = ("inst." + _invokeGetter);
+ InterfaceItem _item_1 = portConfig.getItem();
+ String _portClassName = this._roomExtensions.getPortClassName(_item_1);
+ EList<AttrInstanceConfig> _attributes = portConfig.getAttributes();
+ CharSequence _applyInstanceConfig_1 = this.configAddon.applyInstanceConfig(_plus_2, _portClassName, _attributes);
+ _builder.append(_applyInstanceConfig_1, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// create the subsystem system port\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("RTSystemPort = new RTSystemServicesProtocolConjPortRepl(this, \"RTSystemPort\",");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("0, //local ID");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("// own addresses");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("new Address[]{");
+ _builder.newLine();
+ {
+ EList<ActorInstance> _allContainedInstances_10 = comp.getAllContainedInstances();
+ boolean _hasElements_4 = false;
+ for(final ActorInstance ai_4 : _allContainedInstances_10) {
+ if (!_hasElements_4) {
+ _hasElements_4 = true;
+ } else {
+ _builder.appendImmediate(",", " ");
+ }
+ _builder.append("\t\t\t\t\t");
+ _builder.append("addr_item_SystemPort_");
+ EList<ActorInstance> _allContainedInstances_11 = comp.getAllContainedInstances();
+ int _indexOf_8 = _allContainedInstances_11.indexOf(ai_4);
+ _builder.append(_indexOf_8, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t\t\t");
+ _builder.append("},");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("// peer addresses");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("new Address[]{");
+ _builder.newLine();
+ {
+ EList<ActorInstance> _allContainedInstances_12 = comp.getAllContainedInstances();
+ boolean _hasElements_5 = false;
+ for(final ActorInstance ai_5 : _allContainedInstances_12) {
+ if (!_hasElements_5) {
+ _hasElements_5 = true;
+ } else {
+ _builder.appendImmediate(",", " ");
+ }
+ _builder.append("\t\t\t\t\t");
+ _builder.append("addr_item_");
+ String _path_10 = ai_5.getPath();
+ String _pathName_8 = this._roomExtensions.getPathName(_path_10);
+ _builder.append(_pathName_8, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t\t\t");
+ _builder.append("});");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ {
+ boolean _hasVariableService_1 = this._configExtension.hasVariableService(cc);
+ if (_hasVariableService_1) {
+ _builder.append("\t\t");
+ _builder.append("private VariableService variableService;");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("public void init(){");
+ _builder.newLine();
+ {
+ boolean _hasVariableService_2 = this._configExtension.hasVariableService(cc);
+ if (_hasVariableService_2) {
+ _builder.append("\t\t\t");
+ _builder.append("variableService = new ");
+ String _name_11 = comp.getName();
+ _builder.append(_name_11, " ");
+ _builder.append("VariableService(this);");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t\t");
+ _builder.append("super.init();");
+ _builder.newLine();
+ {
+ boolean _hasVariableService_3 = this._configExtension.hasVariableService(cc);
+ if (_hasVariableService_3) {
+ _builder.append("\t\t\t");
+ _builder.append("variableService.init();");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("public void stop(){");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("super.stop();");
+ _builder.newLine();
+ {
+ boolean _hasVariableService_4 = this._configExtension.hasVariableService(cc);
+ if (_hasVariableService_4) {
+ _builder.append("\t\t\t");
+ _builder.append("variableService.stop();");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("};");
+ _builder.newLine();
+ return _builder;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemRunnerGen.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemRunnerGen.java
index 27337ee77..99ffe08aa 100644
--- a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemRunnerGen.java
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/SubSystemRunnerGen.java
@@ -1,151 +1,151 @@
-package org.eclipse.etrice.generator.java.gen;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance;
-import org.eclipse.etrice.core.room.SubSystemClass;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-
-@Singleton
-@SuppressWarnings("all")
-public class SubSystemRunnerGen {
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private RoomExtensions roomExt;
-
- public void doGenerate(final Root root) {
- EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
- for (final SubSystemInstance sc : _subSystemInstances) {
- {
- SubSystemClass _subSystemClass = sc.getSubSystemClass();
- String _generationTargetPath = this.roomExt.getGenerationTargetPath(_subSystemClass);
- SubSystemClass _subSystemClass_1 = sc.getSubSystemClass();
- String _path = this.roomExt.getPath(_subSystemClass_1);
- String _plus = (_generationTargetPath + _path);
- this.fileAccess.setOutputPath(_plus);
- String _name = sc.getName();
- String _plus_1 = (_name + "Runner.java");
- SubSystemClass _subSystemClass_2 = sc.getSubSystemClass();
- CharSequence _generate = this.generate(root, sc, _subSystemClass_2);
- this.fileAccess.generateFile(_plus_1, _generate);
- }
- }
- }
-
- public CharSequence generate(final Root root, final SubSystemInstance ssc, final SubSystemClass cc) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @author generated by eTrice");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* this class contains the main function running component ");
- String _name = ssc.getName();
- _builder.append(_name, " ");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("* it instantiates ");
- String _name_1 = ssc.getName();
- _builder.append(_name_1, " ");
- _builder.append(" and starts and ends the lifecycle");
- _builder.newLineIfNotEmpty();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.newLine();
- _builder.append("package ");
- String _package = this.roomExt.getPackage(cc);
- _builder.append(_package, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("import org.eclipse.etrice.runtime.java.modelbase.SubSystemRunnerBase;");
- _builder.newLine();
- _builder.newLine();
- _builder.append("class ");
- String _name_2 = ssc.getName();
- String _plus = (_name_2 + "Runner");
- _builder.append(_plus, "");
- _builder.append(" extends SubSystemRunnerBase {");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("static ");
- String _name_3 = ssc.getName();
- _builder.append(_name_3, " ");
- _builder.append(" main_component = new ");
- String _name_4 = ssc.getName();
- _builder.append(_name_4, " ");
- _builder.append("(null, \"");
- String _name_5 = ssc.getName();
- _builder.append(_name_5, " ");
- _builder.append("\");");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("\t");
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* main function");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* creates component and starts and stops the lifecycle");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("public static void main(String[] args) {");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("System.out.println(\"*** T H E B E G I N ***\");");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("main_component.init(); // lifecycle init");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("main_component.start(); // lifecycle start");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// application runs until quit ");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("waitForQuit();");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("// end the lifecycle");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("main_component.stop(); // lifecycle stop");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("main_component.destroy(); // lifecycle destroy");
- _builder.newLine();
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("System.out.println(\"*** T H E E N D ***\");");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("};");
- _builder.newLine();
- return _builder;
- }
-}
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance;
+import org.eclipse.etrice.core.room.SubSystemClass;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+
+@Singleton
+@SuppressWarnings("all")
+public class SubSystemRunnerGen {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private RoomExtensions roomExt;
+
+ public void doGenerate(final Root root) {
+ EList<SubSystemInstance> _subSystemInstances = root.getSubSystemInstances();
+ for (final SubSystemInstance sc : _subSystemInstances) {
+ {
+ SubSystemClass _subSystemClass = sc.getSubSystemClass();
+ String _generationTargetPath = this.roomExt.getGenerationTargetPath(_subSystemClass);
+ SubSystemClass _subSystemClass_1 = sc.getSubSystemClass();
+ String _path = this.roomExt.getPath(_subSystemClass_1);
+ String _plus = (_generationTargetPath + _path);
+ this.fileAccess.setOutputPath(_plus);
+ String _name = sc.getName();
+ String _plus_1 = (_name + "Runner.java");
+ SubSystemClass _subSystemClass_2 = sc.getSubSystemClass();
+ CharSequence _generate = this.generate(root, sc, _subSystemClass_2);
+ this.fileAccess.generateFile(_plus_1, _generate);
+ }
+ }
+ }
+
+ public CharSequence generate(final Root root, final SubSystemInstance ssc, final SubSystemClass cc) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @author generated by eTrice");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* this class contains the main function running component ");
+ String _name = ssc.getName();
+ _builder.append(_name, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("* it instantiates ");
+ String _name_1 = ssc.getName();
+ _builder.append(_name_1, " ");
+ _builder.append(" and starts and ends the lifecycle");
+ _builder.newLineIfNotEmpty();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("package ");
+ String _package = this.roomExt.getPackage(cc);
+ _builder.append(_package, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.modelbase.SubSystemRunnerBase;");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("class ");
+ String _name_2 = ssc.getName();
+ String _plus = (_name_2 + "Runner");
+ _builder.append(_plus, "");
+ _builder.append(" extends SubSystemRunnerBase {");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("static ");
+ String _name_3 = ssc.getName();
+ _builder.append(_name_3, " ");
+ _builder.append(" main_component = new ");
+ String _name_4 = ssc.getName();
+ _builder.append(_name_4, " ");
+ _builder.append("(null, \"");
+ String _name_5 = ssc.getName();
+ _builder.append(_name_5, " ");
+ _builder.append("\");");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* main function");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* creates component and starts and stops the lifecycle");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public static void main(String[] args) {");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("System.out.println(\"*** T H E B E G I N ***\");");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("main_component.init(); // lifecycle init");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("main_component.start(); // lifecycle start");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// application runs until quit ");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("waitForQuit();");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("// end the lifecycle");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("main_component.stop(); // lifecycle stop");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("main_component.destroy(); // lifecycle destroy");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("System.out.println(\"*** T H E E N D ***\");");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("};");
+ _builder.newLine();
+ return _builder;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/VariableServiceGen.java b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/VariableServiceGen.java
new file mode 100644
index 000000000..bee7d72ec
--- /dev/null
+++ b/plugins/org.eclipse.etrice.generator.java/xtend-gen/org/eclipse/etrice/generator/java/gen/VariableServiceGen.java
@@ -0,0 +1,972 @@
+package org.eclipse.etrice.generator.java.gen;
+
+import com.google.common.base.Objects;
+import com.google.common.collect.Iterables;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.core.config.ActorClassConfig;
+import org.eclipse.etrice.core.config.ActorInstanceConfig;
+import org.eclipse.etrice.core.config.AttrClassConfig;
+import org.eclipse.etrice.core.config.AttrInstanceConfig;
+import org.eclipse.etrice.core.config.DynamicConfig;
+import org.eclipse.etrice.core.config.NumberLiteral;
+import org.eclipse.etrice.core.config.RefPath;
+import org.eclipse.etrice.core.config.SubSystemConfig;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DataType;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.core.room.SubSystemClass;
+import org.eclipse.etrice.generator.generic.ConfigExtension;
+import org.eclipse.etrice.generator.generic.ProcedureHelpers;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.etrice.generator.generic.TypeHelpers;
+import org.eclipse.etrice.generator.java.gen.JavaExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+import org.eclipse.xtext.xbase.lib.Conversions;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+import org.eclipse.xtext.xbase.lib.Procedures.Procedure1;
+import org.eclipse.xtext.xbase.lib.StringExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class VariableServiceGen {
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private JavaExtensions stdExt;
+
+ @Inject
+ private RoomExtensions roomExt;
+
+ @Inject
+ private ConfigExtension configExt;
+
+ @Inject
+ private ProcedureHelpers helpers;
+
+ @Inject
+ private TypeHelpers _typeHelpers;
+
+ @Inject
+ private ILogger logger;
+
+ public void doGenerate(final Root root, final SubSystemInstance ssi) {
+ SubSystemClass _subSystemClass = ssi.getSubSystemClass();
+ String _generationTargetPath = this.roomExt.getGenerationTargetPath(_subSystemClass);
+ SubSystemClass _subSystemClass_1 = ssi.getSubSystemClass();
+ String _path = this.roomExt.getPath(_subSystemClass_1);
+ String path = (_generationTargetPath + _path);
+ SubSystemClass _subSystemClass_2 = ssi.getSubSystemClass();
+ String _name = _subSystemClass_2.getName();
+ String file = (_name + "VariableService.java");
+ String _plus = ("generating VariableService implementation: \'" + file);
+ String _plus_1 = (_plus + "\' in \'");
+ String _plus_2 = (_plus_1 + path);
+ String _plus_3 = (_plus_2 + "\'");
+ this.logger.logInfo(_plus_3);
+ this.fileAccess.setOutputPath(path);
+ SubSystemClass _subSystemClass_3 = ssi.getSubSystemClass();
+ CharSequence _generate = this.generate(root, ssi, _subSystemClass_3);
+ this.fileAccess.generateFile(file, _generate);
+ }
+
+ private CharSequence generate(final Root root, final SubSystemInstance comp, final SubSystemClass cc) {
+ StringConcatenation _builder = new StringConcatenation();
+ SubSystemConfig _subSystemConfig = this.configExt.getSubSystemConfig(cc);
+ final DynamicConfig dynConfig = _subSystemConfig.getDynConfig();
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("package ");
+ String _package = this.roomExt.getPackage(cc);
+ _builder.append(_package, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("import java.util.Arrays;");
+ _builder.newLine();
+ _builder.append("import java.util.HashMap;");
+ _builder.newLine();
+ _builder.append("import java.util.Map;");
+ _builder.newLine();
+ _builder.append("import org.eclipse.etrice.runtime.java.config.VariableService;");
+ _builder.newLine();
+ {
+ String _userCode1 = dynConfig.getUserCode1();
+ boolean _notEquals = (!Objects.equal(_userCode1, null));
+ if (_notEquals) {
+ String _userCode1_1 = dynConfig.getUserCode1();
+ _builder.append(_userCode1_1, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("import org.eclipse.etrice.runtime.java.config.ConfigSourceFile;");
+ _builder.newLine();
+ }
+ }
+ List<ActorInstance> ais = this.dynConfigsAIs(comp);
+ _builder.newLineIfNotEmpty();
+ {
+ HashSet<RoomModel> _roomModels = this.getRoomModels(ais);
+ for(final RoomModel model : _roomModels) {
+ _builder.append("import ");
+ String _name = model.getName();
+ _builder.append(_name, "");
+ _builder.append(".*;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("public class ");
+ String _name_1 = comp.getName();
+ String _plus = (_name_1 + "VariableService");
+ _builder.append(_plus, "");
+ _builder.append(" extends VariableService{");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("private ");
+ String _name_2 = cc.getName();
+ _builder.append(_name_2, " ");
+ _builder.append(" subSystem;");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("// Actor instances");
+ _builder.newLine();
+ {
+ for(final ActorInstance ai : ais) {
+ _builder.append("\t");
+ _builder.append("private ");
+ ActorClass _actorClass = ai.getActorClass();
+ String _name_3 = _actorClass.getName();
+ _builder.append(_name_3, " ");
+ _builder.append(" ");
+ String _path = ai.getPath();
+ String[] _split = _path.split("/");
+ Iterable<String> _drop = IterableExtensions.<String>drop(((Iterable<String>)Conversions.doWrapArray(_split)), 2);
+ String _path_1 = this.configExt.toPath(_drop, "_");
+ _builder.append(_path_1, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public ");
+ String _name_4 = comp.getName();
+ String _plus_1 = (_name_4 + "VariableService");
+ _builder.append(_plus_1, " ");
+ _builder.append("(");
+ String _name_5 = cc.getName();
+ _builder.append(_name_5, " ");
+ _builder.append(" subSystem) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("super(");
+ {
+ String _filePath = dynConfig.getFilePath();
+ boolean _notEquals_1 = (!Objects.equal(_filePath, null));
+ if (_notEquals_1) {
+ _builder.append("new ConfigSourceFile(\"");
+ String _filePath_1 = dynConfig.getFilePath();
+ _builder.append(_filePath_1, " ");
+ _builder.append("\")");
+ } else {
+ String _userCode2 = dynConfig.getUserCode2();
+ _builder.append(_userCode2, " ");
+ }
+ }
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("this.subSystem = subSystem;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("protected void initInstances(){");
+ _builder.newLine();
+ {
+ for(final ActorInstance ai_1 : ais) {
+ _builder.append("\t\t");
+ String _path_2 = ai_1.getPath();
+ String[] _split_1 = _path_2.split("/");
+ Iterable<String> _drop_1 = IterableExtensions.<String>drop(((Iterable<String>)Conversions.doWrapArray(_split_1)), 2);
+ String _path_3 = this.configExt.toPath(_drop_1, "_");
+ _builder.append(_path_3, " ");
+ _builder.append(" = (");
+ ActorClass _actorClass_1 = ai_1.getActorClass();
+ String _name_6 = _actorClass_1.getName();
+ _builder.append(_name_6, " ");
+ _builder.append(")subSystem.getInstance(\"");
+ String _path_4 = ai_1.getPath();
+ _builder.append(_path_4, " ");
+ _builder.append("\");");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("protected void setAttributeValues(Map<String, Object> values) {");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("Object object;");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("String id = null;");
+ _builder.newLine();
+ {
+ Iterable<AttrInstanceConfig> _attrDynConfigs = this.configExt.getAttrDynConfigs(cc, true, false);
+ for(final AttrInstanceConfig attrConfig : _attrDynConfigs) {
+ _builder.append("\t\t");
+ EObject _eContainer = attrConfig.eContainer();
+ RefPath _path_5 = ((ActorInstanceConfig) _eContainer).getPath();
+ EList<String> _refs = _path_5.getRefs();
+ String aiName = this.configExt.toPath(_refs, "_");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("try{");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("boolean changed = false;");
+ _builder.newLine();
+ {
+ Map<Attribute,List<String>> _allAttributes = this.getAllAttributes(attrConfig);
+ Set<Entry<Attribute,List<String>>> _entrySet = _allAttributes.entrySet();
+ for(final Entry<Attribute,List<String>> entry : _entrySet) {
+ _builder.append("\t\t");
+ _builder.append("\t");
+ Attribute a = entry.getKey();
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ List<String> _path_6 = this.configExt.getPath(attrConfig, true, true, true, false);
+ String _path_7 = this.configExt.toPath(_path_6, "/");
+ List<String> _value = entry.getValue();
+ String _path_8 = this.configExt.toPath(_value, "/");
+ String _plus_2 = (_path_7 + _path_8);
+ String _plus_3 = (_plus_2 + "/");
+ String _name_7 = a.getName();
+ String aPath = (_plus_3 + _name_7);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("id = \"");
+ _builder.append(aPath, " ");
+ _builder.append("\";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ {
+ int _size = a.getSize();
+ boolean _equals = (_size == 0);
+ if (_equals) {
+ RefableType _refType = a.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ String _wrapper = this.stdExt.toWrapper(_typeName);
+ _builder.append(_wrapper, " ");
+ } else {
+ RefableType _refType_1 = a.getRefType();
+ DataType _type_1 = _refType_1.getType();
+ String _typeName_1 = this._typeHelpers.typeName(_type_1);
+ _builder.append(_typeName_1, " ");
+ _builder.append("[]");
+ }
+ }
+ _builder.append(" _");
+ String _name_8 = a.getName();
+ _builder.append(_name_8, " ");
+ _builder.append(" = null;");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("object = values.get(id);");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("if(object != null){");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("_");
+ String _name_9 = a.getName();
+ _builder.append(_name_9, " ");
+ _builder.append(" = ensure");
+ RefableType _refType_2 = a.getRefType();
+ DataType _type_2 = _refType_2.getType();
+ String _typeName_2 = this._typeHelpers.typeName(_type_2);
+ String _firstUpper = StringExtensions.toFirstUpper(_typeName_2);
+ _builder.append(_firstUpper, " ");
+ {
+ int _size_1 = a.getSize();
+ boolean _greaterThan = (_size_1 > 0);
+ if (_greaterThan) {
+ _builder.append("Array");
+ }
+ }
+ _builder.append("(object");
+ {
+ int _size_2 = a.getSize();
+ boolean _greaterThan_1 = (_size_2 > 0);
+ if (_greaterThan_1) {
+ _builder.append(", ");
+ int _size_3 = a.getSize();
+ _builder.append(_size_3, " ");
+ }
+ }
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ EObject _eContainer_1 = attrConfig.eContainer();
+ ActorClassConfig _actorClassConfig = this.configExt.getActorClassConfig(((ActorInstanceConfig) _eContainer_1));
+ CharSequence _genMinMaxCheck = this.genMinMaxCheck(attrConfig, _actorClassConfig);
+ _builder.append(_genMinMaxCheck, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("if(!");
+ {
+ int _size_4 = a.getSize();
+ boolean _equals_1 = (_size_4 == 0);
+ if (_equals_1) {
+ _builder.append("_");
+ String _name_10 = a.getName();
+ _builder.append(_name_10, " ");
+ _builder.append(".equals(");
+ } else {
+ _builder.append("Arrays.equals(_");
+ String _name_11 = a.getName();
+ _builder.append(_name_11, " ");
+ _builder.append(", ");
+ }
+ }
+ _builder.append("(");
+ {
+ int _size_5 = a.getSize();
+ boolean _equals_2 = (_size_5 == 0);
+ if (_equals_2) {
+ RefableType _refType_3 = a.getRefType();
+ DataType _type_3 = _refType_3.getType();
+ String _typeName_3 = this._typeHelpers.typeName(_type_3);
+ String _wrapper_1 = this.stdExt.toWrapper(_typeName_3);
+ _builder.append(_wrapper_1, " ");
+ } else {
+ RefableType _refType_4 = a.getRefType();
+ DataType _type_4 = _refType_4.getType();
+ String _typeName_4 = this._typeHelpers.typeName(_type_4);
+ _builder.append(_typeName_4, " ");
+ _builder.append("[]");
+ }
+ }
+ _builder.append(")getDiffMap().get(id)))");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("\t\t");
+ _builder.append("changed = true;");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("} else");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("warning(id, \"is missing\");");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("if(changed)");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("synchronized(");
+ _builder.append(aiName, " ");
+ _builder.append(".");
+ Attribute _attribute = attrConfig.getAttribute();
+ String _name_12 = _attribute.getName();
+ String _plus_4 = (_name_12 + "Lock");
+ CharSequence _invokeGetter = this.helpers.invokeGetter(_plus_4, null);
+ _builder.append(_invokeGetter, " ");
+ _builder.append("){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t\t\t");
+ _builder.append("if(");
+ _builder.append(aiName, " ");
+ _builder.append(".");
+ Attribute _attribute_1 = attrConfig.getAttribute();
+ String _name_13 = _attribute_1.getName();
+ String _plus_5 = (_name_13 + "Lock");
+ CharSequence _invokeGetter_1 = this.helpers.invokeGetter(_plus_5, null);
+ _builder.append(_invokeGetter_1, " ");
+ _builder.append(".isUpdate()){");
+ _builder.newLineIfNotEmpty();
+ {
+ Map<Attribute,List<String>> _allAttributes_1 = this.getAllAttributes(attrConfig);
+ Set<Entry<Attribute,List<String>>> _entrySet_1 = _allAttributes_1.entrySet();
+ for(final Entry<Attribute,List<String>> entry_1 : _entrySet_1) {
+ _builder.append("\t\t");
+ _builder.append("\t\t\t\t");
+ _builder.append("if(_");
+ Attribute _key = entry_1.getKey();
+ String _name_14 = _key.getName();
+ _builder.append(_name_14, " ");
+ _builder.append(" != null){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t\t\t\t");
+ _builder.append("\t");
+ _builder.append(aiName, " ");
+ List<String> _value_1 = entry_1.getValue();
+ String _invoke = this.toInvoke(_value_1);
+ _builder.append(_invoke, " ");
+ _builder.append(".");
+ Attribute _key_1 = entry_1.getKey();
+ String _name_15 = _key_1.getName();
+ Attribute _key_2 = entry_1.getKey();
+ String _name_16 = _key_2.getName();
+ String _plus_6 = ("_" + _name_16);
+ CharSequence _invokeSetter = this.helpers.invokeSetter(_name_15, null, _plus_6);
+ _builder.append(_invokeSetter, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t\t\t\t");
+ _builder.append("\t");
+ _builder.append("getDiffMap().put(\"");
+ List<String> _path_9 = this.configExt.getPath(attrConfig, true, true, true, false);
+ String _path_10 = this.configExt.toPath(_path_9, "/");
+ List<String> _value_2 = entry_1.getValue();
+ String _path_11 = this.configExt.toPath(_value_2, "/");
+ String _plus_7 = (_path_10 + _path_11);
+ String _plus_8 = (_plus_7 + "/");
+ Attribute _key_3 = entry_1.getKey();
+ String _name_17 = _key_3.getName();
+ String _plus_9 = (_plus_8 + _name_17);
+ _builder.append(_plus_9, " ");
+ _builder.append("\", _");
+ Attribute _key_4 = entry_1.getKey();
+ String _name_18 = _key_4.getName();
+ _builder.append(_name_18, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t\t\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("\t\t\t");
+ _builder.append("} ");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("}catch(IllegalArgumentException e){");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("error(id, e);");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("protected Map<String, Object> getAttributeValues(){");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("Map<String, Object> values = new HashMap<String, Object>();");
+ _builder.newLine();
+ {
+ Iterable<AttrInstanceConfig> _attrDynConfigs_1 = this.configExt.getAttrDynConfigs(cc, true, false);
+ for(final AttrInstanceConfig attrConfig_1 : _attrDynConfigs_1) {
+ _builder.append("\t\t");
+ EObject _eContainer_2 = attrConfig_1.eContainer();
+ RefPath _path_12 = ((ActorInstanceConfig) _eContainer_2).getPath();
+ EList<String> _refs_1 = _path_12.getRefs();
+ String aiName_1 = this.configExt.toPath(_refs_1, "_");
+ _builder.newLineIfNotEmpty();
+ {
+ Map<Attribute,List<String>> _allAttributes_2 = this.getAllAttributes(attrConfig_1);
+ Set<Entry<Attribute,List<String>>> _entrySet_2 = _allAttributes_2.entrySet();
+ for(final Entry<Attribute,List<String>> entry_2 : _entrySet_2) {
+ _builder.append("\t\t");
+ Attribute _key_5 = entry_2.getKey();
+ int _size_6 = _key_5.getSize();
+ boolean array = (_size_6 > 0);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ List<String> _path_13 = this.configExt.getPath(attrConfig_1, true, true, true, false);
+ String _path_14 = this.configExt.toPath(_path_13, "/");
+ List<String> _value_3 = entry_2.getValue();
+ String _path_15 = this.configExt.toPath(_value_3, "/");
+ String _plus_10 = (_path_14 + _path_15);
+ String _plus_11 = (_plus_10 + "/");
+ Attribute _key_6 = entry_2.getKey();
+ String _name_19 = _key_6.getName();
+ String aPath_1 = (_plus_11 + _name_19);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("values.put(\"");
+ _builder.append(aPath_1, " ");
+ _builder.append("\", ");
+ {
+ if (array) {
+ _builder.append("toObjectArray(");
+ }
+ }
+ _builder.append(aiName_1, " ");
+ List<String> _value_4 = entry_2.getValue();
+ String _invoke_1 = this.toInvoke(_value_4);
+ _builder.append(_invoke_1, " ");
+ _builder.append(".");
+ Attribute _key_7 = entry_2.getKey();
+ String _name_20 = _key_7.getName();
+ CharSequence _invokeGetter_2 = this.helpers.invokeGetter(_name_20, null);
+ _builder.append(_invokeGetter_2, " ");
+ {
+ if (array) {
+ _builder.append(")");
+ }
+ }
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.append("\t\t");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("return values;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("public void writeDataClass(String id, Object dcObject, Map<String, Object> writeMap) {");
+ _builder.newLine();
+ {
+ HashSet<DataClass> _dynDataClasses = this.getDynDataClasses(comp);
+ for(final DataClass dc : _dynDataClasses) {
+ _builder.append("\t\t");
+ _builder.append("if(dcObject.getClass().equals(");
+ String _typeName_5 = this._typeHelpers.typeName(dc);
+ _builder.append(_typeName_5, " ");
+ _builder.append(".class))");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ _builder.append("writeDataClass(id, (");
+ String _typeName_6 = this._typeHelpers.typeName(dc);
+ _builder.append(_typeName_6, " ");
+ _builder.append(") dcObject, writeTasks);");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("// DataClasses write operations");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ {
+ HashSet<DataClass> _allDynDataClasses = this.getAllDynDataClasses(comp);
+ for(final DataClass dc_1 : _allDynDataClasses) {
+ _builder.append("\t");
+ _builder.append("private void writeDataClass(String id, ");
+ String _typeName_7 = this._typeHelpers.typeName(dc_1);
+ _builder.append(_typeName_7, " ");
+ _builder.append(" object, Map<String, Object> map){");
+ _builder.newLineIfNotEmpty();
+ {
+ EList<Attribute> _attributes = dc_1.getAttributes();
+ for(final Attribute a_1 : _attributes) {
+ {
+ RefableType _refType_5 = a_1.getRefType();
+ DataType _type_5 = _refType_5.getType();
+ boolean _isPrimitive = this._typeHelpers.isPrimitive(_type_5);
+ if (_isPrimitive) {
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("map.put(id+\"/");
+ String _name_21 = a_1.getName();
+ _builder.append(_name_21, " ");
+ _builder.append("\", ");
+ {
+ int _size_7 = a_1.getSize();
+ boolean _greaterThan_2 = (_size_7 > 0);
+ if (_greaterThan_2) {
+ _builder.append("toObjectArray(");
+ }
+ }
+ _builder.append("object.");
+ String _name_22 = a_1.getName();
+ CharSequence _invokeGetter_3 = this.helpers.invokeGetter(_name_22, null);
+ _builder.append(_invokeGetter_3, " ");
+ {
+ int _size_8 = a_1.getSize();
+ boolean _greaterThan_3 = (_size_8 > 0);
+ if (_greaterThan_3) {
+ _builder.append(")");
+ }
+ }
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("writeDataClass(id+\"/");
+ String _name_23 = a_1.getName();
+ _builder.append(_name_23, " ");
+ _builder.append("\", object.");
+ String _name_24 = a_1.getName();
+ CharSequence _invokeGetter_4 = this.helpers.invokeGetter(_name_24, null);
+ _builder.append(_invokeGetter_4, " ");
+ _builder.append(", map);");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("@Override");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("protected int getPollingTimerUser(){");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("return ");
+ int _polling = dynConfig.getPolling();
+ _builder.append(_polling, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ return _builder;
+ }
+
+ private CharSequence genMinMaxCheck(final AttrInstanceConfig instConf, final ActorClassConfig acConf) {
+ CharSequence _xblockexpression = null;
+ {
+ List<String> _path = this.configExt.getPath(instConf, false, false, true, true);
+ AttrClassConfig config = acConf==null?(AttrClassConfig)null:this.resolve(acConf, ((String[])Conversions.unwrapArray(_path, String.class)));
+ boolean _and = false;
+ NumberLiteral _min = config==null?(NumberLiteral)null:config.getMin();
+ boolean _equals = Objects.equal(_min, null);
+ if (!_equals) {
+ _and = false;
+ } else {
+ NumberLiteral _max = config==null?(NumberLiteral)null:config.getMax();
+ boolean _equals_1 = Objects.equal(_max, null);
+ _and = (_equals && _equals_1);
+ }
+ if (_and) {
+ StringConcatenation _builder = new StringConcatenation();
+ return _builder;
+ }
+ List<String> _path_1 = this.configExt.getPath(config, false, false, true, true);
+ String path = this.configExt.toPath(_path_1, "_");
+ EObject _eContainer = config.eContainer();
+ ActorClass _actor = ((ActorClassConfig) _eContainer).getActor();
+ String acName = _actor.getName();
+ StringConcatenation _builder_1 = new StringConcatenation();
+ _builder_1.append("checkMinMax(_");
+ Attribute _attribute = config.getAttribute();
+ String _name = _attribute.getName();
+ _builder_1.append(_name, "");
+ _builder_1.append(", ");
+ {
+ NumberLiteral _min_1 = config.getMin();
+ boolean _notEquals = (!Objects.equal(_min_1, null));
+ if (_notEquals) {
+ _builder_1.append(acName, "");
+ _builder_1.append(".MIN");
+ _builder_1.append(path, "");
+ } else {
+ _builder_1.append("null");
+ }
+ }
+ _builder_1.append(", ");
+ {
+ NumberLiteral _max_1 = config.getMax();
+ boolean _notEquals_1 = (!Objects.equal(_max_1, null));
+ if (_notEquals_1) {
+ _builder_1.append(acName, "");
+ _builder_1.append(".MAX");
+ _builder_1.append(path, "");
+ } else {
+ _builder_1.append("null");
+ }
+ }
+ _builder_1.append(");");
+ _builder_1.newLineIfNotEmpty();
+ _xblockexpression = (_builder_1);
+ }
+ return _xblockexpression;
+ }
+
+ private Map<Attribute,List<String>> getAllAttributes(final AttrInstanceConfig config) {
+ HashMap<Attribute,List<String>> _hashMap = new HashMap<Attribute,List<String>>();
+ HashMap<Attribute,List<String>> map = _hashMap;
+ Attribute _attribute = config.getAttribute();
+ RefableType _refType = _attribute.getRefType();
+ DataType _type = _refType.getType();
+ boolean _isPrimitive = this._typeHelpers.isPrimitive(_type);
+ if (_isPrimitive) {
+ Attribute _attribute_1 = config.getAttribute();
+ ArrayList<String> _arrayList = new ArrayList<String>();
+ map.put(_attribute_1, _arrayList);
+ } else {
+ Attribute _attribute_2 = config.getAttribute();
+ LinkedList<String> _linkedList = new LinkedList<String>();
+ this.getAllAttributes(_attribute_2, _linkedList, map);
+ }
+ return map;
+ }
+
+ private void getAllAttributes(final Attribute attribute, final List<String> path, final Map<Attribute,List<String>> map) {
+ RefableType _refType = attribute.getRefType();
+ DataType _type = _refType.getType();
+ boolean _isPrimitive = this._typeHelpers.isPrimitive(_type);
+ if (_isPrimitive) {
+ map.put(attribute, path);
+ } else {
+ RefableType _refType_1 = attribute.getRefType();
+ DataType _type_1 = _refType_1.getType();
+ boolean _isDataClass = this._typeHelpers.isDataClass(_type_1);
+ if (_isDataClass) {
+ ArrayList<String> _arrayList = new ArrayList<String>(path);
+ ArrayList<String> new_path = _arrayList;
+ String _name = attribute.getName();
+ new_path.add(_name);
+ RefableType _refType_2 = attribute.getRefType();
+ DataType _type_2 = _refType_2.getType();
+ List<Attribute> _allAttributes = this.roomExt.getAllAttributes(((DataClass) _type_2));
+ for (final Attribute dc : _allAttributes) {
+ this.getAllAttributes(dc, new_path, map);
+ }
+ }
+ }
+ }
+
+ private String toInvoke(final List<String> path) {
+ StringBuilder _stringBuilder = new StringBuilder();
+ StringBuilder builder = _stringBuilder;
+ for (final String p : path) {
+ CharSequence _invokeGetter = this.helpers.invokeGetter(p, null);
+ String _plus = ("." + _invokeGetter);
+ builder.append(_plus);
+ }
+ return builder.toString();
+ }
+
+ private List<ActorInstance> dynConfigsAIs(final SubSystemInstance comp) {
+ HashSet<String> _hashSet = new HashSet<String>();
+ final HashSet<String> aiPaths = _hashSet;
+ SubSystemClass _subSystemClass = comp.getSubSystemClass();
+ Iterable<AttrInstanceConfig> _attrDynConfigs = this.configExt.getAttrDynConfigs(_subSystemClass, true, false);
+ for (final AttrInstanceConfig attrConfig : _attrDynConfigs) {
+ List<String> _path = this.configExt.getPath(attrConfig, true, true, false, false);
+ String _path_1 = this.configExt.toPath(_path, "/");
+ aiPaths.add(_path_1);
+ }
+ ArrayList<ActorInstance> _arrayList = new ArrayList<ActorInstance>();
+ ArrayList<ActorInstance> ais = _arrayList;
+ EList<ActorInstance> _allContainedInstances = comp.getAllContainedInstances();
+ for (final ActorInstance ai : _allContainedInstances) {
+ String _path_2 = ai.getPath();
+ boolean _contains = aiPaths.contains(_path_2);
+ if (_contains) {
+ ais.add(ai);
+ }
+ }
+ return ais;
+ }
+
+ private HashSet<DataClass> getDynDataClasses(final SubSystemInstance comp) {
+ HashSet<DataClass> _hashSet = new HashSet<DataClass>();
+ HashSet<DataClass> dcs = _hashSet;
+ SubSystemClass _subSystemClass = comp.getSubSystemClass();
+ Iterable<AttrInstanceConfig> _attrDynConfigs = this.configExt.getAttrDynConfigs(_subSystemClass, false, true);
+ for (final AttrInstanceConfig config : _attrDynConfigs) {
+ Attribute _attribute = config.getAttribute();
+ RefableType _refType = _attribute.getRefType();
+ DataType _type = _refType.getType();
+ boolean _isDataClass = this._typeHelpers.isDataClass(_type);
+ if (_isDataClass) {
+ Attribute _attribute_1 = config.getAttribute();
+ RefableType _refType_1 = _attribute_1.getRefType();
+ DataType _type_1 = _refType_1.getType();
+ dcs.add(((DataClass) _type_1));
+ }
+ }
+ return dcs;
+ }
+
+ private HashSet<DataClass> getAllDynDataClasses(final SubSystemInstance comp) {
+ HashSet<DataClass> _hashSet = new HashSet<DataClass>();
+ HashSet<DataClass> dcs = _hashSet;
+ LinkedList<DataClass> _linkedList = new LinkedList<DataClass>();
+ LinkedList<DataClass> stack = _linkedList;
+ HashSet<DataClass> _dynDataClasses = this.getDynDataClasses(comp);
+ stack.addAll(_dynDataClasses);
+ Iterables.<DataClass>addAll(dcs, stack);
+ boolean _isEmpty = stack.isEmpty();
+ boolean _not = (!_isEmpty);
+ boolean _while = _not;
+ while (_while) {
+ {
+ DataClass dc = stack.pop();
+ List<Attribute> _allAttributes = this.roomExt.getAllAttributes(dc);
+ for (final Attribute a : _allAttributes) {
+ RefableType _refType = a.getRefType();
+ DataType _type = _refType.getType();
+ boolean _isDataClass = this._typeHelpers.isDataClass(_type);
+ if (_isDataClass) {
+ RefableType _refType_1 = a.getRefType();
+ DataType _type_1 = _refType_1.getType();
+ dcs.add(((DataClass) _type_1));
+ RefableType _refType_2 = a.getRefType();
+ DataType _type_2 = _refType_2.getType();
+ stack.push(((DataClass) _type_2));
+ }
+ }
+ }
+ boolean _isEmpty_1 = stack.isEmpty();
+ boolean _not_1 = (!_isEmpty_1);
+ _while = _not_1;
+ }
+ return dcs;
+ }
+
+ private AttrClassConfig resolve(final ActorClassConfig config, final String[] path) {
+ EList<AttrClassConfig> _attributes = config.getAttributes();
+ final Function1<AttrClassConfig,Boolean> _function = new Function1<AttrClassConfig,Boolean>() {
+ public Boolean apply(final AttrClassConfig c) {
+ Attribute _attribute = c.getAttribute();
+ String _name = _attribute.getName();
+ String _head = IterableExtensions.<String>head(((Iterable<String>)Conversions.doWrapArray(path)));
+ boolean _equals = _name.equals(_head);
+ return Boolean.valueOf(_equals);
+ }
+ };
+ AttrClassConfig result = IterableExtensions.<AttrClassConfig>findFirst(_attributes, _function);
+ Iterable<String> _tail = IterableExtensions.<String>tail(((Iterable<String>)Conversions.doWrapArray(path)));
+ for (final String ref : _tail) {
+ {
+ EList<AttrClassConfig> _attributes_1 = result==null?(EList<AttrClassConfig>)null:result.getAttributes();
+ final Function1<AttrClassConfig,Boolean> _function_1 = new Function1<AttrClassConfig,Boolean>() {
+ public Boolean apply(final AttrClassConfig c) {
+ Attribute _attribute = c.getAttribute();
+ String _name = _attribute.getName();
+ boolean _equals = _name.equals(ref);
+ return Boolean.valueOf(_equals);
+ }
+ };
+ AttrClassConfig _findFirst = IterableExtensions.<AttrClassConfig>findFirst(_attributes_1, _function_1);
+ result = _findFirst;
+ boolean _equals = Objects.equal(result, null);
+ if (_equals) {
+ return null;
+ }
+ }
+ }
+ return result;
+ }
+
+ private HashSet<RoomModel> getRoomModels(final List<ActorInstance> ais) {
+ HashSet<RoomModel> _hashSet = new HashSet<RoomModel>();
+ final HashSet<RoomModel> models = _hashSet;
+ final Procedure1<ActorInstance> _function = new Procedure1<ActorInstance>() {
+ public void apply(final ActorInstance ai) {
+ ActorClass _actorClass = ai.getActorClass();
+ EObject _eContainer = _actorClass.eContainer();
+ models.add(((RoomModel) _eContainer));
+ }
+ };
+ IterableExtensions.<ActorInstance>forEach(ais, _function);
+ return models;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/ConfigHelper.java b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/ConfigHelper.java
index d060009ce..49e771006 100644
--- a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/ConfigHelper.java
+++ b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/ConfigHelper.java
@@ -20,23 +20,34 @@ import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.etrice.core.config.ActorClassConfig;
import org.eclipse.etrice.core.config.ActorInstanceConfig;
+import org.eclipse.etrice.core.config.AttrInstanceConfig;
import org.eclipse.etrice.core.config.ConfigModel;
import org.eclipse.etrice.core.config.ProtocolClassConfig;
-import org.eclipse.etrice.core.config.RefPath;
+import org.eclipse.etrice.core.config.SubSystemConfig;
+import org.eclipse.etrice.core.config.util.ConfigUtil;
import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.room.ActorContainerClass;
+import org.eclipse.etrice.core.room.ActorClass;
import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.SubSystemClass;
public class ConfigHelper {
- public static Map<ActorContainerClass, ActorClassConfig> actorMap = new HashMap<ActorContainerClass, ActorClassConfig>();
- public static Map<ProtocolClass, ProtocolClassConfig> protocolMap = new HashMap<ProtocolClass, ProtocolClassConfig>();
- public static Map<String, ActorInstanceConfig> instanceMap = new HashMap<String, ActorInstanceConfig>();
+ public static Map<ActorClass, ActorClassConfig> ac2acConfMap = new HashMap<ActorClass, ActorClassConfig>();
+ public static Map<ProtocolClass, ProtocolClassConfig> pc2pcConfMap = new HashMap<ProtocolClass, ProtocolClassConfig>();
+ public static Map<String, ActorInstanceConfig> path2aiConfMap = new HashMap<String, ActorInstanceConfig>();
+ public static Map<SubSystemClass, SubSystemConfig> ssc2ssConfMap = new HashMap<SubSystemClass, SubSystemConfig>();
+ public static Map<SubSystemClass, List<AttrInstanceConfig>> ssc2attrInstConfMap = new HashMap<SubSystemClass, List<AttrInstanceConfig>>();
+ public static Map<ActorClass, List<ActorInstanceConfig>> ac2aiConfMap = new HashMap<ActorClass, List<ActorInstanceConfig>>();
+ public static Map<ActorInstanceConfig, ActorClass> aiConf2acMap = new HashMap<ActorInstanceConfig, ActorClass>();
public static boolean setConfigModels(ResourceSet rs, ILogger logger) {
- actorMap.clear();
- protocolMap.clear();
- instanceMap.clear();
+ ac2acConfMap.clear();
+ pc2pcConfMap.clear();
+ path2aiConfMap.clear();
+ ssc2ssConfMap.clear();
+ ssc2attrInstConfMap.clear();
+ ac2aiConfMap.clear();
+ aiConf2acMap.clear();
boolean error = false;
List<ConfigModel> configs = new ArrayList<ConfigModel>();
@@ -51,46 +62,78 @@ public class ConfigHelper {
for (ConfigModel config : configs) {
for (ActorClassConfig classConfig : config.getActorClassConfigs()) {
- if (actorMap.containsKey(classConfig.getActor())) {
+ if (ac2acConfMap.containsKey(classConfig.getActor())) {
logger.logError("Multiple configurations for actor class "
+ classConfig.getActor().getName() + " found", null);
error = true;
} else
- actorMap.put(classConfig.getActor(), classConfig);
+ ac2acConfMap.put(classConfig.getActor(), classConfig);
}
for (ProtocolClassConfig protocolConfig : config
.getProtocolClassConfigs()) {
- if (protocolMap.containsKey(protocolConfig)) {
+ if (pc2pcConfMap.containsKey(protocolConfig)) {
logger.logError(
"Multiple configurations for protocol class "
+ protocolConfig.getProtocol().getName()
+ " found", null);
error = true;
} else
- protocolMap.put(protocolConfig.getProtocol(),
+ pc2pcConfMap.put(protocolConfig.getProtocol(),
protocolConfig);
}
for (ActorInstanceConfig instanceConfig : config
.getActorInstanceConfigs()) {
String path = "/" + instanceConfig.getRoot().getName()
- + makePath(instanceConfig.getPath());
- if (instanceMap.containsKey(path)) {
+ + toPath(instanceConfig.getPath().getRefs(), "/");
+ if (path2aiConfMap.containsKey(path)) {
logger.logError(
"Multiple configurations for actor instance "
+ path + " found", null);
} else
- instanceMap.put(path, instanceConfig);
+ path2aiConfMap.put(path, instanceConfig);
+
+ ActorClass ac = ConfigUtil.resolve(instanceConfig.getRoot(),
+ instanceConfig.getPath());
+ if (ac2aiConfMap.get(ac) == null)
+ ac2aiConfMap.put(ac, new ArrayList<ActorInstanceConfig>());
+ ac2aiConfMap.get(ac).add(instanceConfig);
+
+ aiConf2acMap.put(instanceConfig, ac);
+ }
+ for (SubSystemConfig ssConfig : config.getSubSystemConfigs()) {
+ if (ssc2ssConfMap.containsKey(ssConfig)) {
+ logger.logError(
+ "Multiple configurations for subSystem class "
+ + ssConfig.getSubSystem().getName()
+ + " found", null);
+ error = true;
+ } else {
+ ssc2ssConfMap.put(ssConfig.getSubSystem(), ssConfig);
+ ssc2attrInstConfMap.put(ssConfig.getSubSystem(),
+ new ArrayList<AttrInstanceConfig>());
+ }
}
}
+ // dynConfigSubsystemMap
+ for (ActorInstanceConfig instanceConfig : path2aiConfMap.values()) {
+ List<AttrInstanceConfig> dynConfigs = new ArrayList<AttrInstanceConfig>();
+ for (AttrInstanceConfig config : instanceConfig.getAttributes())
+ if (config.isDynConfig())
+ dynConfigs.add(config);
+ if (!dynConfigs.isEmpty())
+ ssc2attrInstConfMap.get(instanceConfig.getRoot()).addAll(
+ dynConfigs);
+ }
+
return !error;
}
- private static String makePath(RefPath path) {
- String str = "";
- for (String s : path.getRefs())
- str += "/" + s;
+ public static String toPath(Iterable<String> path, String pathDelim) {
+ StringBuilder b = new StringBuilder();
+ for (String p : path)
+ b.append(pathDelim + p);
- return str;
+ return b.toString();
}
}
diff --git a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ConfigExtension.xtend b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ConfigExtension.xtend
index b2ae660fb..1a794cb6b 100644
--- a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ConfigExtension.xtend
+++ b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ConfigExtension.xtend
@@ -11,130 +11,196 @@
*******************************************************************************/
-package org.eclipse.etrice.generator.generic
-
-import com.google.inject.Inject
-import com.google.inject.Singleton
+package org.eclipse.etrice.generator.generic
+
+import com.google.inject.Inject
+import com.google.inject.Singleton
import java.util.ArrayList
-import java.util.List
-import org.eclipse.etrice.core.config.ActorClassConfig
-import org.eclipse.etrice.core.config.AttrClassConfig
-import org.eclipse.etrice.core.config.AttrInstanceConfig
-import org.eclipse.etrice.core.config.BooleanLiteral
-import org.eclipse.etrice.core.config.Literal
-import org.eclipse.etrice.core.config.IntLiteral
-import org.eclipse.etrice.core.config.LiteralArray
-import org.eclipse.etrice.core.config.PortInstanceConfig
-import org.eclipse.etrice.core.config.ProtocolClassConfig
-import org.eclipse.etrice.core.config.RealLiteral
-import org.eclipse.etrice.core.config.StringLiteral
-import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance
-import org.eclipse.etrice.core.room.ActorClass
-import org.eclipse.etrice.core.room.Attribute
-import org.eclipse.etrice.core.room.PortClass
-import org.eclipse.etrice.core.room.ProtocolClass
-import org.eclipse.etrice.core.room.PrimitiveType
-import org.eclipse.etrice.core.room.LiteralType
-import org.eclipse.etrice.generator.base.ConfigHelper
-
-@Singleton
-class ConfigExtension {
-
- @Inject extension ILanguageExtension languageExt
-
- def getInitValue(Attribute a){
- var value = a.configDefaultValue
- if(value == null)
- value = a.defaultValueLiteral
-
- return value;
- }
-
- def String getConfigDefaultValue(Attribute attr){
- if (attr.eContainer instanceof ActorClass){
- var ac = attr.eContainer as ActorClass;
- return ac.classConfig?.attributes?.getConfigValue(attr);
- }
- else if(attr.eContainer instanceof PortClass){
- var pc = attr.eContainer as PortClass;
- var protocol = pc.eContainer as ProtocolClass
- var prcConfig = getProtocolConfig(protocol as ProtocolClass);
- if(pc.equals(protocol.regular)){
- return prcConfig?.regular?.attributes?.getConfigValue(attr);
- } else
- return prcConfig?.conjugated?.attributes?.getConfigValue(attr);
- }
- }
-
- def String getConfigValue(List<AttrClassConfig> attrConfigs, Attribute attr){
- attrConfigs.findFirst(attrConfig | attrConfig.attribute.equals(attr))?.value?.stringValue(attr);
- }
-
-
- def ActorClassConfig getClassConfig(ActorClass ac){
- ConfigHelper::actorMap.get(ac)
- }
+import java.util.HashSet
+import java.util.LinkedList
+import java.util.List
+import org.eclipse.etrice.core.config.ActorClassConfig
+import org.eclipse.etrice.core.config.ActorInstanceConfig
+import org.eclipse.etrice.core.config.AttrClassConfig
+import org.eclipse.etrice.core.config.AttrConfig
+import org.eclipse.etrice.core.config.AttrInstanceConfig
+import org.eclipse.etrice.core.config.BooleanLiteral
+import org.eclipse.etrice.core.config.IntLiteral
+import org.eclipse.etrice.core.config.Literal
+import org.eclipse.etrice.core.config.LiteralArray
+import org.eclipse.etrice.core.config.PortInstanceConfig
+import org.eclipse.etrice.core.config.ProtocolClassConfig
+import org.eclipse.etrice.core.config.RealLiteral
+import org.eclipse.etrice.core.config.StringLiteral
+import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance
+import org.eclipse.etrice.core.room.ActorClass
+import org.eclipse.etrice.core.room.Attribute
+import org.eclipse.etrice.core.room.DataClass
+import org.eclipse.etrice.core.room.PortClass
+import org.eclipse.etrice.core.room.PrimitiveType
+import org.eclipse.etrice.core.room.ProtocolClass
+import org.eclipse.etrice.core.room.SubSystemClass
+import org.eclipse.etrice.generator.base.ConfigHelper
+
+@Singleton
+class ConfigExtension {
+ @Inject ILanguageExtension languageExt
+ @Inject TypeHelpers typeHelpers
+ @Inject RoomExtensions roomExt
+
+ // language operations
- def ProtocolClassConfig getProtocolConfig(ProtocolClass prc){
- ConfigHelper::protocolMap.get(prc);
- }
-
- def stringValue(LiteralArray literalArray, Attribute attr){
- var string = ""
- if(attr.isArray && literalArray.literals.size > 1){
- string=string+'''{ «FOR literal : literalArray.literals»«literal.stringValue», «ENDFOR»'''
- string=string.substring(0, string.length-2)+''' }'''
- }
- else
- string = literalArray.literals.get(0).stringValue
-
- return string
- }
-
- def private stringValue(Literal literal){
- switch(literal){
- BooleanLiteral: literal.isTrue.toString
- IntLiteral: literal.value.toString
- RealLiteral: literal.value.toString
- StringLiteral: {
- var value = literal.value.toString;
- if(value.length == 1)
- "'"+value+"'"
- else value.toCharArrayExpr
- }
- }
- }
-
- def boolean isArray(Attribute attr){
- var isChar = false
- if(attr.refType.type instanceof PrimitiveType){
- var primitive = attr.refType.type as PrimitiveType
- isChar = primitive.type == LiteralType::CHAR
- }
-
- !isChar && attr.size > 0
- }
-
- def List<AttrInstanceConfig> getConfigAttributes(ActorInstance ai){
- var attrConfigs = new ArrayList<AttrInstanceConfig>();
- var config = ConfigHelper::instanceMap.get(ai.path);
- if(config != null){
- for(attrConfig : config.attributes)
- if(attrConfig.getValue != null)
- attrConfigs.add(attrConfig);
- }
-
- return attrConfigs;
- }
+ def String toArrayValueLiteral(PrimitiveType type, String[] values){
+ '''«FOR v : values BEFORE '{' SEPARATOR ', ' AFTER '}'»«languageExt.toValueLiteral(type, v)»«ENDFOR»'''.toString
+ }
+
+ // ConfigHelper
+ def ActorClassConfig getClassConfig(ActorClass ac){
+ ConfigHelper::ac2acConfMap.get(ac)
+ }
+
+ def ProtocolClassConfig getProtocolConfig(ProtocolClass prc){
+ ConfigHelper::pc2pcConfMap.get(prc);
+ }
+
+ def getSubSystemConfig(SubSystemClass ssc){
+ ConfigHelper::ssc2ssConfMap.get(ssc)
+ }
+
+ def ActorClassConfig getActorClassConfig(ActorInstanceConfig ai){
+ ConfigHelper::ac2acConfMap.get(ConfigHelper::aiConf2acMap.get(ai))
+ }
+
+ // config operations
- def List<PortInstanceConfig> getConfigPorts(ActorInstance ai){
- var portConfigs = new ArrayList<PortInstanceConfig>();
- var config = ConfigHelper::instanceMap.get(ai.path);
- if(config != null){
- for(portConfig : config.ports)
- portConfigs.add(portConfig);
+ def String getInitValueLiteral(Attribute a){
+ var configValues = a.configClassValues
+ var type = a.refType.type
+ var configValue = switch type{
+ case configValues == null:
+ null
+ PrimitiveType case a.size != configValues.size:
+ languageExt.toValueLiteral(type, configValues.get(0))
+ PrimitiveType:
+ toArrayValueLiteral(type, configValues)
}
- return portConfigs;
- }
-} \ No newline at end of file
+ return if(configValue != null) configValue else a.defaultValueLiteral
+ }
+
+ def String[] getConfigClassValues(Attribute attr){
+ if(attr.eContainer instanceof DataClass)
+ return null
+
+ if (attr.eContainer instanceof ActorClass) {
+ var ac = attr.eContainer as ActorClass
+ return ac.classConfig?.attributes?.getConfigValue(attr)
+ } else
+ if(attr.eContainer instanceof PortClass) {
+ var pc = attr.eContainer as PortClass;
+ var protocol = pc.eContainer as ProtocolClass
+ var prcConfig = getProtocolConfig(protocol as ProtocolClass)
+ if(pc.equals(protocol.regular)) {
+ return prcConfig?.regular?.attributes?.getConfigValue(attr)
+ } else
+ return prcConfig?.conjugated?.attributes?.getConfigValue(attr)
+ }
+ }
+
+ def String[] getConfigValue(List<AttrClassConfig> attrConfigs, Attribute attr){
+ attrConfigs.findFirst(attrConfig | attrConfig.attribute.equals(attr))?.value?.getValues;
+ }
+
+ def String[] getValues(LiteralArray literalArray){
+ val result = new ArrayList<String>()
+ literalArray.literals.forEach(l | result.add(l.value))
+ return if(!result.empty) result else null
+ }
+
+ def String getValue(Literal literal){
+ return switch literal {
+ BooleanLiteral:
+ String::valueOf(literal.isTrue)
+ IntLiteral:
+ String::valueOf(literal.value)
+ RealLiteral:
+ String::valueOf(literal.value)
+ StringLiteral:
+ String::valueOf(literal.value)
+ }
+ }
+
+ def List<AttrInstanceConfig> getConfigAttributes(ActorInstance ai){
+ var config = ConfigHelper::path2aiConfMap.get(ai.path)
+ return if(config != null) config.attributes else new ArrayList<AttrInstanceConfig>()
+ }
+
+ def List<PortInstanceConfig> getConfigPorts(ActorInstance ai){
+ val result = new ArrayList<PortInstanceConfig>()
+ var config = ConfigHelper::path2aiConfMap.get(ai.path)
+ config?.ports?.forEach(portConf | result.add(portConf))
+ return result
+ }
+
+ def hasVariableService(SubSystemClass ssc){
+ ssc.getSubSystemConfig?.dynConfig != null
+ }
+
+ def List<AttrClassConfig> getAllAttrConfigFlat(ActorClass ac){
+ var result = new ArrayList<AttrClassConfig>()
+ if(ac.classConfig != null) {
+ var stack = new LinkedList<AttrClassConfig>()
+ stack.addAll(ac.classConfig.attributes)
+ while(!stack.empty){
+ var c = stack.pop
+ result.add(c)
+ stack.addAll(c.attributes)
+ }
+ }
+ return result
+ }
+
+ def Iterable<AttrInstanceConfig> getAttrDynConfigs(SubSystemClass ssc, boolean read, boolean write){
+ ConfigHelper::ssc2attrInstConfMap.get(ssc).filter(c |
+ c.dynConfig && ((read && c.readOnly) || (write && !c.readOnly))
+ )
+ }
+
+ def List<String> getPath(AttrConfig config, boolean ss, boolean actor, boolean dc, boolean attr){
+ var result = new LinkedList<String>()
+ var c = config
+ while(c.eContainer instanceof AttrConfig){
+ c = c.eContainer as AttrConfig
+ if(dc)
+ result.addFirst(c.attribute.name)
+ }
+ if(c.eContainer instanceof ActorInstanceConfig) {
+ var aic = c.eContainer as ActorInstanceConfig
+ if(actor)
+ result.addAll(0, aic.path.refs)
+ if(ss)
+ result.addFirst(aic.root.name)
+ } else
+ if(c.eContainer instanceof ActorClassConfig) {
+ var ac= c.eContainer as ActorClassConfig
+ if(actor)
+ result.addFirst(ac.actor.name)
+ }
+ if(attr)
+ result.add(config.attribute.name)
+ return result
+ }
+
+ def String toPath(Iterable<String> path, String pathDelim){
+ ConfigHelper::toPath(path, pathDelim)
+ }
+
+ def getDynConfigAttributes(ActorClass ac, boolean read, boolean write){
+ val result = new HashSet<Attribute>()
+ ConfigHelper::ac2aiConfMap.get(ac)?.
+ forEach(aiConf | aiConf.attributes.
+ filter(c | c.dynConfig && ((read && c.readOnly) || (write && !c.readOnly))).
+ forEach(dynConf | result.add(dynConf.attribute)))
+ return result
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ILanguageExtension.java b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ILanguageExtension.java
index a96e00f35..2aab1647f 100644
--- a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ILanguageExtension.java
+++ b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ILanguageExtension.java
@@ -2,6 +2,7 @@
package org.eclipse.etrice.generator.generic;
import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.PrimitiveType;
import java.util.List;
import org.eclipse.xtext.util.Pair;
@@ -178,4 +179,14 @@ public interface ILanguageExtension {
* @return super.method for Java, baseClassName::method for C++, empty for C
*/
String superCall(String baseClassName, String method, String arguments);
+
+ /**
+ * Produces necessary casts or data type keys for primitive values
+ * @param type ROOM PrimitiveType
+ * @param value Java Primitive e.g. Long, Byte, String
+ * @return for Java: <br>
+ * toPrimitve("PrimitiveType int64: ptInteger -> long (Long)", Long value = 99) -> 99L<br>
+ * toPrimitve("PrimitiveType int8: ptInteger -> byte (Byte)", Byte value = 12) -> (byte)12
+ */
+ String toValueLiteral(PrimitiveType type, String value);
} \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ProcedureHelpers.xtend b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ProcedureHelpers.xtend
index 4fc899094..979e5efe9 100644
--- a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ProcedureHelpers.xtend
+++ b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/ProcedureHelpers.xtend
@@ -10,27 +10,27 @@
* Thomas Schuetz (refactoring, adapted for other target languages)
*
*******************************************************************************/
-
+
package org.eclipse.etrice.generator.generic
import com.google.inject.Inject
import com.google.inject.Singleton
import java.util.List
+import org.eclipse.emf.common.util.EList
+import org.eclipse.etrice.core.genmodel.base.ILogger
import org.eclipse.etrice.core.room.ActorClass
import org.eclipse.etrice.core.room.ActorContainerClass
+import org.eclipse.etrice.core.room.Attribute
+import org.eclipse.etrice.core.room.ComplexType
import org.eclipse.etrice.core.room.DataClass
import org.eclipse.etrice.core.room.DetailCode
-import org.eclipse.etrice.core.room.ProtocolClass
-import org.eclipse.etrice.core.room.Attribute
import org.eclipse.etrice.core.room.Operation
+import org.eclipse.etrice.core.room.ProtocolClass
+import org.eclipse.etrice.core.room.RefableType
import org.eclipse.etrice.core.room.VarDecl
-import org.eclipse.etrice.core.room.ComplexType
-import static extension org.eclipse.etrice.core.room.util.RoomHelpers.*
-
import org.eclipse.etrice.generator.base.AbstractGenerator
-import org.eclipse.etrice.core.genmodel.base.ILogger
-import org.eclipse.emf.common.util.EList
-import org.eclipse.etrice.core.room.RefableType
+
+import static extension org.eclipse.etrice.core.room.util.RoomHelpers.*
@Singleton
@@ -85,14 +85,19 @@ class ProcedureHelpers {
def attributes(List<Attribute> attribs) {'''
/*--------------------- attributes ---------------------*/
«FOR attribute : attribs»
- «IF attribute.size==0»
- «attribute.refType.type.typeName»«IF attribute.refType.ref»«languageExt.pointerLiteral()»«ENDIF» «attribute.name»;
- «ELSE»
- «languageExt.arrayDeclaration(attribute.refType.type.typeName, attribute.size, attribute.name, attribute.refType.ref)»;
- «ENDIF»
+ «attributeDeclaration(attribute)»
«ENDFOR»
'''
}
+
+ def attributeDeclaration(Attribute attribute){'''
+ «IF attribute.size==0»
+ «attribute.refType.type.typeName»«IF attribute.refType.ref»«languageExt.pointerLiteral()»«ENDIF» «attribute.name»;
+ «ELSE»
+ «languageExt.arrayDeclaration(attribute.refType.type.typeName, attribute.size, attribute.name, attribute.refType.ref)»;
+ «ENDIF»
+ '''
+ }
def arrayInitializer(Attribute att) {
var dflt = if (att.defaultValueLiteral!=null) att.defaultValueLiteral else att.refType.type.defaultValue
@@ -119,30 +124,31 @@ class ProcedureHelpers {
'''
// initialize attributes
«FOR a : attribs»
- «var value = a.initValue»
+ «var aType = a.refType.type»
+ «var value = a.initValueLiteral»
«IF value!=null»
- «IF !a.isArray»
+ «IF a.size == 0 || aType.characterType»
«a.name» = «value»;
«ELSEIF value.startsWith("{")»
- «a.name» = new «a.refType.type.typeName»[] «value»;
+ «a.name» = new «aType.typeName»[] «value»;
«ELSE»
- «a.name» = new «a.refType.type.typeName»[«a.size»];
+ «a.name» = new «aType.typeName»[«a.size»];
for (int i=0;i<«a.size»;i++){
«a.name»[i] = «value»;
}
«ENDIF»
- «ELSEIF a.refType.type instanceof ComplexType || a.size>1 || !useClassDefaultsOnly»
+ «ELSEIF aType instanceof ComplexType || a.size>1 || !useClassDefaultsOnly»
«IF a.size==0»
«IF a.refType.isRef»
«a.name» = «languageExt.nullPointer()»;
«ELSE»
- «a.name» = «a.refType.type.defaultValue»;
+ «a.name» = «aType.defaultValue»;
«ENDIF»
«ELSE»
- «a.name» = new «a.refType.type.typeName»[«a.size»];
+ «a.name» = new «aType.typeName»[«a.size»];
«IF !useClassDefaultsOnly»
for (int i=0;i<«a.size»;i++){
- «a.name»[i] = «IF a.refType.isRef»«languageExt.nullPointer()»«ELSE»«a.refType.type.defaultValue»«ENDIF»;
+ «a.name»[i] = «IF a.refType.isRef»«languageExt.nullPointer()»«ELSE»«aType.defaultValue»«ENDIF»;
}
«ENDIF»
«ENDIF»
@@ -181,7 +187,7 @@ class ProcedureHelpers {
}
def argList(List<Attribute> attributes) {
- '''«FOR a : attributes SEPARATOR ", "»«a.refType.type.typeName»«IF a.size>1»[]«ENDIF» «a.name»«ENDFOR»'''
+ '''«FOR a : attributes SEPARATOR ", "»«a.refType.type.typeName»«IF a.size>0»[]«ENDIF» «a.name»«ENDFOR»'''
}
// generic setters & getters
@@ -272,4 +278,4 @@ class ProcedureHelpers {
'''«languageExt.accessLevelPublic()»«returnType» «languageExt.memberInDeclaration(classname, operationname)»(«languageExt.selfPointer(classname, !argumentList.empty)»«argumentList»)'''
}
-} \ No newline at end of file
+}
diff --git a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/RoomExtensions.xtend b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/RoomExtensions.xtend
index 87c02e90f..e586d0240 100644
--- a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/RoomExtensions.xtend
+++ b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/RoomExtensions.xtend
@@ -85,6 +85,12 @@ class RoomExtensions {
return ret
}
+ def <T> List<T> minus(List<T> l1, List<T> l2){
+ var ret = new ArrayList<T>(l1)
+ ret.removeAll(l2)
+ return ret;
+ }
+
//-------------------------------------------------------
// path related methods
@@ -199,6 +205,10 @@ class RoomExtensions {
else
ac.base.allAttributes.union(ac.attributes)
}
+
+ def ActorClass getContainingActorClass(EObject o){
+ o.actorClass;
+ }
//-------------------------------------------------------
// protocol related methods
@@ -575,6 +585,6 @@ class RoomExtensions {
}
return result;
- }
+ }
}
diff --git a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/TypeHelpers.xtend b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/TypeHelpers.xtend
index f2f94fdd7..278bad335 100644
--- a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/TypeHelpers.xtend
+++ b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/generic/TypeHelpers.xtend
@@ -18,7 +18,9 @@
package org.eclipse.etrice.generator.generic
import com.google.inject.Inject
-import com.google.inject.Singleton
+import com.google.inject.Singleton
+import org.eclipse.etrice.core.room.LiteralType
+import org.eclipse.etrice.core.room.DataClass
import org.eclipse.etrice.core.room.DataType
import org.eclipse.etrice.core.room.ExternalType
import org.eclipse.etrice.core.room.PrimitiveType
@@ -58,4 +60,20 @@ class TypeHelpers {
def String getTypedDataDefinition(Message m) {
return chainGenerator.generateTypedData(m.data)
}
+
+ def isPrimitive(DataType type){
+ return type instanceof PrimitiveType
+ }
+
+ def isDataClass(DataType type){
+ return type instanceof DataClass
+ }
+
+ def isCharacterType(PrimitiveType type){
+ type.type == LiteralType::CHAR
+ }
+
+ def isCharacterType(DataType type){
+ return type.primitive && (type as PrimitiveType).characterType
+ }
} \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ConfigExtension.java b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ConfigExtension.java
index 6a491eda3..5af9d7c8f 100644
--- a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ConfigExtension.java
+++ b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ConfigExtension.java
@@ -1,270 +1,483 @@
-package org.eclipse.etrice.generator.generic;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.config.ActorClassConfig;
-import org.eclipse.etrice.core.config.ActorInstanceConfig;
-import org.eclipse.etrice.core.config.AttrClassConfig;
-import org.eclipse.etrice.core.config.AttrInstanceConfig;
-import org.eclipse.etrice.core.config.BooleanLiteral;
-import org.eclipse.etrice.core.config.IntLiteral;
-import org.eclipse.etrice.core.config.Literal;
-import org.eclipse.etrice.core.config.LiteralArray;
-import org.eclipse.etrice.core.config.PortClassConfig;
-import org.eclipse.etrice.core.config.PortInstanceConfig;
-import org.eclipse.etrice.core.config.ProtocolClassConfig;
-import org.eclipse.etrice.core.config.RealLiteral;
-import org.eclipse.etrice.core.config.StringLiteral;
-import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.DataType;
-import org.eclipse.etrice.core.room.LiteralType;
-import org.eclipse.etrice.core.room.PortClass;
-import org.eclipse.etrice.core.room.PrimitiveType;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.generator.base.ConfigHelper;
-import org.eclipse.etrice.generator.generic.ILanguageExtension;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.xbase.lib.Functions.Function1;
-import org.eclipse.xtext.xbase.lib.IterableExtensions;
-
-@Singleton
-@SuppressWarnings("all")
-public class ConfigExtension {
- @Inject
- private ILanguageExtension languageExt;
-
- public String getInitValue(final Attribute a) {
- String value = this.getConfigDefaultValue(a);
- boolean _equals = Objects.equal(value, null);
- if (_equals) {
- String _defaultValueLiteral = a.getDefaultValueLiteral();
- value = _defaultValueLiteral;
- }
- return value;
- }
-
- public String getConfigDefaultValue(final Attribute attr) {
- EObject _eContainer = attr.eContainer();
- if ((_eContainer instanceof ActorClass)) {
- EObject _eContainer_1 = attr.eContainer();
- ActorClass ac = ((ActorClass) _eContainer_1);
- ActorClassConfig _classConfig = this.getClassConfig(ac);
- EList<AttrClassConfig> _attributes = _classConfig==null?(EList<AttrClassConfig>)null:_classConfig.getAttributes();
- return _attributes==null?(String)null:this.getConfigValue(_attributes, attr);
- } else {
- EObject _eContainer_2 = attr.eContainer();
- if ((_eContainer_2 instanceof PortClass)) {
- EObject _eContainer_3 = attr.eContainer();
- PortClass pc = ((PortClass) _eContainer_3);
- EObject _eContainer_4 = pc.eContainer();
- ProtocolClass protocol = ((ProtocolClass) _eContainer_4);
- ProtocolClassConfig prcConfig = this.getProtocolConfig(((ProtocolClass) protocol));
- PortClass _regular = protocol.getRegular();
- boolean _equals = pc.equals(_regular);
- if (_equals) {
- PortClassConfig _regular_1 = prcConfig==null?(PortClassConfig)null:prcConfig.getRegular();
- EList<AttrClassConfig> _attributes_1 = _regular_1==null?(EList<AttrClassConfig>)null:_regular_1.getAttributes();
- return _attributes_1==null?(String)null:this.getConfigValue(_attributes_1, attr);
- } else {
- PortClassConfig _conjugated = prcConfig==null?(PortClassConfig)null:prcConfig.getConjugated();
- EList<AttrClassConfig> _attributes_2 = _conjugated==null?(EList<AttrClassConfig>)null:_conjugated.getAttributes();
- return _attributes_2==null?(String)null:this.getConfigValue(_attributes_2, attr);
- }
- }
- }
- return null;
- }
-
- public String getConfigValue(final List<AttrClassConfig> attrConfigs, final Attribute attr) {
- final Function1<AttrClassConfig,Boolean> _function = new Function1<AttrClassConfig,Boolean>() {
- public Boolean apply(final AttrClassConfig attrConfig) {
- Attribute _attribute = attrConfig.getAttribute();
- boolean _equals = _attribute.equals(attr);
- return Boolean.valueOf(_equals);
- }
- };
- AttrClassConfig _findFirst = IterableExtensions.<AttrClassConfig>findFirst(attrConfigs, _function);
- LiteralArray _value = _findFirst==null?(LiteralArray)null:_findFirst.getValue();
- String _stringValue = _value==null?(String)null:this.stringValue(_value, attr);
- return _stringValue;
- }
-
- public ActorClassConfig getClassConfig(final ActorClass ac) {
- ActorClassConfig _get = ConfigHelper.actorMap.get(ac);
- return _get;
- }
-
- public ProtocolClassConfig getProtocolConfig(final ProtocolClass prc) {
- ProtocolClassConfig _get = ConfigHelper.protocolMap.get(prc);
- return _get;
- }
-
- public String stringValue(final LiteralArray literalArray, final Attribute attr) {
- String string = "";
- boolean _and = false;
- boolean _isArray = this.isArray(attr);
- if (!_isArray) {
- _and = false;
- } else {
- EList<Literal> _literals = literalArray.getLiterals();
- int _size = _literals.size();
- boolean _greaterThan = (_size > 1);
- _and = (_isArray && _greaterThan);
- }
- if (_and) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("{ ");
- {
- EList<Literal> _literals_1 = literalArray.getLiterals();
- for(final Literal literal : _literals_1) {
- String _stringValue = this.stringValue(literal);
- _builder.append(_stringValue, "");
- _builder.append(", ");
- }
- }
- String _plus = (string + _builder.toString());
- string = _plus;
- int _length = string.length();
- int _minus = (_length - 2);
- String _substring = string.substring(0, _minus);
- StringConcatenation _builder_1 = new StringConcatenation();
- _builder_1.append(" ");
- _builder_1.append("}");
- String _plus_1 = (_substring + _builder_1.toString());
- string = _plus_1;
- } else {
- EList<Literal> _literals_2 = literalArray.getLiterals();
- Literal _get = _literals_2.get(0);
- String _stringValue_1 = this.stringValue(_get);
- string = _stringValue_1;
- }
- return string;
- }
-
- private String stringValue(final Literal literal) {
- String _switchResult = null;
- boolean _matched = false;
- if (!_matched) {
- if (literal instanceof BooleanLiteral) {
- final BooleanLiteral _booleanLiteral = (BooleanLiteral)literal;
- _matched=true;
- boolean _isIsTrue = _booleanLiteral.isIsTrue();
- String _string = Boolean.valueOf(_isIsTrue).toString();
- _switchResult = _string;
- }
- }
- if (!_matched) {
- if (literal instanceof IntLiteral) {
- final IntLiteral _intLiteral = (IntLiteral)literal;
- _matched=true;
- int _value = _intLiteral.getValue();
- String _string = Integer.valueOf(_value).toString();
- _switchResult = _string;
- }
- }
- if (!_matched) {
- if (literal instanceof RealLiteral) {
- final RealLiteral _realLiteral = (RealLiteral)literal;
- _matched=true;
- double _value = _realLiteral.getValue();
- String _string = Double.valueOf(_value).toString();
- _switchResult = _string;
- }
- }
- if (!_matched) {
- if (literal instanceof StringLiteral) {
- final StringLiteral _stringLiteral = (StringLiteral)literal;
- _matched=true;
- String _xblockexpression = null;
- {
- String _value = _stringLiteral.getValue();
- String value = _value.toString();
- String _xifexpression = null;
- int _length = value.length();
- boolean _equals = (_length == 1);
- if (_equals) {
- String _plus = ("\'" + value);
- String _plus_1 = (_plus + "\'");
- _xifexpression = _plus_1;
- } else {
- String _charArrayExpr = this.languageExt.toCharArrayExpr(value);
- _xifexpression = _charArrayExpr;
- }
- _xblockexpression = (_xifexpression);
- }
- _switchResult = _xblockexpression;
- }
- }
- return _switchResult;
- }
-
- public boolean isArray(final Attribute attr) {
- boolean _xblockexpression = false;
- {
- boolean isChar = false;
- RefableType _refType = attr.getRefType();
- DataType _type = _refType.getType();
- if ((_type instanceof PrimitiveType)) {
- RefableType _refType_1 = attr.getRefType();
- DataType _type_1 = _refType_1.getType();
- PrimitiveType primitive = ((PrimitiveType) _type_1);
- LiteralType _type_2 = primitive.getType();
- boolean _equals = Objects.equal(_type_2, LiteralType.CHAR);
- isChar = _equals;
- }
- boolean _and = false;
- boolean _not = (!isChar);
- if (!_not) {
- _and = false;
- } else {
- int _size = attr.getSize();
- boolean _greaterThan = (_size > 0);
- _and = (_not && _greaterThan);
- }
- _xblockexpression = (_and);
- }
- return _xblockexpression;
- }
-
- public List<AttrInstanceConfig> getConfigAttributes(final ActorInstance ai) {
- ArrayList<AttrInstanceConfig> _arrayList = new ArrayList<AttrInstanceConfig>();
- ArrayList<AttrInstanceConfig> attrConfigs = _arrayList;
- String _path = ai.getPath();
- ActorInstanceConfig config = ConfigHelper.instanceMap.get(_path);
- boolean _notEquals = (!Objects.equal(config, null));
- if (_notEquals) {
- EList<AttrInstanceConfig> _attributes = config.getAttributes();
- for (final AttrInstanceConfig attrConfig : _attributes) {
- LiteralArray _value = attrConfig.getValue();
- boolean _notEquals_1 = (!Objects.equal(_value, null));
- if (_notEquals_1) {
- attrConfigs.add(attrConfig);
- }
- }
- }
- return attrConfigs;
- }
-
- public List<PortInstanceConfig> getConfigPorts(final ActorInstance ai) {
- ArrayList<PortInstanceConfig> _arrayList = new ArrayList<PortInstanceConfig>();
- ArrayList<PortInstanceConfig> portConfigs = _arrayList;
- String _path = ai.getPath();
- ActorInstanceConfig config = ConfigHelper.instanceMap.get(_path);
- boolean _notEquals = (!Objects.equal(config, null));
- if (_notEquals) {
- EList<PortInstanceConfig> _ports = config.getPorts();
- for (final PortInstanceConfig portConfig : _ports) {
- portConfigs.add(portConfig);
- }
- }
- return portConfigs;
- }
-}
+package org.eclipse.etrice.generator.generic;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.core.config.ActorClassConfig;
+import org.eclipse.etrice.core.config.ActorInstanceConfig;
+import org.eclipse.etrice.core.config.AttrClassConfig;
+import org.eclipse.etrice.core.config.AttrConfig;
+import org.eclipse.etrice.core.config.AttrInstanceConfig;
+import org.eclipse.etrice.core.config.BooleanLiteral;
+import org.eclipse.etrice.core.config.DynamicConfig;
+import org.eclipse.etrice.core.config.IntLiteral;
+import org.eclipse.etrice.core.config.Literal;
+import org.eclipse.etrice.core.config.LiteralArray;
+import org.eclipse.etrice.core.config.PortClassConfig;
+import org.eclipse.etrice.core.config.PortInstanceConfig;
+import org.eclipse.etrice.core.config.ProtocolClassConfig;
+import org.eclipse.etrice.core.config.RealLiteral;
+import org.eclipse.etrice.core.config.RefPath;
+import org.eclipse.etrice.core.config.StringLiteral;
+import org.eclipse.etrice.core.config.SubSystemConfig;
+import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DataType;
+import org.eclipse.etrice.core.room.PortClass;
+import org.eclipse.etrice.core.room.PrimitiveType;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.core.room.SubSystemClass;
+import org.eclipse.etrice.generator.base.ConfigHelper;
+import org.eclipse.etrice.generator.generic.ILanguageExtension;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.etrice.generator.generic.TypeHelpers;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.xbase.lib.Conversions;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+import org.eclipse.xtext.xbase.lib.Procedures.Procedure1;
+
+@Singleton
+@SuppressWarnings("all")
+public class ConfigExtension {
+ @Inject
+ private ILanguageExtension languageExt;
+
+ @Inject
+ private TypeHelpers typeHelpers;
+
+ @Inject
+ private RoomExtensions roomExt;
+
+ public String toArrayValueLiteral(final PrimitiveType type, final String[] values) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _hasElements = false;
+ for(final String v : values) {
+ if (!_hasElements) {
+ _hasElements = true;
+ _builder.append("{", "");
+ } else {
+ _builder.appendImmediate(", ", "");
+ }
+ String _valueLiteral = this.languageExt.toValueLiteral(type, v);
+ _builder.append(_valueLiteral, "");
+ }
+ if (_hasElements) {
+ _builder.append("}", "");
+ }
+ }
+ String _string = _builder.toString();
+ return _string;
+ }
+
+ public ActorClassConfig getClassConfig(final ActorClass ac) {
+ ActorClassConfig _get = ConfigHelper.ac2acConfMap.get(ac);
+ return _get;
+ }
+
+ public ProtocolClassConfig getProtocolConfig(final ProtocolClass prc) {
+ ProtocolClassConfig _get = ConfigHelper.pc2pcConfMap.get(prc);
+ return _get;
+ }
+
+ public SubSystemConfig getSubSystemConfig(final SubSystemClass ssc) {
+ SubSystemConfig _get = ConfigHelper.ssc2ssConfMap.get(ssc);
+ return _get;
+ }
+
+ public ActorClassConfig getActorClassConfig(final ActorInstanceConfig ai) {
+ ActorClass _get = ConfigHelper.aiConf2acMap.get(ai);
+ ActorClassConfig _get_1 = ConfigHelper.ac2acConfMap.get(_get);
+ return _get_1;
+ }
+
+ public String getInitValueLiteral(final Attribute a) {
+ String[] configValues = this.getConfigClassValues(a);
+ RefableType _refType = a.getRefType();
+ DataType type = _refType.getType();
+ String _switchResult = null;
+ boolean _matched = false;
+ if (!_matched) {
+ boolean _equals = Objects.equal(configValues, null);
+ if (_equals) {
+ _matched=true;
+ _switchResult = null;
+ }
+ }
+ if (!_matched) {
+ if (type instanceof PrimitiveType) {
+ final PrimitiveType _primitiveType = (PrimitiveType)type;
+ int _size = a.getSize();
+ final String[] _converted_configValues = (String[])configValues;
+ int _size_1 = ((List<String>)Conversions.doWrapArray(_converted_configValues)).size();
+ boolean _notEquals = (_size != _size_1);
+ if (_notEquals) {
+ _matched=true;
+ final String[] _converted_configValues_1 = (String[])configValues;
+ String _get = ((List<String>)Conversions.doWrapArray(_converted_configValues_1)).get(0);
+ String _valueLiteral = this.languageExt.toValueLiteral(_primitiveType, _get);
+ _switchResult = _valueLiteral;
+ }
+ }
+ }
+ if (!_matched) {
+ if (type instanceof PrimitiveType) {
+ final PrimitiveType _primitiveType = (PrimitiveType)type;
+ _matched=true;
+ String _arrayValueLiteral = this.toArrayValueLiteral(_primitiveType, configValues);
+ _switchResult = _arrayValueLiteral;
+ }
+ }
+ String configValue = _switchResult;
+ String _xifexpression = null;
+ boolean _notEquals = (!Objects.equal(configValue, null));
+ if (_notEquals) {
+ _xifexpression = configValue;
+ } else {
+ String _defaultValueLiteral = a.getDefaultValueLiteral();
+ _xifexpression = _defaultValueLiteral;
+ }
+ return _xifexpression;
+ }
+
+ public String[] getConfigClassValues(final Attribute attr) {
+ EObject _eContainer = attr.eContainer();
+ if ((_eContainer instanceof DataClass)) {
+ return null;
+ }
+ EObject _eContainer_1 = attr.eContainer();
+ if ((_eContainer_1 instanceof ActorClass)) {
+ EObject _eContainer_2 = attr.eContainer();
+ ActorClass ac = ((ActorClass) _eContainer_2);
+ ActorClassConfig _classConfig = this.getClassConfig(ac);
+ EList<AttrClassConfig> _attributes = _classConfig==null?(EList<AttrClassConfig>)null:_classConfig.getAttributes();
+ return _attributes==null?(String[])null:this.getConfigValue(_attributes, attr);
+ } else {
+ EObject _eContainer_3 = attr.eContainer();
+ if ((_eContainer_3 instanceof PortClass)) {
+ EObject _eContainer_4 = attr.eContainer();
+ PortClass pc = ((PortClass) _eContainer_4);
+ EObject _eContainer_5 = pc.eContainer();
+ ProtocolClass protocol = ((ProtocolClass) _eContainer_5);
+ ProtocolClassConfig prcConfig = this.getProtocolConfig(((ProtocolClass) protocol));
+ PortClass _regular = protocol.getRegular();
+ boolean _equals = pc.equals(_regular);
+ if (_equals) {
+ PortClassConfig _regular_1 = prcConfig==null?(PortClassConfig)null:prcConfig.getRegular();
+ EList<AttrClassConfig> _attributes_1 = _regular_1==null?(EList<AttrClassConfig>)null:_regular_1.getAttributes();
+ return _attributes_1==null?(String[])null:this.getConfigValue(_attributes_1, attr);
+ } else {
+ PortClassConfig _conjugated = prcConfig==null?(PortClassConfig)null:prcConfig.getConjugated();
+ EList<AttrClassConfig> _attributes_2 = _conjugated==null?(EList<AttrClassConfig>)null:_conjugated.getAttributes();
+ return _attributes_2==null?(String[])null:this.getConfigValue(_attributes_2, attr);
+ }
+ }
+ }
+ return null;
+ }
+
+ public String[] getConfigValue(final List<AttrClassConfig> attrConfigs, final Attribute attr) {
+ final Function1<AttrClassConfig,Boolean> _function = new Function1<AttrClassConfig,Boolean>() {
+ public Boolean apply(final AttrClassConfig attrConfig) {
+ Attribute _attribute = attrConfig.getAttribute();
+ boolean _equals = _attribute.equals(attr);
+ return Boolean.valueOf(_equals);
+ }
+ };
+ AttrClassConfig _findFirst = IterableExtensions.<AttrClassConfig>findFirst(attrConfigs, _function);
+ LiteralArray _value = _findFirst==null?(LiteralArray)null:_findFirst.getValue();
+ String[] _values = _value==null?(String[])null:this.getValues(_value);
+ return _values;
+ }
+
+ public String[] getValues(final LiteralArray literalArray) {
+ ArrayList<String> _arrayList = new ArrayList<String>();
+ final ArrayList<String> result = _arrayList;
+ EList<Literal> _literals = literalArray.getLiterals();
+ final Procedure1<Literal> _function = new Procedure1<Literal>() {
+ public void apply(final Literal l) {
+ String _value = ConfigExtension.this.getValue(l);
+ result.add(_value);
+ }
+ };
+ IterableExtensions.<Literal>forEach(_literals, _function);
+ ArrayList<String> _xifexpression = null;
+ boolean _isEmpty = result.isEmpty();
+ boolean _not = (!_isEmpty);
+ if (_not) {
+ _xifexpression = result;
+ } else {
+ _xifexpression = null;
+ }
+ return ((String[])Conversions.unwrapArray(_xifexpression, String.class));
+ }
+
+ public String getValue(final Literal literal) {
+ String _switchResult = null;
+ boolean _matched = false;
+ if (!_matched) {
+ if (literal instanceof BooleanLiteral) {
+ final BooleanLiteral _booleanLiteral = (BooleanLiteral)literal;
+ _matched=true;
+ boolean _isIsTrue = _booleanLiteral.isIsTrue();
+ String _valueOf = String.valueOf(_isIsTrue);
+ _switchResult = _valueOf;
+ }
+ }
+ if (!_matched) {
+ if (literal instanceof IntLiteral) {
+ final IntLiteral _intLiteral = (IntLiteral)literal;
+ _matched=true;
+ long _value = _intLiteral.getValue();
+ String _valueOf = String.valueOf(_value);
+ _switchResult = _valueOf;
+ }
+ }
+ if (!_matched) {
+ if (literal instanceof RealLiteral) {
+ final RealLiteral _realLiteral = (RealLiteral)literal;
+ _matched=true;
+ double _value = _realLiteral.getValue();
+ String _valueOf = String.valueOf(_value);
+ _switchResult = _valueOf;
+ }
+ }
+ if (!_matched) {
+ if (literal instanceof StringLiteral) {
+ final StringLiteral _stringLiteral = (StringLiteral)literal;
+ _matched=true;
+ String _value = _stringLiteral.getValue();
+ String _valueOf = String.valueOf(_value);
+ _switchResult = _valueOf;
+ }
+ }
+ return _switchResult;
+ }
+
+ public List<AttrInstanceConfig> getConfigAttributes(final ActorInstance ai) {
+ String _path = ai.getPath();
+ ActorInstanceConfig config = ConfigHelper.path2aiConfMap.get(_path);
+ List<AttrInstanceConfig> _xifexpression = null;
+ boolean _notEquals = (!Objects.equal(config, null));
+ if (_notEquals) {
+ EList<AttrInstanceConfig> _attributes = config.getAttributes();
+ _xifexpression = _attributes;
+ } else {
+ ArrayList<AttrInstanceConfig> _arrayList = new ArrayList<AttrInstanceConfig>();
+ _xifexpression = _arrayList;
+ }
+ return _xifexpression;
+ }
+
+ public List<PortInstanceConfig> getConfigPorts(final ActorInstance ai) {
+ ArrayList<PortInstanceConfig> _arrayList = new ArrayList<PortInstanceConfig>();
+ final ArrayList<PortInstanceConfig> result = _arrayList;
+ String _path = ai.getPath();
+ ActorInstanceConfig config = ConfigHelper.path2aiConfMap.get(_path);
+ EList<PortInstanceConfig> _ports = config==null?(EList<PortInstanceConfig>)null:config.getPorts();
+ final Procedure1<PortInstanceConfig> _function = new Procedure1<PortInstanceConfig>() {
+ public void apply(final PortInstanceConfig portConf) {
+ result.add(portConf);
+ }
+ };
+ if (_ports!=null) IterableExtensions.<PortInstanceConfig>forEach(_ports, _function);
+ return result;
+ }
+
+ public boolean hasVariableService(final SubSystemClass ssc) {
+ SubSystemConfig _subSystemConfig = this.getSubSystemConfig(ssc);
+ DynamicConfig _dynConfig = _subSystemConfig==null?(DynamicConfig)null:_subSystemConfig.getDynConfig();
+ boolean _notEquals = (!Objects.equal(_dynConfig, null));
+ return _notEquals;
+ }
+
+ public List<AttrClassConfig> getAllAttrConfigFlat(final ActorClass ac) {
+ ArrayList<AttrClassConfig> _arrayList = new ArrayList<AttrClassConfig>();
+ ArrayList<AttrClassConfig> result = _arrayList;
+ ActorClassConfig _classConfig = this.getClassConfig(ac);
+ boolean _notEquals = (!Objects.equal(_classConfig, null));
+ if (_notEquals) {
+ LinkedList<AttrClassConfig> _linkedList = new LinkedList<AttrClassConfig>();
+ LinkedList<AttrClassConfig> stack = _linkedList;
+ ActorClassConfig _classConfig_1 = this.getClassConfig(ac);
+ EList<AttrClassConfig> _attributes = _classConfig_1.getAttributes();
+ stack.addAll(_attributes);
+ boolean _isEmpty = stack.isEmpty();
+ boolean _not = (!_isEmpty);
+ boolean _while = _not;
+ while (_while) {
+ {
+ AttrClassConfig c = stack.pop();
+ result.add(c);
+ EList<AttrClassConfig> _attributes_1 = c.getAttributes();
+ stack.addAll(_attributes_1);
+ }
+ boolean _isEmpty_1 = stack.isEmpty();
+ boolean _not_1 = (!_isEmpty_1);
+ _while = _not_1;
+ }
+ }
+ return result;
+ }
+
+ public Iterable<AttrInstanceConfig> getAttrDynConfigs(final SubSystemClass ssc, final boolean read, final boolean write) {
+ List<AttrInstanceConfig> _get = ConfigHelper.ssc2attrInstConfMap.get(ssc);
+ final Function1<AttrInstanceConfig,Boolean> _function = new Function1<AttrInstanceConfig,Boolean>() {
+ public Boolean apply(final AttrInstanceConfig c) {
+ boolean _and = false;
+ boolean _isDynConfig = c.isDynConfig();
+ if (!_isDynConfig) {
+ _and = false;
+ } else {
+ boolean _or = false;
+ boolean _and_1 = false;
+ if (!read) {
+ _and_1 = false;
+ } else {
+ boolean _isReadOnly = c.isReadOnly();
+ _and_1 = (read && _isReadOnly);
+ }
+ if (_and_1) {
+ _or = true;
+ } else {
+ boolean _and_2 = false;
+ if (!write) {
+ _and_2 = false;
+ } else {
+ boolean _isReadOnly_1 = c.isReadOnly();
+ boolean _not = (!_isReadOnly_1);
+ _and_2 = (write && _not);
+ }
+ _or = (_and_1 || _and_2);
+ }
+ _and = (_isDynConfig && _or);
+ }
+ return Boolean.valueOf(_and);
+ }
+ };
+ Iterable<AttrInstanceConfig> _filter = IterableExtensions.<AttrInstanceConfig>filter(_get, _function);
+ return _filter;
+ }
+
+ public List<String> getPath(final AttrConfig config, final boolean ss, final boolean actor, final boolean dc, final boolean attr) {
+ LinkedList<String> _linkedList = new LinkedList<String>();
+ LinkedList<String> result = _linkedList;
+ AttrConfig c = config;
+ EObject _eContainer = c.eContainer();
+ boolean _while = (_eContainer instanceof AttrConfig);
+ while (_while) {
+ {
+ EObject _eContainer_1 = c.eContainer();
+ c = ((AttrConfig) _eContainer_1);
+ if (dc) {
+ Attribute _attribute = c.getAttribute();
+ String _name = _attribute.getName();
+ result.addFirst(_name);
+ }
+ }
+ EObject _eContainer_1 = c.eContainer();
+ _while = (_eContainer_1 instanceof AttrConfig);
+ }
+ EObject _eContainer_1 = c.eContainer();
+ if ((_eContainer_1 instanceof ActorInstanceConfig)) {
+ EObject _eContainer_2 = c.eContainer();
+ ActorInstanceConfig aic = ((ActorInstanceConfig) _eContainer_2);
+ if (actor) {
+ RefPath _path = aic.getPath();
+ EList<String> _refs = _path.getRefs();
+ result.addAll(0, _refs);
+ }
+ if (ss) {
+ SubSystemClass _root = aic.getRoot();
+ String _name = _root.getName();
+ result.addFirst(_name);
+ }
+ } else {
+ EObject _eContainer_3 = c.eContainer();
+ if ((_eContainer_3 instanceof ActorClassConfig)) {
+ EObject _eContainer_4 = c.eContainer();
+ ActorClassConfig ac = ((ActorClassConfig) _eContainer_4);
+ if (actor) {
+ ActorClass _actor = ac.getActor();
+ String _name_1 = _actor.getName();
+ result.addFirst(_name_1);
+ }
+ }
+ }
+ if (attr) {
+ Attribute _attribute = config.getAttribute();
+ String _name_2 = _attribute.getName();
+ result.add(_name_2);
+ }
+ return result;
+ }
+
+ public String toPath(final Iterable<String> path, final String pathDelim) {
+ String _path = ConfigHelper.toPath(path, pathDelim);
+ return _path;
+ }
+
+ public HashSet<Attribute> getDynConfigAttributes(final ActorClass ac, final boolean read, final boolean write) {
+ HashSet<Attribute> _hashSet = new HashSet<Attribute>();
+ final HashSet<Attribute> result = _hashSet;
+ List<ActorInstanceConfig> _get = ConfigHelper.ac2aiConfMap.get(ac);
+ final Procedure1<ActorInstanceConfig> _function = new Procedure1<ActorInstanceConfig>() {
+ public void apply(final ActorInstanceConfig aiConf) {
+ EList<AttrInstanceConfig> _attributes = aiConf.getAttributes();
+ final Function1<AttrInstanceConfig,Boolean> _function = new Function1<AttrInstanceConfig,Boolean>() {
+ public Boolean apply(final AttrInstanceConfig c) {
+ boolean _and = false;
+ boolean _isDynConfig = c.isDynConfig();
+ if (!_isDynConfig) {
+ _and = false;
+ } else {
+ boolean _or = false;
+ boolean _and_1 = false;
+ if (!read) {
+ _and_1 = false;
+ } else {
+ boolean _isReadOnly = c.isReadOnly();
+ _and_1 = (read && _isReadOnly);
+ }
+ if (_and_1) {
+ _or = true;
+ } else {
+ boolean _and_2 = false;
+ if (!write) {
+ _and_2 = false;
+ } else {
+ boolean _isReadOnly_1 = c.isReadOnly();
+ boolean _not = (!_isReadOnly_1);
+ _and_2 = (write && _not);
+ }
+ _or = (_and_1 || _and_2);
+ }
+ _and = (_isDynConfig && _or);
+ }
+ return Boolean.valueOf(_and);
+ }
+ };
+ Iterable<AttrInstanceConfig> _filter = IterableExtensions.<AttrInstanceConfig>filter(_attributes, _function);
+ final Procedure1<AttrInstanceConfig> _function_1 = new Procedure1<AttrInstanceConfig>() {
+ public void apply(final AttrInstanceConfig dynConf) {
+ Attribute _attribute = dynConf.getAttribute();
+ result.add(_attribute);
+ }
+ };
+ IterableExtensions.<AttrInstanceConfig>forEach(_filter, _function_1);
+ }
+ };
+ if (_get!=null) IterableExtensions.<ActorInstanceConfig>forEach(_get, _function);
+ return result;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericActorClassGenerator.java b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericActorClassGenerator.java
index c7e15e886..fb9ff2024 100644
--- a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericActorClassGenerator.java
+++ b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericActorClassGenerator.java
@@ -1,90 +1,90 @@
-package org.eclipse.etrice.generator.generic;
-
-import com.google.inject.Inject;
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.core.room.SAPRef;
-import org.eclipse.etrice.core.room.SPPRef;
-import org.eclipse.etrice.core.room.ServiceImplementation;
-import org.eclipse.etrice.generator.generic.ILanguageExtension;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtext.util.Pair;
-import org.eclipse.xtext.util.Tuples;
-
-@SuppressWarnings("all")
-public class GenericActorClassGenerator {
- @Inject
- private ILanguageExtension langExt;
-
- @Inject
- private RoomExtensions roomExt;
-
- public String genInterfaceItemConstants(final ExpandedActorClass xpac, final ActorClass ac) {
- List<Port> _xifexpression = null;
- boolean _usesInheritance = this.langExt.usesInheritance();
- if (_usesInheritance) {
- List<Port> _endPorts = this.roomExt.getEndPorts(ac);
- _xifexpression = _endPorts;
- } else {
- List<Port> _allEndPorts = this.roomExt.getAllEndPorts(ac);
- _xifexpression = _allEndPorts;
- }
- List<Port> endPorts = _xifexpression;
- List<SAPRef> _xifexpression_1 = null;
- boolean _usesInheritance_1 = this.langExt.usesInheritance();
- if (_usesInheritance_1) {
- EList<SAPRef> _strSAPs = ac.getStrSAPs();
- _xifexpression_1 = _strSAPs;
- } else {
- List<SAPRef> _allSAPs = this.roomExt.getAllSAPs(ac);
- _xifexpression_1 = _allSAPs;
- }
- List<SAPRef> strSAPs = _xifexpression_1;
- List<ServiceImplementation> _xifexpression_2 = null;
- boolean _usesInheritance_2 = this.langExt.usesInheritance();
- if (_usesInheritance_2) {
- EList<ServiceImplementation> _serviceImplementations = ac.getServiceImplementations();
- _xifexpression_2 = _serviceImplementations;
- } else {
- List<ServiceImplementation> _allServiceImplementations = this.roomExt.getAllServiceImplementations(ac);
- _xifexpression_2 = _allServiceImplementations;
- }
- List<ServiceImplementation> svcImpls = _xifexpression_2;
- ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
- ArrayList<Pair<String,String>> list = _arrayList;
- for (final Port ep : endPorts) {
- String _name = ep.getName();
- String _plus = ("IFITEM_" + _name);
- int _interfaceItemLocalId = xpac.getInterfaceItemLocalId(ep);
- int _plus_1 = (1 + _interfaceItemLocalId);
- String _string = Integer.valueOf(_plus_1).toString();
- Pair<String,String> _pair = Tuples.<String, String>pair(_plus, _string);
- list.add(_pair);
- }
- for (final SAPRef sap : strSAPs) {
- String _name_1 = sap.getName();
- String _plus_2 = ("IFITEM_" + _name_1);
- int _interfaceItemLocalId_1 = xpac.getInterfaceItemLocalId(sap);
- int _plus_3 = (1 + _interfaceItemLocalId_1);
- String _string_1 = Integer.valueOf(_plus_3).toString();
- Pair<String,String> _pair_1 = Tuples.<String, String>pair(_plus_2, _string_1);
- list.add(_pair_1);
- }
- for (final ServiceImplementation svc : svcImpls) {
- SPPRef _spp = svc.getSpp();
- String _name_2 = _spp.getName();
- String _plus_4 = ("IFITEM_" + _name_2);
- SPPRef _spp_1 = svc.getSpp();
- int _interfaceItemLocalId_2 = xpac.getInterfaceItemLocalId(_spp_1);
- int _plus_5 = (1 + _interfaceItemLocalId_2);
- String _string_2 = Integer.valueOf(_plus_5).toString();
- Pair<String,String> _pair_2 = Tuples.<String, String>pair(_plus_4, _string_2);
- list.add(_pair_2);
- }
- return this.langExt.genEnumeration("interface_items", list);
- }
-}
+package org.eclipse.etrice.generator.generic;
+
+import com.google.inject.Inject;
+import java.util.ArrayList;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.Port;
+import org.eclipse.etrice.core.room.SAPRef;
+import org.eclipse.etrice.core.room.SPPRef;
+import org.eclipse.etrice.core.room.ServiceImplementation;
+import org.eclipse.etrice.generator.generic.ILanguageExtension;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtext.util.Pair;
+import org.eclipse.xtext.util.Tuples;
+
+@SuppressWarnings("all")
+public class GenericActorClassGenerator {
+ @Inject
+ private ILanguageExtension langExt;
+
+ @Inject
+ private RoomExtensions roomExt;
+
+ public String genInterfaceItemConstants(final ExpandedActorClass xpac, final ActorClass ac) {
+ List<Port> _xifexpression = null;
+ boolean _usesInheritance = this.langExt.usesInheritance();
+ if (_usesInheritance) {
+ List<Port> _endPorts = this.roomExt.getEndPorts(ac);
+ _xifexpression = _endPorts;
+ } else {
+ List<Port> _allEndPorts = this.roomExt.getAllEndPorts(ac);
+ _xifexpression = _allEndPorts;
+ }
+ List<Port> endPorts = _xifexpression;
+ List<SAPRef> _xifexpression_1 = null;
+ boolean _usesInheritance_1 = this.langExt.usesInheritance();
+ if (_usesInheritance_1) {
+ EList<SAPRef> _strSAPs = ac.getStrSAPs();
+ _xifexpression_1 = _strSAPs;
+ } else {
+ List<SAPRef> _allSAPs = this.roomExt.getAllSAPs(ac);
+ _xifexpression_1 = _allSAPs;
+ }
+ List<SAPRef> strSAPs = _xifexpression_1;
+ List<ServiceImplementation> _xifexpression_2 = null;
+ boolean _usesInheritance_2 = this.langExt.usesInheritance();
+ if (_usesInheritance_2) {
+ EList<ServiceImplementation> _serviceImplementations = ac.getServiceImplementations();
+ _xifexpression_2 = _serviceImplementations;
+ } else {
+ List<ServiceImplementation> _allServiceImplementations = this.roomExt.getAllServiceImplementations(ac);
+ _xifexpression_2 = _allServiceImplementations;
+ }
+ List<ServiceImplementation> svcImpls = _xifexpression_2;
+ ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
+ ArrayList<Pair<String,String>> list = _arrayList;
+ for (final Port ep : endPorts) {
+ String _name = ep.getName();
+ String _plus = ("IFITEM_" + _name);
+ int _interfaceItemLocalId = xpac.getInterfaceItemLocalId(ep);
+ int _plus_1 = (1 + _interfaceItemLocalId);
+ String _string = Integer.valueOf(_plus_1).toString();
+ Pair<String,String> _pair = Tuples.<String, String>pair(_plus, _string);
+ list.add(_pair);
+ }
+ for (final SAPRef sap : strSAPs) {
+ String _name_1 = sap.getName();
+ String _plus_2 = ("IFITEM_" + _name_1);
+ int _interfaceItemLocalId_1 = xpac.getInterfaceItemLocalId(sap);
+ int _plus_3 = (1 + _interfaceItemLocalId_1);
+ String _string_1 = Integer.valueOf(_plus_3).toString();
+ Pair<String,String> _pair_1 = Tuples.<String, String>pair(_plus_2, _string_1);
+ list.add(_pair_1);
+ }
+ for (final ServiceImplementation svc : svcImpls) {
+ SPPRef _spp = svc.getSpp();
+ String _name_2 = _spp.getName();
+ String _plus_4 = ("IFITEM_" + _name_2);
+ SPPRef _spp_1 = svc.getSpp();
+ int _interfaceItemLocalId_2 = xpac.getInterfaceItemLocalId(_spp_1);
+ int _plus_5 = (1 + _interfaceItemLocalId_2);
+ String _string_2 = Integer.valueOf(_plus_5).toString();
+ Pair<String,String> _pair_2 = Tuples.<String, String>pair(_plus_4, _string_2);
+ list.add(_pair_2);
+ }
+ return this.langExt.genEnumeration("interface_items", list);
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericProtocolClassGenerator.java b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericProtocolClassGenerator.java
index 01364a614..66a2003d5 100644
--- a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericProtocolClassGenerator.java
+++ b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericProtocolClassGenerator.java
@@ -1,119 +1,119 @@
-package org.eclipse.etrice.generator.generic;
-
-import com.google.inject.Inject;
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.etrice.core.room.GeneralProtocolClass;
-import org.eclipse.etrice.core.room.InterfaceItem;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.MessageFromIf;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.SAPRef;
-import org.eclipse.etrice.core.room.SPPRef;
-import org.eclipse.etrice.generator.generic.ILanguageExtension;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtext.util.Pair;
-import org.eclipse.xtext.util.Tuples;
-
-@SuppressWarnings("all")
-public class GenericProtocolClassGenerator {
- @Inject
- private ILanguageExtension langExt;
-
- @Inject
- private RoomExtensions roomExt;
-
- public String genMessageIDs(final ProtocolClass pc) {
- int offset = 0;
- ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
- ArrayList<Pair<String,String>> list = _arrayList;
- String _name = pc.getName();
- String _memberInDeclaration = this.langExt.memberInDeclaration(_name, "MSG_MIN");
- String _string = Integer.valueOf(offset).toString();
- Pair<String,String> _pair = Tuples.<String, String>pair(_memberInDeclaration, _string);
- list.add(_pair);
- List<Message> _allOutgoingMessages = this.roomExt.getAllOutgoingMessages(pc);
- for (final Message msg : _allOutgoingMessages) {
- {
- int _plus = (offset + 1);
- offset = _plus;
- String _name_1 = pc.getName();
- String _name_2 = msg.getName();
- String _plus_1 = ("OUT_" + _name_2);
- String _memberInDeclaration_1 = this.langExt.memberInDeclaration(_name_1, _plus_1);
- String _string_1 = Integer.valueOf(offset).toString();
- Pair<String,String> _pair_1 = Tuples.<String, String>pair(_memberInDeclaration_1, _string_1);
- list.add(_pair_1);
- }
- }
- List<Message> _allIncomingMessages = this.roomExt.getAllIncomingMessages(pc);
- for (final Message msg_1 : _allIncomingMessages) {
- {
- int _plus = (offset + 1);
- offset = _plus;
- String _name_1 = pc.getName();
- String _name_2 = msg_1.getName();
- String _plus_1 = ("IN_" + _name_2);
- String _memberInDeclaration_1 = this.langExt.memberInDeclaration(_name_1, _plus_1);
- String _string_1 = Integer.valueOf(offset).toString();
- Pair<String,String> _pair_1 = Tuples.<String, String>pair(_memberInDeclaration_1, _string_1);
- list.add(_pair_1);
- }
- }
- int _plus = (offset + 1);
- offset = _plus;
- String _name_1 = pc.getName();
- String _memberInDeclaration_1 = this.langExt.memberInDeclaration(_name_1, "MSG_MAX");
- String _string_1 = Integer.valueOf(offset).toString();
- Pair<String,String> _pair_1 = Tuples.<String, String>pair(_memberInDeclaration_1, _string_1);
- list.add(_pair_1);
- String _name_2 = pc.getName();
- String _memberInDeclaration_2 = this.langExt.memberInDeclaration(_name_2, "msg_ids");
- return this.langExt.genEnumeration(_memberInDeclaration_2, list);
- }
-
- public String getMessageID(final MessageFromIf mif) {
- Message _message = mif.getMessage();
- InterfaceItem _from = mif.getFrom();
- return this.getMessageID(_message, _from);
- }
-
- public String getMessageID(final Message msg, final InterfaceItem item) {
- if ((item instanceof Port)) {
- Port p = ((Port) item);
- String _xifexpression = null;
- boolean _isConjugated = p.isConjugated();
- if (_isConjugated) {
- _xifexpression = "OUT_";
- } else {
- _xifexpression = "IN_";
- }
- String direction = _xifexpression;
- GeneralProtocolClass _protocol = p.getProtocol();
- String _name = _protocol.getName();
- String _name_1 = msg.getName();
- String _plus = (direction + _name_1);
- return this.langExt.memberInUse(_name, _plus);
- } else {
- if ((item instanceof SAPRef)) {
- SAPRef sap = ((SAPRef) item);
- ProtocolClass _protocol_1 = sap.getProtocol();
- String _name_2 = _protocol_1.getName();
- String _name_3 = msg.getName();
- String _plus_1 = ("OUT_" + _name_3);
- return this.langExt.memberInUse(_name_2, _plus_1);
- } else {
- if ((item instanceof SPPRef)) {
- SPPRef spp = ((SPPRef) item);
- ProtocolClass _protocol_2 = spp.getProtocol();
- String _name_4 = _protocol_2.getName();
- String _name_5 = msg.getName();
- String _plus_2 = ("IN_" + _name_5);
- return this.langExt.memberInUse(_name_4, _plus_2);
- }
- }
- }
- return "unknown interface item";
- }
-}
+package org.eclipse.etrice.generator.generic;
+
+import com.google.inject.Inject;
+import java.util.ArrayList;
+import java.util.List;
+import org.eclipse.etrice.core.room.GeneralProtocolClass;
+import org.eclipse.etrice.core.room.InterfaceItem;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.MessageFromIf;
+import org.eclipse.etrice.core.room.Port;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.SAPRef;
+import org.eclipse.etrice.core.room.SPPRef;
+import org.eclipse.etrice.generator.generic.ILanguageExtension;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtext.util.Pair;
+import org.eclipse.xtext.util.Tuples;
+
+@SuppressWarnings("all")
+public class GenericProtocolClassGenerator {
+ @Inject
+ private ILanguageExtension langExt;
+
+ @Inject
+ private RoomExtensions roomExt;
+
+ public String genMessageIDs(final ProtocolClass pc) {
+ int offset = 0;
+ ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
+ ArrayList<Pair<String,String>> list = _arrayList;
+ String _name = pc.getName();
+ String _memberInDeclaration = this.langExt.memberInDeclaration(_name, "MSG_MIN");
+ String _string = Integer.valueOf(offset).toString();
+ Pair<String,String> _pair = Tuples.<String, String>pair(_memberInDeclaration, _string);
+ list.add(_pair);
+ List<Message> _allOutgoingMessages = this.roomExt.getAllOutgoingMessages(pc);
+ for (final Message msg : _allOutgoingMessages) {
+ {
+ int _plus = (offset + 1);
+ offset = _plus;
+ String _name_1 = pc.getName();
+ String _name_2 = msg.getName();
+ String _plus_1 = ("OUT_" + _name_2);
+ String _memberInDeclaration_1 = this.langExt.memberInDeclaration(_name_1, _plus_1);
+ String _string_1 = Integer.valueOf(offset).toString();
+ Pair<String,String> _pair_1 = Tuples.<String, String>pair(_memberInDeclaration_1, _string_1);
+ list.add(_pair_1);
+ }
+ }
+ List<Message> _allIncomingMessages = this.roomExt.getAllIncomingMessages(pc);
+ for (final Message msg_1 : _allIncomingMessages) {
+ {
+ int _plus = (offset + 1);
+ offset = _plus;
+ String _name_1 = pc.getName();
+ String _name_2 = msg_1.getName();
+ String _plus_1 = ("IN_" + _name_2);
+ String _memberInDeclaration_1 = this.langExt.memberInDeclaration(_name_1, _plus_1);
+ String _string_1 = Integer.valueOf(offset).toString();
+ Pair<String,String> _pair_1 = Tuples.<String, String>pair(_memberInDeclaration_1, _string_1);
+ list.add(_pair_1);
+ }
+ }
+ int _plus = (offset + 1);
+ offset = _plus;
+ String _name_1 = pc.getName();
+ String _memberInDeclaration_1 = this.langExt.memberInDeclaration(_name_1, "MSG_MAX");
+ String _string_1 = Integer.valueOf(offset).toString();
+ Pair<String,String> _pair_1 = Tuples.<String, String>pair(_memberInDeclaration_1, _string_1);
+ list.add(_pair_1);
+ String _name_2 = pc.getName();
+ String _memberInDeclaration_2 = this.langExt.memberInDeclaration(_name_2, "msg_ids");
+ return this.langExt.genEnumeration(_memberInDeclaration_2, list);
+ }
+
+ public String getMessageID(final MessageFromIf mif) {
+ Message _message = mif.getMessage();
+ InterfaceItem _from = mif.getFrom();
+ return this.getMessageID(_message, _from);
+ }
+
+ public String getMessageID(final Message msg, final InterfaceItem item) {
+ if ((item instanceof Port)) {
+ Port p = ((Port) item);
+ String _xifexpression = null;
+ boolean _isConjugated = p.isConjugated();
+ if (_isConjugated) {
+ _xifexpression = "OUT_";
+ } else {
+ _xifexpression = "IN_";
+ }
+ String direction = _xifexpression;
+ GeneralProtocolClass _protocol = p.getProtocol();
+ String _name = _protocol.getName();
+ String _name_1 = msg.getName();
+ String _plus = (direction + _name_1);
+ return this.langExt.memberInUse(_name, _plus);
+ } else {
+ if ((item instanceof SAPRef)) {
+ SAPRef sap = ((SAPRef) item);
+ ProtocolClass _protocol_1 = sap.getProtocol();
+ String _name_2 = _protocol_1.getName();
+ String _name_3 = msg.getName();
+ String _plus_1 = ("OUT_" + _name_3);
+ return this.langExt.memberInUse(_name_2, _plus_1);
+ } else {
+ if ((item instanceof SPPRef)) {
+ SPPRef spp = ((SPPRef) item);
+ ProtocolClass _protocol_2 = spp.getProtocol();
+ String _name_4 = _protocol_2.getName();
+ String _name_5 = msg.getName();
+ String _plus_2 = ("IN_" + _name_5);
+ return this.langExt.memberInUse(_name_4, _plus_2);
+ }
+ }
+ }
+ return "unknown interface item";
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericStateMachineGenerator.java b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericStateMachineGenerator.java
index 8307dd3e6..37a70ec95 100644
--- a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericStateMachineGenerator.java
+++ b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/GenericStateMachineGenerator.java
@@ -1,1392 +1,1392 @@
-package org.eclipse.etrice.generator.generic;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ActiveTrigger;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedRefinedState;
-import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.ActorCommunicationType;
-import org.eclipse.etrice.core.room.DetailCode;
-import org.eclipse.etrice.core.room.Guard;
-import org.eclipse.etrice.core.room.GuardedTransition;
-import org.eclipse.etrice.core.room.InterfaceItem;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.MessageFromIf;
-import org.eclipse.etrice.core.room.NonInitialTransition;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.core.room.Transition;
-import org.eclipse.etrice.core.room.Trigger;
-import org.eclipse.etrice.core.room.TriggeredTransition;
-import org.eclipse.etrice.generator.base.AbstractGenerator;
-import org.eclipse.etrice.generator.base.CodegenHelpers;
-import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator;
-import org.eclipse.etrice.generator.generic.GenericProtocolClassGenerator;
-import org.eclipse.etrice.generator.generic.ILanguageExtension;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.util.Pair;
-import org.eclipse.xtext.util.Tuples;
-import org.eclipse.xtext.xbase.lib.Functions.Function1;
-import org.eclipse.xtext.xbase.lib.IterableExtensions;
-
-@SuppressWarnings("all")
-public class GenericStateMachineGenerator {
- @Inject
- protected ILanguageExtension langExt;
-
- @Inject
- protected RoomExtensions _roomExtensions;
-
- @Inject
- protected GenericProtocolClassGenerator pcGen;
-
- @Inject
- protected AbstractTransitionChainGenerator languageGen;
-
- private String genStateIdConstants(final ExpandedActorClass xpac) {
- final ActorClass ac = xpac.getActorClass();
- int _xifexpression = (int) 0;
- boolean _usesInheritance = this.langExt.usesInheritance();
- if (_usesInheritance) {
- int _numberOfInheritedBaseStates = this._roomExtensions.getNumberOfInheritedBaseStates(ac);
- _xifexpression = _numberOfInheritedBaseStates;
- } else {
- _xifexpression = 0;
- }
- int offset = (2 + _xifexpression);
- List<State> _xifexpression_1 = null;
- boolean _usesInheritance_1 = this.langExt.usesInheritance();
- if (_usesInheritance_1) {
- StateGraph _stateMachine = ac.getStateMachine();
- List<State> _baseStateList = this._roomExtensions.getBaseStateList(_stateMachine);
- _xifexpression_1 = _baseStateList;
- } else {
- StateGraph _stateMachine_1 = xpac.getStateMachine();
- List<State> _baseStateList_1 = this._roomExtensions.getBaseStateList(_stateMachine_1);
- _xifexpression_1 = _baseStateList_1;
- }
- List<State> baseStates = _xifexpression_1;
- ArrayList<State> _leafStatesLast = this._roomExtensions.getLeafStatesLast(baseStates);
- baseStates = _leafStatesLast;
- ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
- ArrayList<Pair<String,String>> list = _arrayList;
- boolean _usesInheritance_2 = this.langExt.usesInheritance();
- boolean _not = (!_usesInheritance_2);
- if (_not) {
- Pair<String,String> _pair = Tuples.<String, String>pair("NO_STATE", "0");
- list.add(_pair);
- Pair<String,String> _pair_1 = Tuples.<String, String>pair("STATE_TOP", "1");
- list.add(_pair_1);
- }
- for (final State state : baseStates) {
- {
- String _stateId = this._roomExtensions.getStateId(state);
- String _string = Integer.valueOf(offset).toString();
- Pair<String,String> _pair_2 = Tuples.<String, String>pair(_stateId, _string);
- list.add(_pair_2);
- int _plus = (offset + 1);
- offset = _plus;
- }
- }
- return this.langExt.genEnumeration("state_ids", list);
- }
-
- private String genTransitionChainConstants(final ExpandedActorClass xpac) {
- final ActorClass ac = xpac.getActorClass();
- EList<TransitionChain> _xifexpression = null;
- boolean _usesInheritance = this.langExt.usesInheritance();
- if (_usesInheritance) {
- EList<TransitionChain> _ownTransitionChains = xpac.getOwnTransitionChains();
- _xifexpression = _ownTransitionChains;
- } else {
- EList<TransitionChain> _transitionChains = xpac.getTransitionChains();
- _xifexpression = _transitionChains;
- }
- EList<TransitionChain> chains = _xifexpression;
- int _xifexpression_1 = (int) 0;
- boolean _usesInheritance_1 = this.langExt.usesInheritance();
- if (_usesInheritance_1) {
- EList<TransitionChain> _transitionChains_1 = xpac.getTransitionChains();
- int _size = _transitionChains_1.size();
- int _size_1 = chains.size();
- int _minus = (_size - _size_1);
- _xifexpression_1 = _minus;
- } else {
- _xifexpression_1 = 0;
- }
- int offset = _xifexpression_1;
- ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
- ArrayList<Pair<String,String>> list = _arrayList;
- for (final TransitionChain chain : chains) {
- {
- int _plus = (offset + 1);
- offset = _plus;
- String _chainId = this._roomExtensions.getChainId(chain);
- String _string = Integer.valueOf(offset).toString();
- Pair<String,String> _pair = Tuples.<String, String>pair(_chainId, _string);
- list.add(_pair);
- }
- }
- return this.langExt.genEnumeration("chain_ids", list);
- }
-
- private String genTriggerConstants(final ExpandedActorClass xpac) {
- final ActorClass ac = xpac.getActorClass();
- EList<MessageFromIf> _xifexpression = null;
- boolean _usesInheritance = this.langExt.usesInheritance();
- if (_usesInheritance) {
- EList<MessageFromIf> _ownTriggers = xpac.getOwnTriggers();
- _xifexpression = _ownTriggers;
- } else {
- EList<MessageFromIf> _triggers = xpac.getTriggers();
- _xifexpression = _triggers;
- }
- final EList<MessageFromIf> triggers = _xifexpression;
- ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
- final ArrayList<Pair<String,String>> list = _arrayList;
- Pair<String,String> _pair = Tuples.<String, String>pair("POLLING", "0");
- list.add(_pair);
- for (final MessageFromIf mif : triggers) {
- String _triggerCodeName = xpac.getTriggerCodeName(mif);
- InterfaceItem _from = mif.getFrom();
- String _name = _from.getName();
- String _plus = ("IFITEM_" + _name);
- String _plus_1 = (_plus + " + EVT_SHIFT*");
- String _messageID = this.pcGen.getMessageID(mif);
- String _plus_2 = (_plus_1 + _messageID);
- Pair<String,String> _pair_1 = Tuples.<String, String>pair(_triggerCodeName, _plus_2);
- list.add(_pair_1);
- }
- return this.langExt.genEnumeration("triggers", list);
- }
-
- public CharSequence genStateMachine(final ExpandedActorClass xpac) {
- CharSequence _xblockexpression = null;
- {
- final ActorClass ac = xpac.getActorClass();
- ActorCommunicationType _commType = ac.getCommType();
- final boolean async = Objects.equal(_commType, ActorCommunicationType.ASYNCHRONOUS);
- ActorCommunicationType _commType_1 = ac.getCommType();
- final boolean eventDriven = Objects.equal(_commType_1, ActorCommunicationType.EVENT_DRIVEN);
- ActorCommunicationType _commType_2 = ac.getCommType();
- final boolean dataDriven = Objects.equal(_commType_2, ActorCommunicationType.DATA_DRIVEN);
- boolean _or = false;
- if (async) {
- _or = true;
- } else {
- _or = (async || eventDriven);
- }
- final boolean handleEvents = _or;
- StringConcatenation _builder = new StringConcatenation();
- _builder.newLine();
- _builder.append("/* state IDs */");
- _builder.newLine();
- String _genStateIdConstants = this.genStateIdConstants(xpac);
- _builder.append(_genStateIdConstants, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/* transition chains */");
- _builder.newLine();
- String _genTransitionChainConstants = this.genTransitionChainConstants(xpac);
- _builder.append(_genTransitionChainConstants, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/* triggers */");
- _builder.newLine();
- String _genTriggerConstants = this.genTriggerConstants(xpac);
- _builder.append(_genTriggerConstants, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- CharSequence _genExtra = this.genExtra(xpac);
- _builder.append(_genExtra, "");
- _builder.newLineIfNotEmpty();
- _builder.newLine();
- _builder.append("/* Entry and Exit Codes */");
- _builder.newLine();
- {
- StateGraph _stateMachine = xpac.getStateMachine();
- List<State> _stateList = this._roomExtensions.getStateList(_stateMachine);
- for(final State state : _stateList) {
- {
- boolean _or_1 = false;
- boolean _usesInheritance = this.langExt.usesInheritance();
- boolean _not = (!_usesInheritance);
- if (_not) {
- _or_1 = true;
- } else {
- boolean _isOwnObject = xpac.isOwnObject(state);
- _or_1 = (_not || _isOwnObject);
- }
- if (_or_1) {
- CharSequence _genActionCodeMethods = this.genActionCodeMethods(xpac, state);
- _builder.append(_genActionCodeMethods, "");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- _builder.newLine();
- _builder.append("/* Action Codes */");
- _builder.newLine();
- {
- StateGraph _stateMachine_1 = xpac.getStateMachine();
- List<Transition> _transitionList = this._roomExtensions.getTransitionList(_stateMachine_1);
- for(final Transition tr : _transitionList) {
- {
- boolean _and = false;
- boolean _or_2 = false;
- boolean _usesInheritance_1 = this.langExt.usesInheritance();
- boolean _not_1 = (!_usesInheritance_1);
- if (_not_1) {
- _or_2 = true;
- } else {
- boolean _isOwnObject_1 = xpac.isOwnObject(tr);
- _or_2 = (_not_1 || _isOwnObject_1);
- }
- if (!_or_2) {
- _and = false;
- } else {
- boolean _hasActionCode = this._roomExtensions.hasActionCode(tr);
- _and = (_or_2 && _hasActionCode);
- }
- if (_and) {
- TransitionChain _chain = xpac.getChain(tr);
- Transition start = _chain.getTransition();
- _builder.newLineIfNotEmpty();
- boolean _and_1 = false;
- if (!(start instanceof NonInitialTransition)) {
- _and_1 = false;
- } else {
- boolean _not_2 = (!(start instanceof GuardedTransition));
- _and_1 = ((start instanceof NonInitialTransition) && _not_2);
- }
- boolean hasArgs = _and_1;
- _builder.newLineIfNotEmpty();
- String _accessLevelProtected = this.langExt.accessLevelProtected();
- _builder.append(_accessLevelProtected, "");
- _builder.append("void ");
- String _actionCodeOperationName = CodegenHelpers.getActionCodeOperationName(tr);
- _builder.append(_actionCodeOperationName, "");
- _builder.append("(");
- String _name = ac.getName();
- String _selfPointer = this.langExt.selfPointer(_name, hasArgs);
- _builder.append(_selfPointer, "");
- {
- if (hasArgs) {
- _builder.append("InterfaceItemBase ifitem");
- String _generateArgumentList = this.languageGen.generateArgumentList(xpac, tr);
- _builder.append(_generateArgumentList, "");
- }
- }
- _builder.append(") {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- AbstractGenerator _instance = AbstractGenerator.getInstance();
- DetailCode _action = tr.getAction();
- String _translatedCode = _instance.getTranslatedCode(_action);
- _builder.append(_translatedCode, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- _builder.newLine();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* calls exit codes while exiting from the current state to one of its");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* parent states while remembering the history");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @param current - the current state");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @param to - the final parent state");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @param handler - entry and exit codes are called only if not handler (for handler TransitionPoints)");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- String _accessLevelPrivate = this.langExt.accessLevelPrivate();
- _builder.append(_accessLevelPrivate, "");
- _builder.append("void exitTo(");
- String _name_1 = ac.getName();
- String _selfPointer_1 = this.langExt.selfPointer(_name_1, true);
- _builder.append(_selfPointer_1, "");
- _builder.append("int current, int to, boolean handler) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("while (current!=to) {");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("switch (current) {");
- _builder.newLine();
- {
- StateGraph _stateMachine_2 = xpac.getStateMachine();
- List<State> _baseStateList = this._roomExtensions.getBaseStateList(_stateMachine_2);
- for(final State state_1 : _baseStateList) {
- _builder.append("\t\t\t");
- _builder.append("case ");
- String _stateId = this._roomExtensions.getStateId(state_1);
- _builder.append(_stateId, " ");
- _builder.append(":");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("\t");
- {
- boolean _hasExitCode = this._roomExtensions.hasExitCode(state_1);
- if (_hasExitCode) {
- _builder.append("if (!handler) ");
- String _exitCodeOperationName = CodegenHelpers.getExitCodeOperationName(state_1);
- _builder.append(_exitCodeOperationName, " ");
- _builder.append("(");
- String _selfPointer_2 = this.langExt.selfPointer(false);
- _builder.append(_selfPointer_2, " ");
- _builder.append(");");
- }
- }
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("\t");
- String _memberAccess = this.langExt.memberAccess();
- _builder.append(_memberAccess, " ");
- _builder.append("history[");
- String _parentStateId = CodegenHelpers.getParentStateId(state_1);
- _builder.append(_parentStateId, " ");
- _builder.append("] = ");
- String _stateId_1 = this._roomExtensions.getStateId(state_1);
- _builder.append(_stateId_1, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("current = ");
- String _parentStateId_1 = CodegenHelpers.getParentStateId(state_1);
- _builder.append(_parentStateId_1, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("break;");
- _builder.newLine();
- }
- }
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* calls action, entry and exit codes along a transition chain. The generic data are cast to typed data");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* matching the trigger of this chain. The ID of the final state is returned");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @param chain - the chain ID");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @param generic_data - the generic data pointer");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @return the ID of the final state");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- String _accessLevelPrivate_1 = this.langExt.accessLevelPrivate();
- _builder.append(_accessLevelPrivate_1, "");
- _builder.append("int executeTransitionChain(");
- String _name_2 = ac.getName();
- String _selfPointer_3 = this.langExt.selfPointer(_name_2, true);
- _builder.append(_selfPointer_3, "");
- _builder.append("int chain");
- {
- if (handleEvents) {
- _builder.append(", InterfaceItemBase ifitem, ");
- String _voidPointer = this.langExt.voidPointer();
- _builder.append(_voidPointer, "");
- _builder.append(" generic_data");
- }
- }
- _builder.append(") {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("switch (chain) {");
- _builder.newLine();
- _builder.append("\t\t");
- EList<TransitionChain> allchains = xpac.getTransitionChains();
- _builder.newLineIfNotEmpty();
- {
- for(final TransitionChain tc : allchains) {
- _builder.append("\t\t");
- _builder.append("case ");
- String _chainId = this._roomExtensions.getChainId(tc);
- _builder.append(_chainId, " ");
- _builder.append(":");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("\t");
- String _generateExecuteChain = this.languageGen.generateExecuteChain(xpac, tc);
- _builder.append(_generateExecuteChain, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("return NO_STATE;");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("/**");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* calls entry codes while entering a state\'s history. The ID of the final leaf state is returned");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @param state - the state which is entered");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @param handler - entry code is executed if not handler");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("* @return - the ID of the final leaf state");
- _builder.newLine();
- _builder.append(" ");
- _builder.append("*/");
- _builder.newLine();
- String _accessLevelPrivate_2 = this.langExt.accessLevelPrivate();
- _builder.append(_accessLevelPrivate_2, "");
- _builder.append("int enterHistory(");
- String _name_3 = ac.getName();
- String _selfPointer_4 = this.langExt.selfPointer(_name_3, true);
- _builder.append(_selfPointer_4, "");
- _builder.append("int state, boolean handler, boolean skip_entry) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("while (");
- String _booleanConstant = this.langExt.booleanConstant(true);
- _builder.append(_booleanConstant, " ");
- _builder.append(") {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("switch (state) {");
- _builder.newLine();
- {
- StateGraph _stateMachine_3 = xpac.getStateMachine();
- List<State> _baseStateList_1 = this._roomExtensions.getBaseStateList(_stateMachine_3);
- for(final State state_2 : _baseStateList_1) {
- _builder.append("\t\t\t");
- _builder.append("case ");
- String _stateId_2 = this._roomExtensions.getStateId(state_2);
- _builder.append(_stateId_2, " ");
- _builder.append(":");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("\t");
- {
- boolean _hasEntryCode = this._roomExtensions.hasEntryCode(state_2);
- if (_hasEntryCode) {
- _builder.append("if (!(skip_entry || handler)) ");
- String _entryCodeOperationName = CodegenHelpers.getEntryCodeOperationName(state_2);
- _builder.append(_entryCodeOperationName, " ");
- _builder.append("(");
- String _selfPointer_5 = this.langExt.selfPointer(false);
- _builder.append(_selfPointer_5, " ");
- _builder.append(");");
- }
- }
- _builder.newLineIfNotEmpty();
- {
- boolean _isLeaf = this._roomExtensions.isLeaf(state_2);
- if (_isLeaf) {
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("// in leaf state: return state id");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("return ");
- String _stateId_3 = this._roomExtensions.getStateId(state_2);
- _builder.append(_stateId_3, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("// state has a sub graph");
- _builder.newLine();
- {
- StateGraph _subgraph = state_2.getSubgraph();
- boolean _hasInitTransition = this._roomExtensions.hasInitTransition(_subgraph);
- if (_hasInitTransition) {
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("// with init transition");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("if (");
- String _memberAccess_1 = this.langExt.memberAccess();
- _builder.append(_memberAccess_1, " ");
- _builder.append("history[");
- String _stateId_4 = this._roomExtensions.getStateId(state_2);
- _builder.append(_stateId_4, " ");
- _builder.append("]==NO_STATE) {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("\t");
- StateGraph _subgraph_1 = state_2.getSubgraph();
- Transition sub_initt = this._roomExtensions.getInitTransition(_subgraph_1);
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("state = executeTransitionChain(");
- String _selfPointer_6 = this.langExt.selfPointer(true);
- _builder.append(_selfPointer_6, " ");
- TransitionChain _chain_1 = xpac.getChain(sub_initt);
- String _chainId_1 = this._roomExtensions.getChainId(_chain_1);
- _builder.append(_chainId_1, " ");
- {
- if (handleEvents) {
- _builder.append(", ");
- String _nullPointer = this.langExt.nullPointer();
- _builder.append(_nullPointer, " ");
- _builder.append(", ");
- String _nullPointer_1 = this.langExt.nullPointer();
- _builder.append(_nullPointer_1, " ");
- }
- }
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("else {");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("state = ");
- String _memberAccess_2 = this.langExt.memberAccess();
- _builder.append(_memberAccess_2, " ");
- _builder.append("history[");
- String _stateId_5 = this._roomExtensions.getStateId(state_2);
- _builder.append(_stateId_5, " ");
- _builder.append("];");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- } else {
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("// without init transition");
- _builder.newLine();
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("state = ");
- String _memberAccess_3 = this.langExt.memberAccess();
- _builder.append(_memberAccess_3, " ");
- _builder.append("history[");
- String _stateId_6 = this._roomExtensions.getStateId(state_2);
- _builder.append(_stateId_6, " ");
- _builder.append("];");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t\t\t");
- _builder.append("\t");
- _builder.append("break;");
- _builder.newLine();
- }
- }
- }
- }
- _builder.append("\t\t\t");
- _builder.append("case STATE_TOP:");
- _builder.newLine();
- _builder.append("\t\t\t\t");
- _builder.append("state = ");
- String _memberAccess_4 = this.langExt.memberAccess();
- _builder.append(_memberAccess_4, " ");
- _builder.append("history[STATE_TOP];");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t\t\t");
- _builder.append("break;");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("skip_entry = ");
- String _booleanConstant_1 = this.langExt.booleanConstant(false);
- _builder.append(_booleanConstant_1, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("//return NO_STATE; // required by CDT but detected as unreachable by JDT because of while (true)");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- {
- boolean _usesInheritance_2 = this.langExt.usesInheritance();
- if (_usesInheritance_2) {
- String _accessLevelPublic = this.langExt.accessLevelPublic();
- _builder.append(_accessLevelPublic, "");
- } else {
- String _accessLevelPrivate_3 = this.langExt.accessLevelPrivate();
- _builder.append(_accessLevelPrivate_3, "");
- }
- }
- _builder.append("void executeInitTransition(");
- String _name_4 = ac.getName();
- String _selfPointer_7 = this.langExt.selfPointer(_name_4, false);
- _builder.append(_selfPointer_7, "");
- _builder.append(") {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- StateGraph _stateMachine_4 = xpac.getStateMachine();
- Transition initt = this._roomExtensions.getInitTransition(_stateMachine_4);
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("int chain = ");
- TransitionChain _chain_2 = xpac.getChain(initt);
- String _chainId_2 = this._roomExtensions.getChainId(_chain_2);
- _builder.append(_chainId_2, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("int next = executeTransitionChain(");
- String _selfPointer_8 = this.langExt.selfPointer(true);
- _builder.append(_selfPointer_8, " ");
- _builder.append("chain");
- {
- if (handleEvents) {
- _builder.append(", ");
- String _nullPointer_2 = this.langExt.nullPointer();
- _builder.append(_nullPointer_2, " ");
- _builder.append(", ");
- String _nullPointer_3 = this.langExt.nullPointer();
- _builder.append(_nullPointer_3, " ");
- }
- }
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("next = enterHistory(");
- String _selfPointer_9 = this.langExt.selfPointer(true);
- _builder.append(_selfPointer_9, " ");
- _builder.append("next, ");
- String _booleanConstant_2 = this.langExt.booleanConstant(false);
- _builder.append(_booleanConstant_2, " ");
- _builder.append(", ");
- String _booleanConstant_3 = this.langExt.booleanConstant(false);
- _builder.append(_booleanConstant_3, " ");
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("setState(");
- String _selfPointer_10 = this.langExt.selfPointer(true);
- _builder.append(_selfPointer_10, " ");
- _builder.append("next);");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- _builder.newLine();
- _builder.append("/* receiveEvent contains the main implementation of the FSM */");
- _builder.newLine();
- {
- boolean _usesInheritance_3 = this.langExt.usesInheritance();
- if (_usesInheritance_3) {
- String _accessLevelPublic_1 = this.langExt.accessLevelPublic();
- _builder.append(_accessLevelPublic_1, "");
- } else {
- String _accessLevelPrivate_4 = this.langExt.accessLevelPrivate();
- _builder.append(_accessLevelPrivate_4, "");
- }
- }
- _builder.append("void receiveEvent(");
- String _name_5 = ac.getName();
- String _selfPointer_11 = this.langExt.selfPointer(_name_5, handleEvents);
- _builder.append(_selfPointer_11, "");
- {
- if (handleEvents) {
- _builder.append("InterfaceItemBase ifitem, int evt, ");
- String _voidPointer_1 = this.langExt.voidPointer();
- _builder.append(_voidPointer_1, "");
- _builder.append(" generic_data");
- }
- }
- _builder.append(") {");
- _builder.newLineIfNotEmpty();
- {
- if (async) {
- _builder.append("\t");
- _builder.append("int trigger = (ifitem==");
- String _nullPointer_4 = this.langExt.nullPointer();
- _builder.append(_nullPointer_4, " ");
- _builder.append(")? POLLING : ");
- {
- boolean _usesInheritance_4 = this.langExt.usesInheritance();
- if (_usesInheritance_4) {
- _builder.append("ifitem.getLocalId()");
- } else {
- _builder.append("ifitem->localId");
- }
- }
- _builder.append(" + EVT_SHIFT*evt;");
- _builder.newLineIfNotEmpty();
- } else {
- if (eventDriven) {
- _builder.append("\t");
- _builder.append("int trigger = ");
- {
- boolean _usesInheritance_5 = this.langExt.usesInheritance();
- if (_usesInheritance_5) {
- _builder.append("ifitem.getLocalId()");
- } else {
- _builder.append("ifitem->localId");
- }
- }
- _builder.append(" + EVT_SHIFT*evt;");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- _builder.append("\t");
- _builder.append("int chain = NOT_CAUGHT;");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("int catching_state = NO_STATE;");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("boolean is_handler = ");
- String _booleanConstant_4 = this.langExt.booleanConstant(false);
- _builder.append(_booleanConstant_4, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("boolean skip_entry = ");
- String _booleanConstant_5 = this.langExt.booleanConstant(false);
- _builder.append(_booleanConstant_5, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.newLine();
- {
- if (handleEvents) {
- _builder.append("\t");
- _builder.append("if (!handleSystemEvent(ifitem, evt, generic_data)) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- CharSequence _genStateSwitch = this.genStateSwitch(xpac);
- _builder.append(_genStateSwitch, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- } else {
- _builder.append("\t");
- CharSequence _genStateSwitch_1 = this.genStateSwitch(xpac);
- _builder.append(_genStateSwitch_1, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- _builder.append("\t");
- _builder.append("if (chain != NOT_CAUGHT) {");
- _builder.newLine();
- _builder.append("\t\t");
- _builder.append("exitTo(");
- String _selfPointer_12 = this.langExt.selfPointer(true);
- _builder.append(_selfPointer_12, " ");
- String _memberAccess_5 = this.langExt.memberAccess();
- _builder.append(_memberAccess_5, " ");
- _builder.append("state, catching_state, is_handler);");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("int next = executeTransitionChain(");
- String _selfPointer_13 = this.langExt.selfPointer(true);
- _builder.append(_selfPointer_13, " ");
- _builder.append("chain");
- {
- if (handleEvents) {
- _builder.append(", ifitem, generic_data");
- }
- }
- _builder.append(");");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("next = enterHistory(");
- String _selfPointer_14 = this.langExt.selfPointer(true);
- _builder.append(_selfPointer_14, " ");
- _builder.append("next, is_handler, skip_entry);");
- _builder.newLineIfNotEmpty();
- _builder.append("\t\t");
- _builder.append("setState(");
- String _selfPointer_15 = this.langExt.selfPointer(true);
- _builder.append(_selfPointer_15, " ");
- _builder.append("next);");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- _builder.append("}");
- _builder.newLine();
- _builder.append("\t ");
- _builder.newLine();
- _builder.append("//******************************************");
- _builder.newLine();
- _builder.append("// END of generated code for FSM");
- _builder.newLine();
- _builder.append("//******************************************");
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private CharSequence genStateSwitch(final ExpandedActorClass xpac) {
- CharSequence _xblockexpression = null;
- {
- ActorClass _actorClass = xpac.getActorClass();
- ActorCommunicationType _commType = _actorClass.getCommType();
- boolean async = Objects.equal(_commType, ActorCommunicationType.ASYNCHRONOUS);
- ActorClass _actorClass_1 = xpac.getActorClass();
- ActorCommunicationType _commType_1 = _actorClass_1.getCommType();
- boolean eventDriven = Objects.equal(_commType_1, ActorCommunicationType.EVENT_DRIVEN);
- ActorClass _actorClass_2 = xpac.getActorClass();
- ActorCommunicationType _commType_2 = _actorClass_2.getCommType();
- boolean dataDriven = Objects.equal(_commType_2, ActorCommunicationType.DATA_DRIVEN);
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("switch (");
- String _memberAccess = this.langExt.memberAccess();
- _builder.append(_memberAccess, "");
- _builder.append("state) {");
- _builder.newLineIfNotEmpty();
- {
- StateGraph _stateMachine = xpac.getStateMachine();
- List<State> _leafStateList = this._roomExtensions.getLeafStateList(_stateMachine);
- for(final State state : _leafStateList) {
- _builder.append("\t");
- _builder.append("case ");
- String _stateId = this._roomExtensions.getStateId(state);
- _builder.append(_stateId, " ");
- _builder.append(":");
- _builder.newLineIfNotEmpty();
- {
- if (async) {
- _builder.append("\t");
- _builder.append("\t");
- EList<ActiveTrigger> atlist = xpac.getActiveTriggers(state);
- _builder.newLineIfNotEmpty();
- {
- boolean _isEmpty = atlist.isEmpty();
- boolean _not = (!_isEmpty);
- if (_not) {
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("switch(trigger) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("case POLLING:");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("\t");
- CharSequence _genDataDrivenTriggers = this.genDataDrivenTriggers(xpac, state);
- _builder.append(_genDataDrivenTriggers, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("break;");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("\t");
- CharSequence _genEventDrivenTriggers = this.genEventDrivenTriggers(xpac, state, atlist);
- _builder.append(_genEventDrivenTriggers, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- } else {
- _builder.append("\t");
- _builder.append("\t");
- CharSequence _genDataDrivenTriggers_1 = this.genDataDrivenTriggers(xpac, state);
- _builder.append(_genDataDrivenTriggers_1, " ");
- _builder.newLineIfNotEmpty();
- }
- }
- } else {
- if (dataDriven) {
- _builder.append("\t");
- _builder.append("\t");
- CharSequence _genDataDrivenTriggers_2 = this.genDataDrivenTriggers(xpac, state);
- _builder.append(_genDataDrivenTriggers_2, " ");
- _builder.newLineIfNotEmpty();
- } else {
- if (eventDriven) {
- _builder.append("\t");
- _builder.append("\t");
- EList<ActiveTrigger> atlist_1 = xpac.getActiveTriggers(state);
- _builder.newLineIfNotEmpty();
- {
- boolean _isEmpty_1 = atlist_1.isEmpty();
- boolean _not_1 = (!_isEmpty_1);
- if (_not_1) {
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("switch(trigger) {");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("\t");
- CharSequence _genEventDrivenTriggers_1 = this.genEventDrivenTriggers(xpac, state, atlist_1);
- _builder.append(_genEventDrivenTriggers_1, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- }
- }
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("break;");
- _builder.newLine();
- }
- }
- _builder.append("}");
- _builder.newLine();
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private CharSequence genDataDrivenTriggers(final ExpandedActorClass xpac, final State state) {
- StringConcatenation _builder = new StringConcatenation();
- CharSequence _genDoCodes = this.genDoCodes(state);
- _builder.append(_genDoCodes, "");
- _builder.newLineIfNotEmpty();
- List<Transition> _outgoingTransitionsHierarchical = this._roomExtensions.getOutgoingTransitionsHierarchical(xpac, state);
- final Function1<Transition,Boolean> _function = new Function1<Transition,Boolean>() {
- public Boolean apply(final Transition t) {
- return Boolean.valueOf((t instanceof GuardedTransition));
- }
- };
- Iterable<Transition> transitions = IterableExtensions.<Transition>filter(_outgoingTransitionsHierarchical, _function);
- _builder.newLineIfNotEmpty();
- {
- for(final Transition tr : transitions) {
- _builder.append("if (");
- AbstractGenerator _instance = AbstractGenerator.getInstance();
- DetailCode _guard = ((GuardedTransition) tr).getGuard();
- String _translatedCode = _instance.getTranslatedCode(_guard);
- _builder.append(_translatedCode, "");
- _builder.append(")");
- _builder.newLineIfNotEmpty();
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t");
- TransitionChain chain = xpac.getChain(tr);
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("chain = ");
- String _chainId = this._roomExtensions.getChainId(chain);
- _builder.append(_chainId, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("catching_state = ");
- String _contextId = this._roomExtensions.getContextId(chain);
- _builder.append(_contextId, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- {
- boolean _isHandler = chain.isHandler();
- if (_isHandler) {
- _builder.append("is_handler = TRUE;");
- }
- }
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- {
- boolean _isSkipEntry = chain.isSkipEntry();
- if (_isSkipEntry) {
- _builder.append("skip_entry = TRUE;");
- }
- }
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- {
- Transition _last = IterableExtensions.<Transition>last(transitions);
- boolean _notEquals = (!Objects.equal(tr, _last));
- if (_notEquals) {
- _builder.append("else ");
- _builder.newLine();
- }
- }
- }
- }
- return _builder;
- }
-
- private CharSequence genEventDrivenTriggers(final ExpandedActorClass xpac, final State state, final List<ActiveTrigger> atlist) {
- StringConcatenation _builder = new StringConcatenation();
- {
- for(final ActiveTrigger at : atlist) {
- _builder.append("case ");
- String _trigger = at.getTrigger();
- String _triggerCodeName = xpac.getTriggerCodeName(_trigger);
- _builder.append(_triggerCodeName, "");
- _builder.append(":");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- boolean needData = this._roomExtensions.hasGuard(xpac, at);
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- {
- if (needData) {
- _builder.append("{ ");
- Message _msg = at.getMsg();
- String _typedDataDefinition = this.langExt.getTypedDataDefinition(_msg);
- _builder.append(_typedDataDefinition, " ");
- }
- }
- _builder.newLineIfNotEmpty();
- {
- EList<TriggeredTransition> _transitions = at.getTransitions();
- boolean _hasElements = false;
- for(final TriggeredTransition tt : _transitions) {
- if (!_hasElements) {
- _hasElements = true;
- } else {
- _builder.appendImmediate(" else ", " ");
- }
- _builder.append("\t");
- TransitionChain chain = xpac.getChain(tt);
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- Transition _transition = chain.getTransition();
- String _trigger_1 = at.getTrigger();
- CharSequence _guard = this.guard(_transition, _trigger_1, xpac);
- _builder.append(_guard, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("{");
- _builder.newLine();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("chain = ");
- String _chainId = this._roomExtensions.getChainId(chain);
- _builder.append(_chainId, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- _builder.append("catching_state = ");
- String _contextId = this._roomExtensions.getContextId(chain);
- _builder.append(_contextId, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- {
- boolean _isHandler = chain.isHandler();
- if (_isHandler) {
- _builder.append("is_handler = ");
- String _booleanConstant = this.langExt.booleanConstant(true);
- _builder.append(_booleanConstant, " ");
- _builder.append(";");
- }
- }
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("\t");
- {
- boolean _isSkipEntry = chain.isSkipEntry();
- if (_isSkipEntry) {
- _builder.append("skip_entry = ");
- String _booleanConstant_1 = this.langExt.booleanConstant(true);
- _builder.append(_booleanConstant_1, " ");
- _builder.append(";");
- }
- }
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("}");
- _builder.newLine();
- }
- }
- _builder.append("\t");
- {
- if (needData) {
- _builder.append("}");
- }
- }
- _builder.newLineIfNotEmpty();
- _builder.append("break;");
- _builder.newLine();
- }
- }
- return _builder;
- }
-
- public CharSequence genExtra(final ExpandedActorClass xpac) {
- StringConcatenation _builder = new StringConcatenation();
- return _builder;
- }
-
- private CharSequence _guard(final TriggeredTransition tt, final String trigger, final ExpandedActorClass ac) {
- CharSequence _xblockexpression = null;
- {
- EList<Trigger> _triggers = tt.getTriggers();
- final Function1<Trigger,Boolean> _function = new Function1<Trigger,Boolean>() {
- public Boolean apply(final Trigger e) {
- boolean _isMatching = ac.isMatching(e, trigger);
- return Boolean.valueOf(_isMatching);
- }
- };
- Trigger tr = IterableExtensions.<Trigger>findFirst(_triggers, _function);
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _hasGuard = this._roomExtensions.hasGuard(tr);
- if (_hasGuard) {
- _builder.append("if (");
- AbstractGenerator _instance = AbstractGenerator.getInstance();
- Guard _guard = tr.getGuard();
- DetailCode _guard_1 = _guard.getGuard();
- String _translatedCode = _instance.getTranslatedCode(_guard_1);
- _builder.append(_translatedCode, "");
- _builder.append(")");
- _builder.newLineIfNotEmpty();
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private CharSequence _guard(final Transition t, final String trigger, final ExpandedActorClass ac) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/* error */");
- _builder.newLine();
- return _builder;
- }
-
- private CharSequence genDoCodes(final State state) {
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _hasDoCode = this._roomExtensions.hasDoCode(state);
- if (_hasDoCode) {
- String _doCodeOperationName = CodegenHelpers.getDoCodeOperationName(state);
- _builder.append(_doCodeOperationName, "");
- _builder.append("(self);");
- _builder.newLineIfNotEmpty();
- }
- }
- {
- EObject _eContainer = state.eContainer();
- EObject _eContainer_1 = _eContainer.eContainer();
- if ((_eContainer_1 instanceof State)) {
- EObject _eContainer_2 = state.eContainer();
- EObject _eContainer_3 = _eContainer_2.eContainer();
- CharSequence _genDoCodes = this.genDoCodes(((State) _eContainer_3));
- _builder.append(_genDoCodes, "");
- _builder.newLineIfNotEmpty();
- }
- }
- return _builder;
- }
-
- private CharSequence genActionCodeMethods(final ExpandedActorClass xpac, final State state) {
- CharSequence _xblockexpression = null;
- {
- ActorClass _actorClass = xpac.getActorClass();
- String _name = _actorClass.getName();
- final String selfPtr = this.langExt.selfPointer(_name, false);
- final String entryOp = CodegenHelpers.getEntryCodeOperationName(state);
- final String exitOp = CodegenHelpers.getExitCodeOperationName(state);
- final String doOp = CodegenHelpers.getDoCodeOperationName(state);
- AbstractGenerator _instance = AbstractGenerator.getInstance();
- DetailCode _entryCode = state.getEntryCode();
- String entry = _instance.getTranslatedCode(_entryCode);
- AbstractGenerator _instance_1 = AbstractGenerator.getInstance();
- DetailCode _exitCode = state.getExitCode();
- String exit = _instance_1.getTranslatedCode(_exitCode);
- AbstractGenerator _instance_2 = AbstractGenerator.getInstance();
- DetailCode _doCode = state.getDoCode();
- String docode = _instance_2.getTranslatedCode(_doCode);
- if ((state instanceof ExpandedRefinedState)) {
- final ExpandedRefinedState rs = ((ExpandedRefinedState) state);
- AbstractGenerator _instance_3 = AbstractGenerator.getInstance();
- DetailCode _inheritedEntry = rs.getInheritedEntry();
- final String inhEntry = _instance_3.getTranslatedCode(_inheritedEntry);
- AbstractGenerator _instance_4 = AbstractGenerator.getInstance();
- DetailCode _inheritedExit = rs.getInheritedExit();
- final String inhExit = _instance_4.getTranslatedCode(_inheritedExit);
- AbstractGenerator _instance_5 = AbstractGenerator.getInstance();
- DetailCode _inheritedDo = rs.getInheritedDo();
- final String inhDo = _instance_5.getTranslatedCode(_inheritedDo);
- boolean _usesInheritance = this.langExt.usesInheritance();
- if (_usesInheritance) {
- ActorClass _actorClass_1 = xpac.getActorClass();
- ActorClass _base = _actorClass_1.getBase();
- final String baseName = _base.getName();
- DetailCode _inheritedEntry_1 = rs.getInheritedEntry();
- boolean _empty = this._roomExtensions.empty(_inheritedEntry_1);
- boolean _not = (!_empty);
- if (_not) {
- String _superCall = this.langExt.superCall(baseName, entryOp, "");
- String _plus = (_superCall + entry);
- entry = _plus;
- }
- DetailCode _inheritedExit_1 = rs.getInheritedExit();
- boolean _empty_1 = this._roomExtensions.empty(_inheritedExit_1);
- boolean _not_1 = (!_empty_1);
- if (_not_1) {
- String _superCall_1 = this.langExt.superCall(baseName, exitOp, "");
- String _plus_1 = (exit + _superCall_1);
- exit = _plus_1;
- }
- DetailCode _inheritedDo_1 = rs.getInheritedDo();
- boolean _empty_2 = this._roomExtensions.empty(_inheritedDo_1);
- boolean _not_2 = (!_empty_2);
- if (_not_2) {
- String _superCall_2 = this.langExt.superCall(baseName, doOp, "");
- String _plus_2 = (_superCall_2 + docode);
- docode = _plus_2;
- }
- } else {
- String _plus_3 = (inhEntry + entry);
- entry = _plus_3;
- String _plus_4 = (exit + inhExit);
- exit = _plus_4;
- String _plus_5 = (inhDo + docode);
- docode = _plus_5;
- }
- }
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _isEmpty = entry.isEmpty();
- boolean _not_3 = (!_isEmpty);
- if (_not_3) {
- String _accessLevelProtected = this.langExt.accessLevelProtected();
- _builder.append(_accessLevelProtected, "");
- _builder.append("void ");
- _builder.append(entryOp, "");
- _builder.append("(");
- _builder.append(selfPtr, "");
- _builder.append(") {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append(entry, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- {
- boolean _isEmpty_1 = exit.isEmpty();
- boolean _not_4 = (!_isEmpty_1);
- if (_not_4) {
- String _accessLevelProtected_1 = this.langExt.accessLevelProtected();
- _builder.append(_accessLevelProtected_1, "");
- _builder.append("void ");
- _builder.append(exitOp, "");
- _builder.append("(");
- _builder.append(selfPtr, "");
- _builder.append(") {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append(exit, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- {
- boolean _isEmpty_2 = docode.isEmpty();
- boolean _not_5 = (!_isEmpty_2);
- if (_not_5) {
- String _accessLevelProtected_2 = this.langExt.accessLevelProtected();
- _builder.append(_accessLevelProtected_2, "");
- _builder.append(" void ");
- _builder.append(doOp, "");
- _builder.append("(");
- _builder.append(selfPtr, "");
- _builder.append(") {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append(docode, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- _xblockexpression = (_builder);
- }
- return _xblockexpression;
- }
-
- private CharSequence guard(final Transition tt, final String trigger, final ExpandedActorClass ac) {
- if (tt instanceof TriggeredTransition) {
- return _guard((TriggeredTransition)tt, trigger, ac);
- } else if (tt != null) {
- return _guard(tt, trigger, ac);
- } else {
- throw new IllegalArgumentException("Unhandled parameter types: " +
- Arrays.<Object>asList(tt, trigger, ac).toString());
- }
- }
-}
+package org.eclipse.etrice.generator.generic;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.core.genmodel.etricegen.ActiveTrigger;
+import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.core.genmodel.etricegen.ExpandedRefinedState;
+import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.ActorCommunicationType;
+import org.eclipse.etrice.core.room.DetailCode;
+import org.eclipse.etrice.core.room.Guard;
+import org.eclipse.etrice.core.room.GuardedTransition;
+import org.eclipse.etrice.core.room.InterfaceItem;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.MessageFromIf;
+import org.eclipse.etrice.core.room.NonInitialTransition;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.etrice.core.room.StateGraph;
+import org.eclipse.etrice.core.room.Transition;
+import org.eclipse.etrice.core.room.Trigger;
+import org.eclipse.etrice.core.room.TriggeredTransition;
+import org.eclipse.etrice.generator.base.AbstractGenerator;
+import org.eclipse.etrice.generator.base.CodegenHelpers;
+import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator;
+import org.eclipse.etrice.generator.generic.GenericProtocolClassGenerator;
+import org.eclipse.etrice.generator.generic.ILanguageExtension;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.util.Pair;
+import org.eclipse.xtext.util.Tuples;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@SuppressWarnings("all")
+public class GenericStateMachineGenerator {
+ @Inject
+ protected ILanguageExtension langExt;
+
+ @Inject
+ protected RoomExtensions _roomExtensions;
+
+ @Inject
+ protected GenericProtocolClassGenerator pcGen;
+
+ @Inject
+ protected AbstractTransitionChainGenerator languageGen;
+
+ private String genStateIdConstants(final ExpandedActorClass xpac) {
+ final ActorClass ac = xpac.getActorClass();
+ int _xifexpression = (int) 0;
+ boolean _usesInheritance = this.langExt.usesInheritance();
+ if (_usesInheritance) {
+ int _numberOfInheritedBaseStates = this._roomExtensions.getNumberOfInheritedBaseStates(ac);
+ _xifexpression = _numberOfInheritedBaseStates;
+ } else {
+ _xifexpression = 0;
+ }
+ int offset = (2 + _xifexpression);
+ List<State> _xifexpression_1 = null;
+ boolean _usesInheritance_1 = this.langExt.usesInheritance();
+ if (_usesInheritance_1) {
+ StateGraph _stateMachine = ac.getStateMachine();
+ List<State> _baseStateList = this._roomExtensions.getBaseStateList(_stateMachine);
+ _xifexpression_1 = _baseStateList;
+ } else {
+ StateGraph _stateMachine_1 = xpac.getStateMachine();
+ List<State> _baseStateList_1 = this._roomExtensions.getBaseStateList(_stateMachine_1);
+ _xifexpression_1 = _baseStateList_1;
+ }
+ List<State> baseStates = _xifexpression_1;
+ ArrayList<State> _leafStatesLast = this._roomExtensions.getLeafStatesLast(baseStates);
+ baseStates = _leafStatesLast;
+ ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
+ ArrayList<Pair<String,String>> list = _arrayList;
+ boolean _usesInheritance_2 = this.langExt.usesInheritance();
+ boolean _not = (!_usesInheritance_2);
+ if (_not) {
+ Pair<String,String> _pair = Tuples.<String, String>pair("NO_STATE", "0");
+ list.add(_pair);
+ Pair<String,String> _pair_1 = Tuples.<String, String>pair("STATE_TOP", "1");
+ list.add(_pair_1);
+ }
+ for (final State state : baseStates) {
+ {
+ String _stateId = this._roomExtensions.getStateId(state);
+ String _string = Integer.valueOf(offset).toString();
+ Pair<String,String> _pair_2 = Tuples.<String, String>pair(_stateId, _string);
+ list.add(_pair_2);
+ int _plus = (offset + 1);
+ offset = _plus;
+ }
+ }
+ return this.langExt.genEnumeration("state_ids", list);
+ }
+
+ private String genTransitionChainConstants(final ExpandedActorClass xpac) {
+ final ActorClass ac = xpac.getActorClass();
+ EList<TransitionChain> _xifexpression = null;
+ boolean _usesInheritance = this.langExt.usesInheritance();
+ if (_usesInheritance) {
+ EList<TransitionChain> _ownTransitionChains = xpac.getOwnTransitionChains();
+ _xifexpression = _ownTransitionChains;
+ } else {
+ EList<TransitionChain> _transitionChains = xpac.getTransitionChains();
+ _xifexpression = _transitionChains;
+ }
+ EList<TransitionChain> chains = _xifexpression;
+ int _xifexpression_1 = (int) 0;
+ boolean _usesInheritance_1 = this.langExt.usesInheritance();
+ if (_usesInheritance_1) {
+ EList<TransitionChain> _transitionChains_1 = xpac.getTransitionChains();
+ int _size = _transitionChains_1.size();
+ int _size_1 = chains.size();
+ int _minus = (_size - _size_1);
+ _xifexpression_1 = _minus;
+ } else {
+ _xifexpression_1 = 0;
+ }
+ int offset = _xifexpression_1;
+ ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
+ ArrayList<Pair<String,String>> list = _arrayList;
+ for (final TransitionChain chain : chains) {
+ {
+ int _plus = (offset + 1);
+ offset = _plus;
+ String _chainId = this._roomExtensions.getChainId(chain);
+ String _string = Integer.valueOf(offset).toString();
+ Pair<String,String> _pair = Tuples.<String, String>pair(_chainId, _string);
+ list.add(_pair);
+ }
+ }
+ return this.langExt.genEnumeration("chain_ids", list);
+ }
+
+ private String genTriggerConstants(final ExpandedActorClass xpac) {
+ final ActorClass ac = xpac.getActorClass();
+ EList<MessageFromIf> _xifexpression = null;
+ boolean _usesInheritance = this.langExt.usesInheritance();
+ if (_usesInheritance) {
+ EList<MessageFromIf> _ownTriggers = xpac.getOwnTriggers();
+ _xifexpression = _ownTriggers;
+ } else {
+ EList<MessageFromIf> _triggers = xpac.getTriggers();
+ _xifexpression = _triggers;
+ }
+ final EList<MessageFromIf> triggers = _xifexpression;
+ ArrayList<Pair<String,String>> _arrayList = new ArrayList<Pair<String,String>>();
+ final ArrayList<Pair<String,String>> list = _arrayList;
+ Pair<String,String> _pair = Tuples.<String, String>pair("POLLING", "0");
+ list.add(_pair);
+ for (final MessageFromIf mif : triggers) {
+ String _triggerCodeName = xpac.getTriggerCodeName(mif);
+ InterfaceItem _from = mif.getFrom();
+ String _name = _from.getName();
+ String _plus = ("IFITEM_" + _name);
+ String _plus_1 = (_plus + " + EVT_SHIFT*");
+ String _messageID = this.pcGen.getMessageID(mif);
+ String _plus_2 = (_plus_1 + _messageID);
+ Pair<String,String> _pair_1 = Tuples.<String, String>pair(_triggerCodeName, _plus_2);
+ list.add(_pair_1);
+ }
+ return this.langExt.genEnumeration("triggers", list);
+ }
+
+ public CharSequence genStateMachine(final ExpandedActorClass xpac) {
+ CharSequence _xblockexpression = null;
+ {
+ final ActorClass ac = xpac.getActorClass();
+ ActorCommunicationType _commType = ac.getCommType();
+ final boolean async = Objects.equal(_commType, ActorCommunicationType.ASYNCHRONOUS);
+ ActorCommunicationType _commType_1 = ac.getCommType();
+ final boolean eventDriven = Objects.equal(_commType_1, ActorCommunicationType.EVENT_DRIVEN);
+ ActorCommunicationType _commType_2 = ac.getCommType();
+ final boolean dataDriven = Objects.equal(_commType_2, ActorCommunicationType.DATA_DRIVEN);
+ boolean _or = false;
+ if (async) {
+ _or = true;
+ } else {
+ _or = (async || eventDriven);
+ }
+ final boolean handleEvents = _or;
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.newLine();
+ _builder.append("/* state IDs */");
+ _builder.newLine();
+ String _genStateIdConstants = this.genStateIdConstants(xpac);
+ _builder.append(_genStateIdConstants, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/* transition chains */");
+ _builder.newLine();
+ String _genTransitionChainConstants = this.genTransitionChainConstants(xpac);
+ _builder.append(_genTransitionChainConstants, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/* triggers */");
+ _builder.newLine();
+ String _genTriggerConstants = this.genTriggerConstants(xpac);
+ _builder.append(_genTriggerConstants, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ CharSequence _genExtra = this.genExtra(xpac);
+ _builder.append(_genExtra, "");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("/* Entry and Exit Codes */");
+ _builder.newLine();
+ {
+ StateGraph _stateMachine = xpac.getStateMachine();
+ List<State> _stateList = this._roomExtensions.getStateList(_stateMachine);
+ for(final State state : _stateList) {
+ {
+ boolean _or_1 = false;
+ boolean _usesInheritance = this.langExt.usesInheritance();
+ boolean _not = (!_usesInheritance);
+ if (_not) {
+ _or_1 = true;
+ } else {
+ boolean _isOwnObject = xpac.isOwnObject(state);
+ _or_1 = (_not || _isOwnObject);
+ }
+ if (_or_1) {
+ CharSequence _genActionCodeMethods = this.genActionCodeMethods(xpac, state);
+ _builder.append(_genActionCodeMethods, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ _builder.append("/* Action Codes */");
+ _builder.newLine();
+ {
+ StateGraph _stateMachine_1 = xpac.getStateMachine();
+ List<Transition> _transitionList = this._roomExtensions.getTransitionList(_stateMachine_1);
+ for(final Transition tr : _transitionList) {
+ {
+ boolean _and = false;
+ boolean _or_2 = false;
+ boolean _usesInheritance_1 = this.langExt.usesInheritance();
+ boolean _not_1 = (!_usesInheritance_1);
+ if (_not_1) {
+ _or_2 = true;
+ } else {
+ boolean _isOwnObject_1 = xpac.isOwnObject(tr);
+ _or_2 = (_not_1 || _isOwnObject_1);
+ }
+ if (!_or_2) {
+ _and = false;
+ } else {
+ boolean _hasActionCode = this._roomExtensions.hasActionCode(tr);
+ _and = (_or_2 && _hasActionCode);
+ }
+ if (_and) {
+ TransitionChain _chain = xpac.getChain(tr);
+ Transition start = _chain.getTransition();
+ _builder.newLineIfNotEmpty();
+ boolean _and_1 = false;
+ if (!(start instanceof NonInitialTransition)) {
+ _and_1 = false;
+ } else {
+ boolean _not_2 = (!(start instanceof GuardedTransition));
+ _and_1 = ((start instanceof NonInitialTransition) && _not_2);
+ }
+ boolean hasArgs = _and_1;
+ _builder.newLineIfNotEmpty();
+ String _accessLevelProtected = this.langExt.accessLevelProtected();
+ _builder.append(_accessLevelProtected, "");
+ _builder.append("void ");
+ String _actionCodeOperationName = CodegenHelpers.getActionCodeOperationName(tr);
+ _builder.append(_actionCodeOperationName, "");
+ _builder.append("(");
+ String _name = ac.getName();
+ String _selfPointer = this.langExt.selfPointer(_name, hasArgs);
+ _builder.append(_selfPointer, "");
+ {
+ if (hasArgs) {
+ _builder.append("InterfaceItemBase ifitem");
+ String _generateArgumentList = this.languageGen.generateArgumentList(xpac, tr);
+ _builder.append(_generateArgumentList, "");
+ }
+ }
+ _builder.append(") {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ AbstractGenerator _instance = AbstractGenerator.getInstance();
+ DetailCode _action = tr.getAction();
+ String _translatedCode = _instance.getTranslatedCode(_action);
+ _builder.append(_translatedCode, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.newLine();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* calls exit codes while exiting from the current state to one of its");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* parent states while remembering the history");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @param current - the current state");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @param to - the final parent state");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @param handler - entry and exit codes are called only if not handler (for handler TransitionPoints)");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ String _accessLevelPrivate = this.langExt.accessLevelPrivate();
+ _builder.append(_accessLevelPrivate, "");
+ _builder.append("void exitTo(");
+ String _name_1 = ac.getName();
+ String _selfPointer_1 = this.langExt.selfPointer(_name_1, true);
+ _builder.append(_selfPointer_1, "");
+ _builder.append("int current, int to, boolean handler) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("while (current!=to) {");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("switch (current) {");
+ _builder.newLine();
+ {
+ StateGraph _stateMachine_2 = xpac.getStateMachine();
+ List<State> _baseStateList = this._roomExtensions.getBaseStateList(_stateMachine_2);
+ for(final State state_1 : _baseStateList) {
+ _builder.append("\t\t\t");
+ _builder.append("case ");
+ String _stateId = this._roomExtensions.getStateId(state_1);
+ _builder.append(_stateId, " ");
+ _builder.append(":");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ {
+ boolean _hasExitCode = this._roomExtensions.hasExitCode(state_1);
+ if (_hasExitCode) {
+ _builder.append("if (!handler) ");
+ String _exitCodeOperationName = CodegenHelpers.getExitCodeOperationName(state_1);
+ _builder.append(_exitCodeOperationName, " ");
+ _builder.append("(");
+ String _selfPointer_2 = this.langExt.selfPointer(false);
+ _builder.append(_selfPointer_2, " ");
+ _builder.append(");");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ String _memberAccess = this.langExt.memberAccess();
+ _builder.append(_memberAccess, " ");
+ _builder.append("history[");
+ String _parentStateId = CodegenHelpers.getParentStateId(state_1);
+ _builder.append(_parentStateId, " ");
+ _builder.append("] = ");
+ String _stateId_1 = this._roomExtensions.getStateId(state_1);
+ _builder.append(_stateId_1, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("current = ");
+ String _parentStateId_1 = CodegenHelpers.getParentStateId(state_1);
+ _builder.append(_parentStateId_1, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("break;");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* calls action, entry and exit codes along a transition chain. The generic data are cast to typed data");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* matching the trigger of this chain. The ID of the final state is returned");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @param chain - the chain ID");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @param generic_data - the generic data pointer");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @return the ID of the final state");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ String _accessLevelPrivate_1 = this.langExt.accessLevelPrivate();
+ _builder.append(_accessLevelPrivate_1, "");
+ _builder.append("int executeTransitionChain(");
+ String _name_2 = ac.getName();
+ String _selfPointer_3 = this.langExt.selfPointer(_name_2, true);
+ _builder.append(_selfPointer_3, "");
+ _builder.append("int chain");
+ {
+ if (handleEvents) {
+ _builder.append(", InterfaceItemBase ifitem, ");
+ String _voidPointer = this.langExt.voidPointer();
+ _builder.append(_voidPointer, "");
+ _builder.append(" generic_data");
+ }
+ }
+ _builder.append(") {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("switch (chain) {");
+ _builder.newLine();
+ _builder.append("\t\t");
+ EList<TransitionChain> allchains = xpac.getTransitionChains();
+ _builder.newLineIfNotEmpty();
+ {
+ for(final TransitionChain tc : allchains) {
+ _builder.append("\t\t");
+ _builder.append("case ");
+ String _chainId = this._roomExtensions.getChainId(tc);
+ _builder.append(_chainId, " ");
+ _builder.append(":");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("{");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("\t");
+ String _generateExecuteChain = this.languageGen.generateExecuteChain(xpac, tc);
+ _builder.append(_generateExecuteChain, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("return NO_STATE;");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("/**");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* calls entry codes while entering a state\'s history. The ID of the final leaf state is returned");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @param state - the state which is entered");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @param handler - entry code is executed if not handler");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("* @return - the ID of the final leaf state");
+ _builder.newLine();
+ _builder.append(" ");
+ _builder.append("*/");
+ _builder.newLine();
+ String _accessLevelPrivate_2 = this.langExt.accessLevelPrivate();
+ _builder.append(_accessLevelPrivate_2, "");
+ _builder.append("int enterHistory(");
+ String _name_3 = ac.getName();
+ String _selfPointer_4 = this.langExt.selfPointer(_name_3, true);
+ _builder.append(_selfPointer_4, "");
+ _builder.append("int state, boolean handler, boolean skip_entry) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("while (");
+ String _booleanConstant = this.langExt.booleanConstant(true);
+ _builder.append(_booleanConstant, " ");
+ _builder.append(") {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("switch (state) {");
+ _builder.newLine();
+ {
+ StateGraph _stateMachine_3 = xpac.getStateMachine();
+ List<State> _baseStateList_1 = this._roomExtensions.getBaseStateList(_stateMachine_3);
+ for(final State state_2 : _baseStateList_1) {
+ _builder.append("\t\t\t");
+ _builder.append("case ");
+ String _stateId_2 = this._roomExtensions.getStateId(state_2);
+ _builder.append(_stateId_2, " ");
+ _builder.append(":");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ {
+ boolean _hasEntryCode = this._roomExtensions.hasEntryCode(state_2);
+ if (_hasEntryCode) {
+ _builder.append("if (!(skip_entry || handler)) ");
+ String _entryCodeOperationName = CodegenHelpers.getEntryCodeOperationName(state_2);
+ _builder.append(_entryCodeOperationName, " ");
+ _builder.append("(");
+ String _selfPointer_5 = this.langExt.selfPointer(false);
+ _builder.append(_selfPointer_5, " ");
+ _builder.append(");");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _isLeaf = this._roomExtensions.isLeaf(state_2);
+ if (_isLeaf) {
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("// in leaf state: return state id");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("return ");
+ String _stateId_3 = this._roomExtensions.getStateId(state_2);
+ _builder.append(_stateId_3, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ } else {
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("// state has a sub graph");
+ _builder.newLine();
+ {
+ StateGraph _subgraph = state_2.getSubgraph();
+ boolean _hasInitTransition = this._roomExtensions.hasInitTransition(_subgraph);
+ if (_hasInitTransition) {
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("// with init transition");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("if (");
+ String _memberAccess_1 = this.langExt.memberAccess();
+ _builder.append(_memberAccess_1, " ");
+ _builder.append("history[");
+ String _stateId_4 = this._roomExtensions.getStateId(state_2);
+ _builder.append(_stateId_4, " ");
+ _builder.append("]==NO_STATE) {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ StateGraph _subgraph_1 = state_2.getSubgraph();
+ Transition sub_initt = this._roomExtensions.getInitTransition(_subgraph_1);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("state = executeTransitionChain(");
+ String _selfPointer_6 = this.langExt.selfPointer(true);
+ _builder.append(_selfPointer_6, " ");
+ TransitionChain _chain_1 = xpac.getChain(sub_initt);
+ String _chainId_1 = this._roomExtensions.getChainId(_chain_1);
+ _builder.append(_chainId_1, " ");
+ {
+ if (handleEvents) {
+ _builder.append(", ");
+ String _nullPointer = this.langExt.nullPointer();
+ _builder.append(_nullPointer, " ");
+ _builder.append(", ");
+ String _nullPointer_1 = this.langExt.nullPointer();
+ _builder.append(_nullPointer_1, " ");
+ }
+ }
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("else {");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("state = ");
+ String _memberAccess_2 = this.langExt.memberAccess();
+ _builder.append(_memberAccess_2, " ");
+ _builder.append("history[");
+ String _stateId_5 = this._roomExtensions.getStateId(state_2);
+ _builder.append(_stateId_5, " ");
+ _builder.append("];");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ } else {
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("// without init transition");
+ _builder.newLine();
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("state = ");
+ String _memberAccess_3 = this.langExt.memberAccess();
+ _builder.append(_memberAccess_3, " ");
+ _builder.append("history[");
+ String _stateId_6 = this._roomExtensions.getStateId(state_2);
+ _builder.append(_stateId_6, " ");
+ _builder.append("];");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t\t\t");
+ _builder.append("\t");
+ _builder.append("break;");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ _builder.append("\t\t\t");
+ _builder.append("case STATE_TOP:");
+ _builder.newLine();
+ _builder.append("\t\t\t\t");
+ _builder.append("state = ");
+ String _memberAccess_4 = this.langExt.memberAccess();
+ _builder.append(_memberAccess_4, " ");
+ _builder.append("history[STATE_TOP];");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t\t\t");
+ _builder.append("break;");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("skip_entry = ");
+ String _booleanConstant_1 = this.langExt.booleanConstant(false);
+ _builder.append(_booleanConstant_1, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("//return NO_STATE; // required by CDT but detected as unreachable by JDT because of while (true)");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ {
+ boolean _usesInheritance_2 = this.langExt.usesInheritance();
+ if (_usesInheritance_2) {
+ String _accessLevelPublic = this.langExt.accessLevelPublic();
+ _builder.append(_accessLevelPublic, "");
+ } else {
+ String _accessLevelPrivate_3 = this.langExt.accessLevelPrivate();
+ _builder.append(_accessLevelPrivate_3, "");
+ }
+ }
+ _builder.append("void executeInitTransition(");
+ String _name_4 = ac.getName();
+ String _selfPointer_7 = this.langExt.selfPointer(_name_4, false);
+ _builder.append(_selfPointer_7, "");
+ _builder.append(") {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ StateGraph _stateMachine_4 = xpac.getStateMachine();
+ Transition initt = this._roomExtensions.getInitTransition(_stateMachine_4);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("int chain = ");
+ TransitionChain _chain_2 = xpac.getChain(initt);
+ String _chainId_2 = this._roomExtensions.getChainId(_chain_2);
+ _builder.append(_chainId_2, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("int next = executeTransitionChain(");
+ String _selfPointer_8 = this.langExt.selfPointer(true);
+ _builder.append(_selfPointer_8, " ");
+ _builder.append("chain");
+ {
+ if (handleEvents) {
+ _builder.append(", ");
+ String _nullPointer_2 = this.langExt.nullPointer();
+ _builder.append(_nullPointer_2, " ");
+ _builder.append(", ");
+ String _nullPointer_3 = this.langExt.nullPointer();
+ _builder.append(_nullPointer_3, " ");
+ }
+ }
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("next = enterHistory(");
+ String _selfPointer_9 = this.langExt.selfPointer(true);
+ _builder.append(_selfPointer_9, " ");
+ _builder.append("next, ");
+ String _booleanConstant_2 = this.langExt.booleanConstant(false);
+ _builder.append(_booleanConstant_2, " ");
+ _builder.append(", ");
+ String _booleanConstant_3 = this.langExt.booleanConstant(false);
+ _builder.append(_booleanConstant_3, " ");
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("setState(");
+ String _selfPointer_10 = this.langExt.selfPointer(true);
+ _builder.append(_selfPointer_10, " ");
+ _builder.append("next);");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("/* receiveEvent contains the main implementation of the FSM */");
+ _builder.newLine();
+ {
+ boolean _usesInheritance_3 = this.langExt.usesInheritance();
+ if (_usesInheritance_3) {
+ String _accessLevelPublic_1 = this.langExt.accessLevelPublic();
+ _builder.append(_accessLevelPublic_1, "");
+ } else {
+ String _accessLevelPrivate_4 = this.langExt.accessLevelPrivate();
+ _builder.append(_accessLevelPrivate_4, "");
+ }
+ }
+ _builder.append("void receiveEvent(");
+ String _name_5 = ac.getName();
+ String _selfPointer_11 = this.langExt.selfPointer(_name_5, handleEvents);
+ _builder.append(_selfPointer_11, "");
+ {
+ if (handleEvents) {
+ _builder.append("InterfaceItemBase ifitem, int evt, ");
+ String _voidPointer_1 = this.langExt.voidPointer();
+ _builder.append(_voidPointer_1, "");
+ _builder.append(" generic_data");
+ }
+ }
+ _builder.append(") {");
+ _builder.newLineIfNotEmpty();
+ {
+ if (async) {
+ _builder.append("\t");
+ _builder.append("int trigger = (ifitem==");
+ String _nullPointer_4 = this.langExt.nullPointer();
+ _builder.append(_nullPointer_4, " ");
+ _builder.append(")? POLLING : ");
+ {
+ boolean _usesInheritance_4 = this.langExt.usesInheritance();
+ if (_usesInheritance_4) {
+ _builder.append("ifitem.getLocalId()");
+ } else {
+ _builder.append("ifitem->localId");
+ }
+ }
+ _builder.append(" + EVT_SHIFT*evt;");
+ _builder.newLineIfNotEmpty();
+ } else {
+ if (eventDriven) {
+ _builder.append("\t");
+ _builder.append("int trigger = ");
+ {
+ boolean _usesInheritance_5 = this.langExt.usesInheritance();
+ if (_usesInheritance_5) {
+ _builder.append("ifitem.getLocalId()");
+ } else {
+ _builder.append("ifitem->localId");
+ }
+ }
+ _builder.append(" + EVT_SHIFT*evt;");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ _builder.append("\t");
+ _builder.append("int chain = NOT_CAUGHT;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("int catching_state = NO_STATE;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("boolean is_handler = ");
+ String _booleanConstant_4 = this.langExt.booleanConstant(false);
+ _builder.append(_booleanConstant_4, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("boolean skip_entry = ");
+ String _booleanConstant_5 = this.langExt.booleanConstant(false);
+ _builder.append(_booleanConstant_5, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.newLine();
+ {
+ if (handleEvents) {
+ _builder.append("\t");
+ _builder.append("if (!handleSystemEvent(ifitem, evt, generic_data)) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ CharSequence _genStateSwitch = this.genStateSwitch(xpac);
+ _builder.append(_genStateSwitch, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ } else {
+ _builder.append("\t");
+ CharSequence _genStateSwitch_1 = this.genStateSwitch(xpac);
+ _builder.append(_genStateSwitch_1, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _builder.append("\t");
+ _builder.append("if (chain != NOT_CAUGHT) {");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("exitTo(");
+ String _selfPointer_12 = this.langExt.selfPointer(true);
+ _builder.append(_selfPointer_12, " ");
+ String _memberAccess_5 = this.langExt.memberAccess();
+ _builder.append(_memberAccess_5, " ");
+ _builder.append("state, catching_state, is_handler);");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("int next = executeTransitionChain(");
+ String _selfPointer_13 = this.langExt.selfPointer(true);
+ _builder.append(_selfPointer_13, " ");
+ _builder.append("chain");
+ {
+ if (handleEvents) {
+ _builder.append(", ifitem, generic_data");
+ }
+ }
+ _builder.append(");");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("next = enterHistory(");
+ String _selfPointer_14 = this.langExt.selfPointer(true);
+ _builder.append(_selfPointer_14, " ");
+ _builder.append("next, is_handler, skip_entry);");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ _builder.append("setState(");
+ String _selfPointer_15 = this.langExt.selfPointer(true);
+ _builder.append(_selfPointer_15, " ");
+ _builder.append("next);");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("}");
+ _builder.newLine();
+ _builder.append("\t ");
+ _builder.newLine();
+ _builder.append("//******************************************");
+ _builder.newLine();
+ _builder.append("// END of generated code for FSM");
+ _builder.newLine();
+ _builder.append("//******************************************");
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private CharSequence genStateSwitch(final ExpandedActorClass xpac) {
+ CharSequence _xblockexpression = null;
+ {
+ ActorClass _actorClass = xpac.getActorClass();
+ ActorCommunicationType _commType = _actorClass.getCommType();
+ boolean async = Objects.equal(_commType, ActorCommunicationType.ASYNCHRONOUS);
+ ActorClass _actorClass_1 = xpac.getActorClass();
+ ActorCommunicationType _commType_1 = _actorClass_1.getCommType();
+ boolean eventDriven = Objects.equal(_commType_1, ActorCommunicationType.EVENT_DRIVEN);
+ ActorClass _actorClass_2 = xpac.getActorClass();
+ ActorCommunicationType _commType_2 = _actorClass_2.getCommType();
+ boolean dataDriven = Objects.equal(_commType_2, ActorCommunicationType.DATA_DRIVEN);
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("switch (");
+ String _memberAccess = this.langExt.memberAccess();
+ _builder.append(_memberAccess, "");
+ _builder.append("state) {");
+ _builder.newLineIfNotEmpty();
+ {
+ StateGraph _stateMachine = xpac.getStateMachine();
+ List<State> _leafStateList = this._roomExtensions.getLeafStateList(_stateMachine);
+ for(final State state : _leafStateList) {
+ _builder.append("\t");
+ _builder.append("case ");
+ String _stateId = this._roomExtensions.getStateId(state);
+ _builder.append(_stateId, " ");
+ _builder.append(":");
+ _builder.newLineIfNotEmpty();
+ {
+ if (async) {
+ _builder.append("\t");
+ _builder.append("\t");
+ EList<ActiveTrigger> atlist = xpac.getActiveTriggers(state);
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _isEmpty = atlist.isEmpty();
+ boolean _not = (!_isEmpty);
+ if (_not) {
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("switch(trigger) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("case POLLING:");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ CharSequence _genDataDrivenTriggers = this.genDataDrivenTriggers(xpac, state);
+ _builder.append(_genDataDrivenTriggers, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("break;");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ CharSequence _genEventDrivenTriggers = this.genEventDrivenTriggers(xpac, state, atlist);
+ _builder.append(_genEventDrivenTriggers, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ } else {
+ _builder.append("\t");
+ _builder.append("\t");
+ CharSequence _genDataDrivenTriggers_1 = this.genDataDrivenTriggers(xpac, state);
+ _builder.append(_genDataDrivenTriggers_1, " ");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ } else {
+ if (dataDriven) {
+ _builder.append("\t");
+ _builder.append("\t");
+ CharSequence _genDataDrivenTriggers_2 = this.genDataDrivenTriggers(xpac, state);
+ _builder.append(_genDataDrivenTriggers_2, " ");
+ _builder.newLineIfNotEmpty();
+ } else {
+ if (eventDriven) {
+ _builder.append("\t");
+ _builder.append("\t");
+ EList<ActiveTrigger> atlist_1 = xpac.getActiveTriggers(state);
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _isEmpty_1 = atlist_1.isEmpty();
+ boolean _not_1 = (!_isEmpty_1);
+ if (_not_1) {
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("switch(trigger) {");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("\t");
+ CharSequence _genEventDrivenTriggers_1 = this.genEventDrivenTriggers(xpac, state, atlist_1);
+ _builder.append(_genEventDrivenTriggers_1, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ }
+ }
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("break;");
+ _builder.newLine();
+ }
+ }
+ _builder.append("}");
+ _builder.newLine();
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private CharSequence genDataDrivenTriggers(final ExpandedActorClass xpac, final State state) {
+ StringConcatenation _builder = new StringConcatenation();
+ CharSequence _genDoCodes = this.genDoCodes(state);
+ _builder.append(_genDoCodes, "");
+ _builder.newLineIfNotEmpty();
+ List<Transition> _outgoingTransitionsHierarchical = this._roomExtensions.getOutgoingTransitionsHierarchical(xpac, state);
+ final Function1<Transition,Boolean> _function = new Function1<Transition,Boolean>() {
+ public Boolean apply(final Transition t) {
+ return Boolean.valueOf((t instanceof GuardedTransition));
+ }
+ };
+ Iterable<Transition> transitions = IterableExtensions.<Transition>filter(_outgoingTransitionsHierarchical, _function);
+ _builder.newLineIfNotEmpty();
+ {
+ for(final Transition tr : transitions) {
+ _builder.append("if (");
+ AbstractGenerator _instance = AbstractGenerator.getInstance();
+ DetailCode _guard = ((GuardedTransition) tr).getGuard();
+ String _translatedCode = _instance.getTranslatedCode(_guard);
+ _builder.append(_translatedCode, "");
+ _builder.append(")");
+ _builder.newLineIfNotEmpty();
+ _builder.append("{");
+ _builder.newLine();
+ _builder.append("\t");
+ TransitionChain chain = xpac.getChain(tr);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("chain = ");
+ String _chainId = this._roomExtensions.getChainId(chain);
+ _builder.append(_chainId, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("catching_state = ");
+ String _contextId = this._roomExtensions.getContextId(chain);
+ _builder.append(_contextId, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ {
+ boolean _isHandler = chain.isHandler();
+ if (_isHandler) {
+ _builder.append("is_handler = TRUE;");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ {
+ boolean _isSkipEntry = chain.isSkipEntry();
+ if (_isSkipEntry) {
+ _builder.append("skip_entry = TRUE;");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ {
+ Transition _last = IterableExtensions.<Transition>last(transitions);
+ boolean _notEquals = (!Objects.equal(tr, _last));
+ if (_notEquals) {
+ _builder.append("else ");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ return _builder;
+ }
+
+ private CharSequence genEventDrivenTriggers(final ExpandedActorClass xpac, final State state, final List<ActiveTrigger> atlist) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ for(final ActiveTrigger at : atlist) {
+ _builder.append("case ");
+ String _trigger = at.getTrigger();
+ String _triggerCodeName = xpac.getTriggerCodeName(_trigger);
+ _builder.append(_triggerCodeName, "");
+ _builder.append(":");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ boolean needData = this._roomExtensions.hasGuard(xpac, at);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ {
+ if (needData) {
+ _builder.append("{ ");
+ Message _msg = at.getMsg();
+ String _typedDataDefinition = this.langExt.getTypedDataDefinition(_msg);
+ _builder.append(_typedDataDefinition, " ");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ {
+ EList<TriggeredTransition> _transitions = at.getTransitions();
+ boolean _hasElements = false;
+ for(final TriggeredTransition tt : _transitions) {
+ if (!_hasElements) {
+ _hasElements = true;
+ } else {
+ _builder.appendImmediate(" else ", " ");
+ }
+ _builder.append("\t");
+ TransitionChain chain = xpac.getChain(tt);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ Transition _transition = chain.getTransition();
+ String _trigger_1 = at.getTrigger();
+ CharSequence _guard = this.guard(_transition, _trigger_1, xpac);
+ _builder.append(_guard, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("{");
+ _builder.newLine();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("chain = ");
+ String _chainId = this._roomExtensions.getChainId(chain);
+ _builder.append(_chainId, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ _builder.append("catching_state = ");
+ String _contextId = this._roomExtensions.getContextId(chain);
+ _builder.append(_contextId, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ {
+ boolean _isHandler = chain.isHandler();
+ if (_isHandler) {
+ _builder.append("is_handler = ");
+ String _booleanConstant = this.langExt.booleanConstant(true);
+ _builder.append(_booleanConstant, " ");
+ _builder.append(";");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("\t");
+ {
+ boolean _isSkipEntry = chain.isSkipEntry();
+ if (_isSkipEntry) {
+ _builder.append("skip_entry = ");
+ String _booleanConstant_1 = this.langExt.booleanConstant(true);
+ _builder.append(_booleanConstant_1, " ");
+ _builder.append(";");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _builder.append("\t");
+ {
+ if (needData) {
+ _builder.append("}");
+ }
+ }
+ _builder.newLineIfNotEmpty();
+ _builder.append("break;");
+ _builder.newLine();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence genExtra(final ExpandedActorClass xpac) {
+ StringConcatenation _builder = new StringConcatenation();
+ return _builder;
+ }
+
+ private CharSequence _guard(final TriggeredTransition tt, final String trigger, final ExpandedActorClass ac) {
+ CharSequence _xblockexpression = null;
+ {
+ EList<Trigger> _triggers = tt.getTriggers();
+ final Function1<Trigger,Boolean> _function = new Function1<Trigger,Boolean>() {
+ public Boolean apply(final Trigger e) {
+ boolean _isMatching = ac.isMatching(e, trigger);
+ return Boolean.valueOf(_isMatching);
+ }
+ };
+ Trigger tr = IterableExtensions.<Trigger>findFirst(_triggers, _function);
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _hasGuard = this._roomExtensions.hasGuard(tr);
+ if (_hasGuard) {
+ _builder.append("if (");
+ AbstractGenerator _instance = AbstractGenerator.getInstance();
+ Guard _guard = tr.getGuard();
+ DetailCode _guard_1 = _guard.getGuard();
+ String _translatedCode = _instance.getTranslatedCode(_guard_1);
+ _builder.append(_translatedCode, "");
+ _builder.append(")");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private CharSequence _guard(final Transition t, final String trigger, final ExpandedActorClass ac) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/* error */");
+ _builder.newLine();
+ return _builder;
+ }
+
+ private CharSequence genDoCodes(final State state) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _hasDoCode = this._roomExtensions.hasDoCode(state);
+ if (_hasDoCode) {
+ String _doCodeOperationName = CodegenHelpers.getDoCodeOperationName(state);
+ _builder.append(_doCodeOperationName, "");
+ _builder.append("(self);");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ {
+ EObject _eContainer = state.eContainer();
+ EObject _eContainer_1 = _eContainer.eContainer();
+ if ((_eContainer_1 instanceof State)) {
+ EObject _eContainer_2 = state.eContainer();
+ EObject _eContainer_3 = _eContainer_2.eContainer();
+ CharSequence _genDoCodes = this.genDoCodes(((State) _eContainer_3));
+ _builder.append(_genDoCodes, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ private CharSequence genActionCodeMethods(final ExpandedActorClass xpac, final State state) {
+ CharSequence _xblockexpression = null;
+ {
+ ActorClass _actorClass = xpac.getActorClass();
+ String _name = _actorClass.getName();
+ final String selfPtr = this.langExt.selfPointer(_name, false);
+ final String entryOp = CodegenHelpers.getEntryCodeOperationName(state);
+ final String exitOp = CodegenHelpers.getExitCodeOperationName(state);
+ final String doOp = CodegenHelpers.getDoCodeOperationName(state);
+ AbstractGenerator _instance = AbstractGenerator.getInstance();
+ DetailCode _entryCode = state.getEntryCode();
+ String entry = _instance.getTranslatedCode(_entryCode);
+ AbstractGenerator _instance_1 = AbstractGenerator.getInstance();
+ DetailCode _exitCode = state.getExitCode();
+ String exit = _instance_1.getTranslatedCode(_exitCode);
+ AbstractGenerator _instance_2 = AbstractGenerator.getInstance();
+ DetailCode _doCode = state.getDoCode();
+ String docode = _instance_2.getTranslatedCode(_doCode);
+ if ((state instanceof ExpandedRefinedState)) {
+ final ExpandedRefinedState rs = ((ExpandedRefinedState) state);
+ AbstractGenerator _instance_3 = AbstractGenerator.getInstance();
+ DetailCode _inheritedEntry = rs.getInheritedEntry();
+ final String inhEntry = _instance_3.getTranslatedCode(_inheritedEntry);
+ AbstractGenerator _instance_4 = AbstractGenerator.getInstance();
+ DetailCode _inheritedExit = rs.getInheritedExit();
+ final String inhExit = _instance_4.getTranslatedCode(_inheritedExit);
+ AbstractGenerator _instance_5 = AbstractGenerator.getInstance();
+ DetailCode _inheritedDo = rs.getInheritedDo();
+ final String inhDo = _instance_5.getTranslatedCode(_inheritedDo);
+ boolean _usesInheritance = this.langExt.usesInheritance();
+ if (_usesInheritance) {
+ ActorClass _actorClass_1 = xpac.getActorClass();
+ ActorClass _base = _actorClass_1.getBase();
+ final String baseName = _base.getName();
+ DetailCode _inheritedEntry_1 = rs.getInheritedEntry();
+ boolean _empty = this._roomExtensions.empty(_inheritedEntry_1);
+ boolean _not = (!_empty);
+ if (_not) {
+ String _superCall = this.langExt.superCall(baseName, entryOp, "");
+ String _plus = (_superCall + entry);
+ entry = _plus;
+ }
+ DetailCode _inheritedExit_1 = rs.getInheritedExit();
+ boolean _empty_1 = this._roomExtensions.empty(_inheritedExit_1);
+ boolean _not_1 = (!_empty_1);
+ if (_not_1) {
+ String _superCall_1 = this.langExt.superCall(baseName, exitOp, "");
+ String _plus_1 = (exit + _superCall_1);
+ exit = _plus_1;
+ }
+ DetailCode _inheritedDo_1 = rs.getInheritedDo();
+ boolean _empty_2 = this._roomExtensions.empty(_inheritedDo_1);
+ boolean _not_2 = (!_empty_2);
+ if (_not_2) {
+ String _superCall_2 = this.langExt.superCall(baseName, doOp, "");
+ String _plus_2 = (_superCall_2 + docode);
+ docode = _plus_2;
+ }
+ } else {
+ String _plus_3 = (inhEntry + entry);
+ entry = _plus_3;
+ String _plus_4 = (exit + inhExit);
+ exit = _plus_4;
+ String _plus_5 = (inhDo + docode);
+ docode = _plus_5;
+ }
+ }
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _isEmpty = entry.isEmpty();
+ boolean _not_3 = (!_isEmpty);
+ if (_not_3) {
+ String _accessLevelProtected = this.langExt.accessLevelProtected();
+ _builder.append(_accessLevelProtected, "");
+ _builder.append("void ");
+ _builder.append(entryOp, "");
+ _builder.append("(");
+ _builder.append(selfPtr, "");
+ _builder.append(") {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append(entry, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ {
+ boolean _isEmpty_1 = exit.isEmpty();
+ boolean _not_4 = (!_isEmpty_1);
+ if (_not_4) {
+ String _accessLevelProtected_1 = this.langExt.accessLevelProtected();
+ _builder.append(_accessLevelProtected_1, "");
+ _builder.append("void ");
+ _builder.append(exitOp, "");
+ _builder.append("(");
+ _builder.append(selfPtr, "");
+ _builder.append(") {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append(exit, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ {
+ boolean _isEmpty_2 = docode.isEmpty();
+ boolean _not_5 = (!_isEmpty_2);
+ if (_not_5) {
+ String _accessLevelProtected_2 = this.langExt.accessLevelProtected();
+ _builder.append(_accessLevelProtected_2, "");
+ _builder.append(" void ");
+ _builder.append(doOp, "");
+ _builder.append("(");
+ _builder.append(selfPtr, "");
+ _builder.append(") {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append(docode, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ _xblockexpression = (_builder);
+ }
+ return _xblockexpression;
+ }
+
+ private CharSequence guard(final Transition tt, final String trigger, final ExpandedActorClass ac) {
+ if (tt instanceof TriggeredTransition) {
+ return _guard((TriggeredTransition)tt, trigger, ac);
+ } else if (tt != null) {
+ return _guard(tt, trigger, ac);
+ } else {
+ throw new IllegalArgumentException("Unhandled parameter types: " +
+ Arrays.<Object>asList(tt, trigger, ac).toString());
+ }
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/PrepareFileSystem.java b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/PrepareFileSystem.java
index 0de8662e5..828ac29cc 100644
--- a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/PrepareFileSystem.java
+++ b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/PrepareFileSystem.java
@@ -1,81 +1,81 @@
-package org.eclipse.etrice.generator.generic;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.io.File;
-import java.util.HashSet;
-import java.util.Set;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.generator.generic.RoomExtensions;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
-
-@Singleton
-@SuppressWarnings("all")
-public class PrepareFileSystem {
- @Inject
- private RoomExtensions roomExt;
-
- @Inject
- private JavaIoFileSystemAccess fileAccess;
-
- @Inject
- private ILogger logger;
-
- public void prepare(final Resource resource) {
- HashSet<String> _hashSet = new HashSet<String>();
- Set<String> pathes = _hashSet;
- EList<EObject> _contents = resource.getContents();
- for (final EObject e : _contents) {
- if ((e instanceof Root)) {
- EList<RoomModel> _usedRoomModels = ((Root) e).getUsedRoomModels();
- for (final RoomModel mdl : _usedRoomModels) {
- String _generationTargetPath = this.roomExt.getGenerationTargetPath(mdl);
- pathes.add(_generationTargetPath);
- }
- }
- }
- for (final String path : pathes) {
- {
- String _plus = ("clearing " + path);
- this.logger.logInfo(_plus);
- File _file = new File(path);
- File f = _file;
- this.eraseContents(f);
- this.fileAccess.setOutputPath(path);
- CharSequence _readmeText = this.readmeText();
- this.fileAccess.generateFile("readme.txt", _readmeText);
- }
- }
- }
-
- public void eraseContents(final File f) {
- boolean _isDirectory = f.isDirectory();
- if (_isDirectory) {
- File[] children = f.listFiles();
- for (final File child : children) {
- {
- this.eraseContents(child);
- child.delete();
- }
- }
- }
- }
-
- public CharSequence readmeText() {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("This directory is an eTrice code generation target.");
- _builder.newLine();
- _builder.append("It will be erased every time the generator is executed.");
- _builder.newLine();
- _builder.newLine();
- _builder.append("DO NOT PLACE OTHER FILES HERE!");
- _builder.newLine();
- return _builder;
- }
-}
+package org.eclipse.etrice.generator.generic;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.io.File;
+import java.util.HashSet;
+import java.util.Set;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.genmodel.etricegen.Root;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.generator.generic.RoomExtensions;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.generator.JavaIoFileSystemAccess;
+
+@Singleton
+@SuppressWarnings("all")
+public class PrepareFileSystem {
+ @Inject
+ private RoomExtensions roomExt;
+
+ @Inject
+ private JavaIoFileSystemAccess fileAccess;
+
+ @Inject
+ private ILogger logger;
+
+ public void prepare(final Resource resource) {
+ HashSet<String> _hashSet = new HashSet<String>();
+ Set<String> pathes = _hashSet;
+ EList<EObject> _contents = resource.getContents();
+ for (final EObject e : _contents) {
+ if ((e instanceof Root)) {
+ EList<RoomModel> _usedRoomModels = ((Root) e).getUsedRoomModels();
+ for (final RoomModel mdl : _usedRoomModels) {
+ String _generationTargetPath = this.roomExt.getGenerationTargetPath(mdl);
+ pathes.add(_generationTargetPath);
+ }
+ }
+ }
+ for (final String path : pathes) {
+ {
+ String _plus = ("clearing " + path);
+ this.logger.logInfo(_plus);
+ File _file = new File(path);
+ File f = _file;
+ this.eraseContents(f);
+ this.fileAccess.setOutputPath(path);
+ CharSequence _readmeText = this.readmeText();
+ this.fileAccess.generateFile("readme.txt", _readmeText);
+ }
+ }
+ }
+
+ public void eraseContents(final File f) {
+ boolean _isDirectory = f.isDirectory();
+ if (_isDirectory) {
+ File[] children = f.listFiles();
+ for (final File child : children) {
+ {
+ this.eraseContents(child);
+ child.delete();
+ }
+ }
+ }
+ }
+
+ public CharSequence readmeText() {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("This directory is an eTrice code generation target.");
+ _builder.newLine();
+ _builder.append("It will be erased every time the generator is executed.");
+ _builder.newLine();
+ _builder.newLine();
+ _builder.append("DO NOT PLACE OTHER FILES HERE!");
+ _builder.newLine();
+ return _builder;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ProcedureHelpers.java b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ProcedureHelpers.java
index 663c6ebf7..e8021c119 100644
--- a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ProcedureHelpers.java
+++ b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/ProcedureHelpers.java
@@ -1,843 +1,849 @@
-package org.eclipse.etrice.generator.generic;
-
-import com.google.common.base.Objects;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.ActorContainerClass;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.ComplexType;
-import org.eclipse.etrice.core.room.DataClass;
-import org.eclipse.etrice.core.room.DataType;
-import org.eclipse.etrice.core.room.DetailCode;
-import org.eclipse.etrice.core.room.Operation;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.core.room.StandardOperation;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.eclipse.etrice.core.room.util.RoomHelpers;
-import org.eclipse.etrice.generator.base.AbstractGenerator;
-import org.eclipse.etrice.generator.generic.ConfigExtension;
-import org.eclipse.etrice.generator.generic.ILanguageExtension;
-import org.eclipse.etrice.generator.generic.TypeHelpers;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.xbase.lib.Conversions;
-import org.eclipse.xtext.xbase.lib.StringExtensions;
-
-@Singleton
-@SuppressWarnings("all")
-public class ProcedureHelpers {
- @Inject
- private ILanguageExtension languageExt;
-
- @Inject
- private ConfigExtension _configExtension;
-
- @Inject
- private TypeHelpers _typeHelpers;
-
- @Inject
- private ILogger logger;
-
- public CharSequence userCode(final DataClass dc, final int id) {
- CharSequence _switchResult = null;
- boolean _matched = false;
- if (!_matched) {
- if (Objects.equal(id,1)) {
- _matched=true;
- String _deepUserCode1 = RoomHelpers.getDeepUserCode1(dc);
- CharSequence _userCode = this.userCode(_deepUserCode1);
- _switchResult = _userCode;
- }
- }
- if (!_matched) {
- if (Objects.equal(id,2)) {
- _matched=true;
- String _deepUserCode2 = RoomHelpers.getDeepUserCode2(dc);
- CharSequence _userCode_1 = this.userCode(_deepUserCode2);
- _switchResult = _userCode_1;
- }
- }
- if (!_matched) {
- if (Objects.equal(id,3)) {
- _matched=true;
- String _deepUserCode3 = RoomHelpers.getDeepUserCode3(dc);
- CharSequence _userCode_2 = this.userCode(_deepUserCode3);
- _switchResult = _userCode_2;
- }
- }
- return _switchResult;
- }
-
- public CharSequence userCode(final ProtocolClass pc, final int id) {
- CharSequence _switchResult = null;
- boolean _matched = false;
- if (!_matched) {
- if (Objects.equal(id,1)) {
- _matched=true;
- String _deepUserCode1 = RoomHelpers.getDeepUserCode1(pc);
- CharSequence _userCode = this.userCode(_deepUserCode1);
- _switchResult = _userCode;
- }
- }
- if (!_matched) {
- if (Objects.equal(id,2)) {
- _matched=true;
- String _deepUserCode2 = RoomHelpers.getDeepUserCode2(pc);
- CharSequence _userCode_1 = this.userCode(_deepUserCode2);
- _switchResult = _userCode_1;
- }
- }
- if (!_matched) {
- if (Objects.equal(id,3)) {
- _matched=true;
- String _deepUserCode3 = RoomHelpers.getDeepUserCode3(pc);
- CharSequence _userCode_2 = this.userCode(_deepUserCode3);
- _switchResult = _userCode_2;
- }
- }
- return _switchResult;
- }
-
- public CharSequence userCode(final ActorContainerClass ac, final int id) {
- CharSequence _switchResult = null;
- boolean _matched = false;
- if (!_matched) {
- if (Objects.equal(id,1)) {
- _matched=true;
- String _deepUserCode1 = RoomHelpers.getDeepUserCode1(ac);
- CharSequence _userCode = this.userCode(_deepUserCode1);
- _switchResult = _userCode;
- }
- }
- if (!_matched) {
- if (Objects.equal(id,2)) {
- _matched=true;
- String _deepUserCode2 = RoomHelpers.getDeepUserCode2(ac);
- CharSequence _userCode_1 = this.userCode(_deepUserCode2);
- _switchResult = _userCode_1;
- }
- }
- if (!_matched) {
- if (Objects.equal(id,3)) {
- _matched=true;
- String _deepUserCode3 = RoomHelpers.getDeepUserCode3(ac);
- CharSequence _userCode_2 = this.userCode(_deepUserCode3);
- _switchResult = _userCode_2;
- }
- }
- return _switchResult;
- }
-
- public CharSequence userCode(final DetailCode dc) {
- String _detailCode = RoomHelpers.getDetailCode(dc);
- CharSequence _userCode = this.userCode(_detailCode);
- return _userCode;
- }
-
- private CharSequence userCode(final String code) {
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _and = false;
- boolean _notEquals = (!Objects.equal(code, null));
- if (!_notEquals) {
- _and = false;
- } else {
- boolean _isEmpty = code.isEmpty();
- boolean _not = (!_isEmpty);
- _and = (_notEquals && _not);
- }
- if (_and) {
- _builder.append("/*--------------------- begin user code ---------------------*/");
- _builder.newLine();
- _builder.append(code, "");
- _builder.newLineIfNotEmpty();
- _builder.append("/*--------------------- end user code ---------------------*/");
- _builder.newLine();
- }
- }
- return _builder;
- }
-
- /**
- * TODO: add ref type
- */
- public CharSequence attributes(final List<Attribute> attribs) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/*--------------------- attributes ---------------------*/");
- _builder.newLine();
- {
- for(final Attribute attribute : attribs) {
- {
- int _size = attribute.getSize();
- boolean _equals = (_size == 0);
- if (_equals) {
- RefableType _refType = attribute.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- _builder.append(_typeName, "");
- {
- RefableType _refType_1 = attribute.getRefType();
- boolean _isRef = _refType_1.isRef();
- if (_isRef) {
- String _pointerLiteral = this.languageExt.pointerLiteral();
- _builder.append(_pointerLiteral, "");
- }
- }
- _builder.append(" ");
- String _name = attribute.getName();
- _builder.append(_name, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- RefableType _refType_2 = attribute.getRefType();
- DataType _type_1 = _refType_2.getType();
- String _typeName_1 = this._typeHelpers.typeName(_type_1);
- int _size_1 = attribute.getSize();
- String _name_1 = attribute.getName();
- RefableType _refType_3 = attribute.getRefType();
- boolean _isRef_1 = _refType_3.isRef();
- String _arrayDeclaration = this.languageExt.arrayDeclaration(_typeName_1, _size_1, _name_1, _isRef_1);
- _builder.append(_arrayDeclaration, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- return _builder;
- }
-
- public String arrayInitializer(final Attribute att) {
- String _xifexpression = null;
- String _defaultValueLiteral = att.getDefaultValueLiteral();
- boolean _notEquals = (!Objects.equal(_defaultValueLiteral, null));
- if (_notEquals) {
- String _defaultValueLiteral_1 = att.getDefaultValueLiteral();
- _xifexpression = _defaultValueLiteral_1;
- } else {
- RefableType _refType = att.getRefType();
- DataType _type = _refType.getType();
- String _defaultValue = this._typeHelpers.defaultValue(_type);
- _xifexpression = _defaultValue;
- }
- String dflt = _xifexpression;
- boolean _startsWith = dflt.startsWith("{");
- if (_startsWith) {
- String[] _split = dflt.split(",");
- int _size = ((List<String>)Conversions.doWrapArray(_split)).size();
- int _size_1 = att.getSize();
- boolean _notEquals_1 = (_size != _size_1);
- if (_notEquals_1) {
- String _name = att.getName();
- String _plus = ("WARNING: array size determined by initializer differs from attribute size (" + _name);
- String _plus_1 = (_plus + "[");
- int _size_2 = att.getSize();
- String _plus_2 = (_plus_1 + Integer.valueOf(_size_2));
- String _plus_3 = (_plus_2 + "] <-> ");
- String _plus_4 = (_plus_3 + dflt);
- String _plus_5 = (_plus_4 + ")");
- this.logger.logInfo(_plus_5);
- }
- return dflt;
- }
- String result = "{";
- int i = 0;
- int _size_3 = att.getSize();
- boolean _lessThan = (i < _size_3);
- boolean _while = _lessThan;
- while (_while) {
- {
- String _plus_6 = (result + dflt);
- result = _plus_6;
- int _plus_7 = (i + 1);
- i = _plus_7;
- int _size_4 = att.getSize();
- boolean _lessThan_1 = (i < _size_4);
- if (_lessThan_1) {
- String _plus_8 = (result + ", ");
- result = _plus_8;
- }
- }
- int _size_4 = att.getSize();
- boolean _lessThan_1 = (i < _size_4);
- _while = _lessThan_1;
- }
- return (result + "}");
- }
-
- public CharSequence attributeInitialization(final List<Attribute> attribs, final boolean useClassDefaultsOnly) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("// initialize attributes");
- _builder.newLine();
- {
- for(final Attribute a : attribs) {
- String value = this._configExtension.getInitValue(a);
- _builder.newLineIfNotEmpty();
- {
- boolean _notEquals = (!Objects.equal(value, null));
- if (_notEquals) {
- {
- boolean _isArray = this._configExtension.isArray(a);
- boolean _not = (!_isArray);
- if (_not) {
- String _name = a.getName();
- _builder.append(_name, "");
- _builder.append(" = ");
- _builder.append(value, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- boolean _startsWith = value.startsWith("{");
- if (_startsWith) {
- String _name_1 = a.getName();
- _builder.append(_name_1, "");
- _builder.append(" = new ");
- RefableType _refType = a.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- _builder.append(_typeName, "");
- _builder.append("[] ");
- _builder.append(value, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- String _name_2 = a.getName();
- _builder.append(_name_2, "");
- _builder.append(" = new ");
- RefableType _refType_1 = a.getRefType();
- DataType _type_1 = _refType_1.getType();
- String _typeName_1 = this._typeHelpers.typeName(_type_1);
- _builder.append(_typeName_1, "");
- _builder.append("[");
- int _size = a.getSize();
- _builder.append(_size, "");
- _builder.append("];");
- _builder.newLineIfNotEmpty();
- _builder.append("for (int i=0;i<");
- int _size_1 = a.getSize();
- _builder.append(_size_1, "");
- _builder.append(";i++){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- String _name_3 = a.getName();
- _builder.append(_name_3, " ");
- _builder.append("[i] = ");
- _builder.append(value, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- } else {
- boolean _or = false;
- boolean _or_1 = false;
- RefableType _refType_2 = a.getRefType();
- DataType _type_2 = _refType_2.getType();
- if ((_type_2 instanceof ComplexType)) {
- _or_1 = true;
- } else {
- int _size_2 = a.getSize();
- boolean _greaterThan = (_size_2 > 1);
- _or_1 = ((_type_2 instanceof ComplexType) || _greaterThan);
- }
- if (_or_1) {
- _or = true;
- } else {
- boolean _not_1 = (!useClassDefaultsOnly);
- _or = (_or_1 || _not_1);
- }
- if (_or) {
- {
- int _size_3 = a.getSize();
- boolean _equals = (_size_3 == 0);
- if (_equals) {
- {
- RefableType _refType_3 = a.getRefType();
- boolean _isRef = _refType_3.isRef();
- if (_isRef) {
- String _name_4 = a.getName();
- _builder.append(_name_4, "");
- _builder.append(" = ");
- String _nullPointer = this.languageExt.nullPointer();
- _builder.append(_nullPointer, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- } else {
- String _name_5 = a.getName();
- _builder.append(_name_5, "");
- _builder.append(" = ");
- RefableType _refType_4 = a.getRefType();
- DataType _type_3 = _refType_4.getType();
- String _defaultValue = this._typeHelpers.defaultValue(_type_3);
- _builder.append(_defaultValue, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- } else {
- String _name_6 = a.getName();
- _builder.append(_name_6, "");
- _builder.append(" = new ");
- RefableType _refType_5 = a.getRefType();
- DataType _type_4 = _refType_5.getType();
- String _typeName_2 = this._typeHelpers.typeName(_type_4);
- _builder.append(_typeName_2, "");
- _builder.append("[");
- int _size_4 = a.getSize();
- _builder.append(_size_4, "");
- _builder.append("];");
- _builder.newLineIfNotEmpty();
- {
- boolean _not_2 = (!useClassDefaultsOnly);
- if (_not_2) {
- _builder.append("for (int i=0;i<");
- int _size_5 = a.getSize();
- _builder.append(_size_5, "");
- _builder.append(";i++){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- String _name_7 = a.getName();
- _builder.append(_name_7, " ");
- _builder.append("[i] = ");
- {
- RefableType _refType_6 = a.getRefType();
- boolean _isRef_1 = _refType_6.isRef();
- if (_isRef_1) {
- String _nullPointer_1 = this.languageExt.nullPointer();
- _builder.append(_nullPointer_1, " ");
- } else {
- RefableType _refType_7 = a.getRefType();
- DataType _type_5 = _refType_7.getType();
- String _defaultValue_1 = this._typeHelpers.defaultValue(_type_5);
- _builder.append(_defaultValue_1, " ");
- }
- }
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- }
- }
- }
- }
- }
- return _builder;
- }
-
- public CharSequence attributeSettersGettersDeclaration(final List<Attribute> attribs, final String classname) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("//--------------------- attribute setters and getters");
- _builder.newLine();
- {
- for(final Attribute attribute : attribs) {
- CharSequence _setterHeader = this.setterHeader(attribute, classname);
- _builder.append(_setterHeader, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- CharSequence _terHeader = this.getterHeader(attribute, classname);
- _builder.append(_terHeader, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- return _builder;
- }
-
- public CharSequence attributeSettersGettersImplementation(final List<Attribute> attribs, final String classname) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("//--------------------- attribute setters and getters");
- _builder.newLine();
- {
- for(final Attribute attribute : attribs) {
- CharSequence _setterHeader = this.setterHeader(attribute, classname);
- _builder.append(_setterHeader, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t ");
- String _memberAccess = this.languageExt.memberAccess();
- _builder.append(_memberAccess, " ");
- String _name = attribute.getName();
- _builder.append(_name, " ");
- _builder.append(" = ");
- String _name_1 = attribute.getName();
- _builder.append(_name_1, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- CharSequence _terHeader = this.getterHeader(attribute, classname);
- _builder.append(_terHeader, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("return ");
- String _memberAccess_1 = this.languageExt.memberAccess();
- _builder.append(_memberAccess_1, " ");
- String _name_2 = attribute.getName();
- _builder.append(_name_2, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- return _builder;
- }
-
- private CharSequence setterHeader(final Attribute attribute, final String classname) {
- StringConcatenation _builder = new StringConcatenation();
- String _accessLevelPublic = this.languageExt.accessLevelPublic();
- _builder.append(_accessLevelPublic, "");
- _builder.append("void set");
- String _name = attribute.getName();
- String _firstUpper = StringExtensions.toFirstUpper(_name);
- _builder.append(_firstUpper, "");
- _builder.append(" (");
- String _selfPointer = this.languageExt.selfPointer(classname, true);
- _builder.append(_selfPointer, "");
- RefableType _refType = attribute.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- _builder.append(_typeName, "");
- {
- int _size = attribute.getSize();
- boolean _notEquals = (_size != 0);
- if (_notEquals) {
- _builder.append("[]");
- }
- }
- _builder.append(" ");
- String _name_1 = attribute.getName();
- _builder.append(_name_1, "");
- _builder.append(")");
- return _builder;
- }
-
- private CharSequence getterHeader(final Attribute attribute, final String classname) {
- StringConcatenation _builder = new StringConcatenation();
- String _accessLevelPublic = this.languageExt.accessLevelPublic();
- _builder.append(_accessLevelPublic, "");
- RefableType _refType = attribute.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- _builder.append(_typeName, "");
- {
- int _size = attribute.getSize();
- boolean _notEquals = (_size != 0);
- if (_notEquals) {
- _builder.append("[]");
- }
- }
- _builder.append(" get");
- String _name = attribute.getName();
- String _firstUpper = StringExtensions.toFirstUpper(_name);
- _builder.append(_firstUpper, "");
- _builder.append(" (");
- String _selfPointer = this.languageExt.selfPointer(classname, false);
- _builder.append(_selfPointer, "");
- _builder.append(")");
- return _builder;
- }
-
- public CharSequence argList(final List<Attribute> attributes) {
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _hasElements = false;
- for(final Attribute a : attributes) {
- if (!_hasElements) {
- _hasElements = true;
- } else {
- _builder.appendImmediate(", ", "");
- }
- RefableType _refType = a.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- _builder.append(_typeName, "");
- {
- int _size = a.getSize();
- boolean _greaterThan = (_size > 1);
- if (_greaterThan) {
- _builder.append("[]");
- }
- }
- _builder.append(" ");
- String _name = a.getName();
- _builder.append(_name, "");
- }
- }
- return _builder;
- }
-
- public CharSequence getterImplementation(final String typeName, final String name, final String classname) {
- StringConcatenation _builder = new StringConcatenation();
- String _accessLevelPublic = this.languageExt.accessLevelPublic();
- _builder.append(_accessLevelPublic, "");
- _builder.append(typeName, "");
- _builder.append(" get");
- String _firstUpper = StringExtensions.toFirstUpper(name);
- _builder.append(_firstUpper, "");
- _builder.append(" (");
- String _selfPointer = this.languageExt.selfPointer(classname, false);
- _builder.append(_selfPointer, "");
- _builder.append("){");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- _builder.append("return ");
- String _memberAccess = this.languageExt.memberAccess();
- _builder.append(_memberAccess, " ");
- _builder.append(name, " ");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- return _builder;
- }
-
- public CharSequence invokeGetter(final String name, final String classname) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("get");
- String _firstUpper = StringExtensions.toFirstUpper(name);
- _builder.append(_firstUpper, "");
- _builder.append("(");
- String _selfPointer = this.languageExt.selfPointer(classname, true);
- _builder.append(_selfPointer, "");
- _builder.append(")");
- return _builder;
- }
-
- public CharSequence invokeSetter(final String name, final String classname, final String value) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("set");
- String _firstUpper = StringExtensions.toFirstUpper(name);
- _builder.append(_firstUpper, "");
- _builder.append("(");
- String _selfPointer = this.languageExt.selfPointer(classname, true);
- _builder.append(_selfPointer, "");
- _builder.append(value, "");
- _builder.append(")");
- return _builder;
- }
-
- public CharSequence operationsDeclaration(final List<? extends Operation> operations, final String classname) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/*--------------------- operations ---------------------*/");
- _builder.newLine();
- {
- for(final Operation operation : operations) {
- {
- boolean _and = false;
- boolean _usesInheritance = this.languageExt.usesInheritance();
- if (!_usesInheritance) {
- _and = false;
- } else {
- boolean _isConstructor = RoomHelpers.isConstructor(operation);
- _and = (_usesInheritance && _isConstructor);
- }
- boolean _not = (!_and);
- if (_not) {
- CharSequence _operationSignature = this.operationSignature(operation, classname, true);
- _builder.append(_operationSignature, "");
- _builder.append(";");
- _builder.newLineIfNotEmpty();
- }
- }
- }
- }
- return _builder;
- }
-
- public CharSequence operationsImplementation(final List<? extends Operation> operations, final String classname) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/*--------------------- operations ---------------------*/");
- _builder.newLine();
- {
- for(final Operation operation : operations) {
- {
- boolean _and = false;
- boolean _usesInheritance = this.languageExt.usesInheritance();
- if (!_usesInheritance) {
- _and = false;
- } else {
- boolean _isConstructor = RoomHelpers.isConstructor(operation);
- _and = (_usesInheritance && _isConstructor);
- }
- boolean _not = (!_and);
- if (_not) {
- CharSequence _operationSignature = this.operationSignature(operation, classname, false);
- _builder.append(_operationSignature, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- AbstractGenerator _instance = AbstractGenerator.getInstance();
- DetailCode _detailCode = operation.getDetailCode();
- String _translatedCode = _instance.getTranslatedCode(_detailCode);
- _builder.append(_translatedCode, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- return _builder;
- }
-
- public CharSequence operationsImplementation(final ActorClass ac) {
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("/*--------------------- operations ---------------------*/");
- _builder.newLine();
- {
- EList<StandardOperation> _operations = ac.getOperations();
- for(final StandardOperation operation : _operations) {
- {
- boolean _and = false;
- boolean _usesInheritance = this.languageExt.usesInheritance();
- if (!_usesInheritance) {
- _and = false;
- } else {
- boolean _isConstructor = RoomHelpers.isConstructor(operation);
- _and = (_usesInheritance && _isConstructor);
- }
- boolean _not = (!_and);
- if (_not) {
- String _name = ac.getName();
- CharSequence _operationSignature = this.operationSignature(operation, _name, false);
- _builder.append(_operationSignature, "");
- _builder.append(" {");
- _builder.newLineIfNotEmpty();
- _builder.append("\t");
- AbstractGenerator _instance = AbstractGenerator.getInstance();
- DetailCode _detailCode = operation.getDetailCode();
- String _translatedCode = _instance.getTranslatedCode(_detailCode);
- _builder.append(_translatedCode, " ");
- _builder.newLineIfNotEmpty();
- _builder.append("}");
- _builder.newLine();
- }
- }
- }
- }
- return _builder;
- }
-
- public String destructorCall(final String classname) {
- String _destructorName = this.languageExt.destructorName(classname);
- String _plus = (_destructorName + "()");
- return _plus;
- }
-
- private CharSequence operationSignature(final Operation operation, final String classname, final boolean isDeclaration) {
- CharSequence _xifexpression = null;
- boolean _isConstructor = RoomHelpers.isConstructor(operation);
- if (_isConstructor) {
- String _constructorName = this.languageExt.constructorName(classname);
- String _constructorReturnType = this.languageExt.constructorReturnType();
- CharSequence _classOperationSignature = this.classOperationSignature(classname, _constructorName, "", _constructorReturnType, isDeclaration);
- _xifexpression = _classOperationSignature;
- } else {
- CharSequence _xifexpression_1 = null;
- boolean _isDestructor = RoomHelpers.isDestructor(operation);
- if (_isDestructor) {
- String _destructorName = this.languageExt.destructorName(classname);
- String _destructorReturnType = this.languageExt.destructorReturnType();
- CharSequence _classOperationSignature_1 = this.classOperationSignature(classname, _destructorName, "", _destructorReturnType, isDeclaration);
- _xifexpression_1 = _classOperationSignature_1;
- } else {
- String _name = operation.getName();
- EList<VarDecl> _arguments = operation.getArguments();
- CharSequence _BuildArgumentList = this.BuildArgumentList(_arguments);
- String _string = _BuildArgumentList.toString();
- RefableType _returntype = operation.getReturntype();
- String _dataTypeToString = this.dataTypeToString(_returntype);
- CharSequence _classOperationSignature_2 = this.classOperationSignature(classname, _name, _string, _dataTypeToString, isDeclaration);
- _xifexpression_1 = _classOperationSignature_2;
- }
- _xifexpression = _xifexpression_1;
- }
- return _xifexpression;
- }
-
- private String dataTypeToString(final RefableType type) {
- String _xifexpression = null;
- boolean _equals = Objects.equal(type, null);
- if (_equals) {
- _xifexpression = "void";
- } else {
- String _xifexpression_1 = null;
- boolean _isRef = type.isRef();
- if (_isRef) {
- DataType _type = type.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- String _pointerLiteral = this.languageExt.pointerLiteral();
- String _plus = (_typeName + _pointerLiteral);
- _xifexpression_1 = _plus;
- } else {
- DataType _type_1 = type.getType();
- String _typeName_1 = this._typeHelpers.typeName(_type_1);
- _xifexpression_1 = _typeName_1;
- }
- _xifexpression = _xifexpression_1;
- }
- return _xifexpression;
- }
-
- /**
- * builds comma separated argument list as string from EList<VarDecl> arguments
- */
- private CharSequence BuildArgumentList(final EList<VarDecl> arguments) {
- StringConcatenation _builder = new StringConcatenation();
- {
- boolean _hasElements = false;
- for(final VarDecl argument : arguments) {
- if (!_hasElements) {
- _hasElements = true;
- } else {
- _builder.appendImmediate(", ", "");
- }
- RefableType _refType = argument.getRefType();
- DataType _type = _refType.getType();
- String _typeName = this._typeHelpers.typeName(_type);
- _builder.append(_typeName, "");
- {
- RefableType _refType_1 = argument.getRefType();
- boolean _isRef = _refType_1.isRef();
- if (_isRef) {
- String _pointerLiteral = this.languageExt.pointerLiteral();
- _builder.append(_pointerLiteral, "");
- }
- }
- _builder.append(" ");
- String _name = argument.getName();
- _builder.append(_name, "");
- }
- }
- return _builder;
- }
-
- private CharSequence classOperationSignature(final String classname, final String operationname, final String argumentList, final String returnType, final boolean isDeclaration) {
- StringConcatenation _builder = new StringConcatenation();
- String _accessLevelPublic = this.languageExt.accessLevelPublic();
- _builder.append(_accessLevelPublic, "");
- _builder.append(returnType, "");
- _builder.append(" ");
- String _memberInDeclaration = this.languageExt.memberInDeclaration(classname, operationname);
- _builder.append(_memberInDeclaration, "");
- _builder.append("(");
- boolean _isEmpty = argumentList.isEmpty();
- boolean _not = (!_isEmpty);
- String _selfPointer = this.languageExt.selfPointer(classname, _not);
- _builder.append(_selfPointer, "");
- _builder.append(argumentList, "");
- _builder.append(")");
- return _builder;
- }
-}
+package org.eclipse.etrice.generator.generic;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.etrice.core.genmodel.base.ILogger;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.ActorContainerClass;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.ComplexType;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DataType;
+import org.eclipse.etrice.core.room.DetailCode;
+import org.eclipse.etrice.core.room.Operation;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.core.room.StandardOperation;
+import org.eclipse.etrice.core.room.VarDecl;
+import org.eclipse.etrice.core.room.util.RoomHelpers;
+import org.eclipse.etrice.generator.base.AbstractGenerator;
+import org.eclipse.etrice.generator.generic.ConfigExtension;
+import org.eclipse.etrice.generator.generic.ILanguageExtension;
+import org.eclipse.etrice.generator.generic.TypeHelpers;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.xbase.lib.Conversions;
+import org.eclipse.xtext.xbase.lib.StringExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class ProcedureHelpers {
+ @Inject
+ private ILanguageExtension languageExt;
+
+ @Inject
+ private ConfigExtension _configExtension;
+
+ @Inject
+ private TypeHelpers _typeHelpers;
+
+ @Inject
+ private ILogger logger;
+
+ public CharSequence userCode(final DataClass dc, final int id) {
+ CharSequence _switchResult = null;
+ boolean _matched = false;
+ if (!_matched) {
+ if (Objects.equal(id,1)) {
+ _matched=true;
+ String _deepUserCode1 = RoomHelpers.getDeepUserCode1(dc);
+ CharSequence _userCode = this.userCode(_deepUserCode1);
+ _switchResult = _userCode;
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(id,2)) {
+ _matched=true;
+ String _deepUserCode2 = RoomHelpers.getDeepUserCode2(dc);
+ CharSequence _userCode_1 = this.userCode(_deepUserCode2);
+ _switchResult = _userCode_1;
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(id,3)) {
+ _matched=true;
+ String _deepUserCode3 = RoomHelpers.getDeepUserCode3(dc);
+ CharSequence _userCode_2 = this.userCode(_deepUserCode3);
+ _switchResult = _userCode_2;
+ }
+ }
+ return _switchResult;
+ }
+
+ public CharSequence userCode(final ProtocolClass pc, final int id) {
+ CharSequence _switchResult = null;
+ boolean _matched = false;
+ if (!_matched) {
+ if (Objects.equal(id,1)) {
+ _matched=true;
+ String _deepUserCode1 = RoomHelpers.getDeepUserCode1(pc);
+ CharSequence _userCode = this.userCode(_deepUserCode1);
+ _switchResult = _userCode;
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(id,2)) {
+ _matched=true;
+ String _deepUserCode2 = RoomHelpers.getDeepUserCode2(pc);
+ CharSequence _userCode_1 = this.userCode(_deepUserCode2);
+ _switchResult = _userCode_1;
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(id,3)) {
+ _matched=true;
+ String _deepUserCode3 = RoomHelpers.getDeepUserCode3(pc);
+ CharSequence _userCode_2 = this.userCode(_deepUserCode3);
+ _switchResult = _userCode_2;
+ }
+ }
+ return _switchResult;
+ }
+
+ public CharSequence userCode(final ActorContainerClass ac, final int id) {
+ CharSequence _switchResult = null;
+ boolean _matched = false;
+ if (!_matched) {
+ if (Objects.equal(id,1)) {
+ _matched=true;
+ String _deepUserCode1 = RoomHelpers.getDeepUserCode1(ac);
+ CharSequence _userCode = this.userCode(_deepUserCode1);
+ _switchResult = _userCode;
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(id,2)) {
+ _matched=true;
+ String _deepUserCode2 = RoomHelpers.getDeepUserCode2(ac);
+ CharSequence _userCode_1 = this.userCode(_deepUserCode2);
+ _switchResult = _userCode_1;
+ }
+ }
+ if (!_matched) {
+ if (Objects.equal(id,3)) {
+ _matched=true;
+ String _deepUserCode3 = RoomHelpers.getDeepUserCode3(ac);
+ CharSequence _userCode_2 = this.userCode(_deepUserCode3);
+ _switchResult = _userCode_2;
+ }
+ }
+ return _switchResult;
+ }
+
+ public CharSequence userCode(final DetailCode dc) {
+ String _detailCode = RoomHelpers.getDetailCode(dc);
+ CharSequence _userCode = this.userCode(_detailCode);
+ return _userCode;
+ }
+
+ private CharSequence userCode(final String code) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _and = false;
+ boolean _notEquals = (!Objects.equal(code, null));
+ if (!_notEquals) {
+ _and = false;
+ } else {
+ boolean _isEmpty = code.isEmpty();
+ boolean _not = (!_isEmpty);
+ _and = (_notEquals && _not);
+ }
+ if (_and) {
+ _builder.append("/*--------------------- begin user code ---------------------*/");
+ _builder.newLine();
+ _builder.append(code, "");
+ _builder.newLineIfNotEmpty();
+ _builder.append("/*--------------------- end user code ---------------------*/");
+ _builder.newLine();
+ }
+ }
+ return _builder;
+ }
+
+ /**
+ * TODO: add ref type
+ */
+ public CharSequence attributes(final List<Attribute> attribs) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/*--------------------- attributes ---------------------*/");
+ _builder.newLine();
+ {
+ for(final Attribute attribute : attribs) {
+ CharSequence _attributeDeclaration = this.attributeDeclaration(attribute);
+ _builder.append(_attributeDeclaration, "");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence attributeDeclaration(final Attribute attribute) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ int _size = attribute.getSize();
+ boolean _equals = (_size == 0);
+ if (_equals) {
+ RefableType _refType = attribute.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ _builder.append(_typeName, "");
+ {
+ RefableType _refType_1 = attribute.getRefType();
+ boolean _isRef = _refType_1.isRef();
+ if (_isRef) {
+ String _pointerLiteral = this.languageExt.pointerLiteral();
+ _builder.append(_pointerLiteral, "");
+ }
+ }
+ _builder.append(" ");
+ String _name = attribute.getName();
+ _builder.append(_name, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ } else {
+ RefableType _refType_2 = attribute.getRefType();
+ DataType _type_1 = _refType_2.getType();
+ String _typeName_1 = this._typeHelpers.typeName(_type_1);
+ int _size_1 = attribute.getSize();
+ String _name_1 = attribute.getName();
+ RefableType _refType_3 = attribute.getRefType();
+ boolean _isRef_1 = _refType_3.isRef();
+ String _arrayDeclaration = this.languageExt.arrayDeclaration(_typeName_1, _size_1, _name_1, _isRef_1);
+ _builder.append(_arrayDeclaration, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ public String arrayInitializer(final Attribute att) {
+ String _xifexpression = null;
+ String _defaultValueLiteral = att.getDefaultValueLiteral();
+ boolean _notEquals = (!Objects.equal(_defaultValueLiteral, null));
+ if (_notEquals) {
+ String _defaultValueLiteral_1 = att.getDefaultValueLiteral();
+ _xifexpression = _defaultValueLiteral_1;
+ } else {
+ RefableType _refType = att.getRefType();
+ DataType _type = _refType.getType();
+ String _defaultValue = this._typeHelpers.defaultValue(_type);
+ _xifexpression = _defaultValue;
+ }
+ String dflt = _xifexpression;
+ boolean _startsWith = dflt.startsWith("{");
+ if (_startsWith) {
+ String[] _split = dflt.split(",");
+ int _size = ((List<String>)Conversions.doWrapArray(_split)).size();
+ int _size_1 = att.getSize();
+ boolean _notEquals_1 = (_size != _size_1);
+ if (_notEquals_1) {
+ String _name = att.getName();
+ String _plus = ("WARNING: array size determined by initializer differs from attribute size (" + _name);
+ String _plus_1 = (_plus + "[");
+ int _size_2 = att.getSize();
+ String _plus_2 = (_plus_1 + Integer.valueOf(_size_2));
+ String _plus_3 = (_plus_2 + "] <-> ");
+ String _plus_4 = (_plus_3 + dflt);
+ String _plus_5 = (_plus_4 + ")");
+ this.logger.logInfo(_plus_5);
+ }
+ return dflt;
+ }
+ String result = "{";
+ int i = 0;
+ int _size_3 = att.getSize();
+ boolean _lessThan = (i < _size_3);
+ boolean _while = _lessThan;
+ while (_while) {
+ {
+ String _plus_6 = (result + dflt);
+ result = _plus_6;
+ int _plus_7 = (i + 1);
+ i = _plus_7;
+ int _size_4 = att.getSize();
+ boolean _lessThan_1 = (i < _size_4);
+ if (_lessThan_1) {
+ String _plus_8 = (result + ", ");
+ result = _plus_8;
+ }
+ }
+ int _size_4 = att.getSize();
+ boolean _lessThan_1 = (i < _size_4);
+ _while = _lessThan_1;
+ }
+ return (result + "}");
+ }
+
+ public CharSequence attributeInitialization(final List<Attribute> attribs, final boolean useClassDefaultsOnly) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("// initialize attributes");
+ _builder.newLine();
+ {
+ for(final Attribute a : attribs) {
+ RefableType _refType = a.getRefType();
+ DataType aType = _refType.getType();
+ _builder.newLineIfNotEmpty();
+ String value = this._configExtension.getInitValueLiteral(a);
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _notEquals = (!Objects.equal(value, null));
+ if (_notEquals) {
+ {
+ boolean _or = false;
+ int _size = a.getSize();
+ boolean _equals = (_size == 0);
+ if (_equals) {
+ _or = true;
+ } else {
+ boolean _isCharacterType = this._typeHelpers.isCharacterType(aType);
+ _or = (_equals || _isCharacterType);
+ }
+ if (_or) {
+ String _name = a.getName();
+ _builder.append(_name, "");
+ _builder.append(" = ");
+ _builder.append(value, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ } else {
+ boolean _startsWith = value.startsWith("{");
+ if (_startsWith) {
+ String _name_1 = a.getName();
+ _builder.append(_name_1, "");
+ _builder.append(" = new ");
+ String _typeName = this._typeHelpers.typeName(aType);
+ _builder.append(_typeName, "");
+ _builder.append("[] ");
+ _builder.append(value, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ } else {
+ String _name_2 = a.getName();
+ _builder.append(_name_2, "");
+ _builder.append(" = new ");
+ String _typeName_1 = this._typeHelpers.typeName(aType);
+ _builder.append(_typeName_1, "");
+ _builder.append("[");
+ int _size_1 = a.getSize();
+ _builder.append(_size_1, "");
+ _builder.append("];");
+ _builder.newLineIfNotEmpty();
+ _builder.append("for (int i=0;i<");
+ int _size_2 = a.getSize();
+ _builder.append(_size_2, "");
+ _builder.append(";i++){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ String _name_3 = a.getName();
+ _builder.append(_name_3, " ");
+ _builder.append("[i] = ");
+ _builder.append(value, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ } else {
+ boolean _or_1 = false;
+ boolean _or_2 = false;
+ if ((aType instanceof ComplexType)) {
+ _or_2 = true;
+ } else {
+ int _size_3 = a.getSize();
+ boolean _greaterThan = (_size_3 > 1);
+ _or_2 = ((aType instanceof ComplexType) || _greaterThan);
+ }
+ if (_or_2) {
+ _or_1 = true;
+ } else {
+ boolean _not = (!useClassDefaultsOnly);
+ _or_1 = (_or_2 || _not);
+ }
+ if (_or_1) {
+ {
+ int _size_4 = a.getSize();
+ boolean _equals_1 = (_size_4 == 0);
+ if (_equals_1) {
+ {
+ RefableType _refType_1 = a.getRefType();
+ boolean _isRef = _refType_1.isRef();
+ if (_isRef) {
+ String _name_4 = a.getName();
+ _builder.append(_name_4, "");
+ _builder.append(" = ");
+ String _nullPointer = this.languageExt.nullPointer();
+ _builder.append(_nullPointer, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ } else {
+ String _name_5 = a.getName();
+ _builder.append(_name_5, "");
+ _builder.append(" = ");
+ String _defaultValue = this._typeHelpers.defaultValue(aType);
+ _builder.append(_defaultValue, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ } else {
+ String _name_6 = a.getName();
+ _builder.append(_name_6, "");
+ _builder.append(" = new ");
+ String _typeName_2 = this._typeHelpers.typeName(aType);
+ _builder.append(_typeName_2, "");
+ _builder.append("[");
+ int _size_5 = a.getSize();
+ _builder.append(_size_5, "");
+ _builder.append("];");
+ _builder.newLineIfNotEmpty();
+ {
+ boolean _not_1 = (!useClassDefaultsOnly);
+ if (_not_1) {
+ _builder.append("for (int i=0;i<");
+ int _size_6 = a.getSize();
+ _builder.append(_size_6, "");
+ _builder.append(";i++){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ String _name_7 = a.getName();
+ _builder.append(_name_7, " ");
+ _builder.append("[i] = ");
+ {
+ RefableType _refType_2 = a.getRefType();
+ boolean _isRef_1 = _refType_2.isRef();
+ if (_isRef_1) {
+ String _nullPointer_1 = this.languageExt.nullPointer();
+ _builder.append(_nullPointer_1, " ");
+ } else {
+ String _defaultValue_1 = this._typeHelpers.defaultValue(aType);
+ _builder.append(_defaultValue_1, " ");
+ }
+ }
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence attributeSettersGettersDeclaration(final List<Attribute> attribs, final String classname) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("//--------------------- attribute setters and getters");
+ _builder.newLine();
+ {
+ for(final Attribute attribute : attribs) {
+ CharSequence _setterHeader = this.setterHeader(attribute, classname);
+ _builder.append(_setterHeader, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ CharSequence _terHeader = this.getterHeader(attribute, classname);
+ _builder.append(_terHeader, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence attributeSettersGettersImplementation(final List<Attribute> attribs, final String classname) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("//--------------------- attribute setters and getters");
+ _builder.newLine();
+ {
+ for(final Attribute attribute : attribs) {
+ CharSequence _setterHeader = this.setterHeader(attribute, classname);
+ _builder.append(_setterHeader, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t ");
+ String _memberAccess = this.languageExt.memberAccess();
+ _builder.append(_memberAccess, " ");
+ String _name = attribute.getName();
+ _builder.append(_name, " ");
+ _builder.append(" = ");
+ String _name_1 = attribute.getName();
+ _builder.append(_name_1, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ CharSequence _terHeader = this.getterHeader(attribute, classname);
+ _builder.append(_terHeader, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("return ");
+ String _memberAccess_1 = this.languageExt.memberAccess();
+ _builder.append(_memberAccess_1, " ");
+ String _name_2 = attribute.getName();
+ _builder.append(_name_2, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ return _builder;
+ }
+
+ private CharSequence setterHeader(final Attribute attribute, final String classname) {
+ StringConcatenation _builder = new StringConcatenation();
+ String _accessLevelPublic = this.languageExt.accessLevelPublic();
+ _builder.append(_accessLevelPublic, "");
+ _builder.append("void set");
+ String _name = attribute.getName();
+ String _firstUpper = StringExtensions.toFirstUpper(_name);
+ _builder.append(_firstUpper, "");
+ _builder.append(" (");
+ String _selfPointer = this.languageExt.selfPointer(classname, true);
+ _builder.append(_selfPointer, "");
+ RefableType _refType = attribute.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ _builder.append(_typeName, "");
+ {
+ int _size = attribute.getSize();
+ boolean _notEquals = (_size != 0);
+ if (_notEquals) {
+ _builder.append("[]");
+ }
+ }
+ _builder.append(" ");
+ String _name_1 = attribute.getName();
+ _builder.append(_name_1, "");
+ _builder.append(")");
+ return _builder;
+ }
+
+ private CharSequence getterHeader(final Attribute attribute, final String classname) {
+ StringConcatenation _builder = new StringConcatenation();
+ String _accessLevelPublic = this.languageExt.accessLevelPublic();
+ _builder.append(_accessLevelPublic, "");
+ RefableType _refType = attribute.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ _builder.append(_typeName, "");
+ {
+ int _size = attribute.getSize();
+ boolean _notEquals = (_size != 0);
+ if (_notEquals) {
+ _builder.append("[]");
+ }
+ }
+ _builder.append(" get");
+ String _name = attribute.getName();
+ String _firstUpper = StringExtensions.toFirstUpper(_name);
+ _builder.append(_firstUpper, "");
+ _builder.append(" (");
+ String _selfPointer = this.languageExt.selfPointer(classname, false);
+ _builder.append(_selfPointer, "");
+ _builder.append(")");
+ return _builder;
+ }
+
+ public CharSequence argList(final List<Attribute> attributes) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _hasElements = false;
+ for(final Attribute a : attributes) {
+ if (!_hasElements) {
+ _hasElements = true;
+ } else {
+ _builder.appendImmediate(", ", "");
+ }
+ RefableType _refType = a.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ _builder.append(_typeName, "");
+ {
+ int _size = a.getSize();
+ boolean _greaterThan = (_size > 0);
+ if (_greaterThan) {
+ _builder.append("[]");
+ }
+ }
+ _builder.append(" ");
+ String _name = a.getName();
+ _builder.append(_name, "");
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence getterImplementation(final String typeName, final String name, final String classname) {
+ StringConcatenation _builder = new StringConcatenation();
+ String _accessLevelPublic = this.languageExt.accessLevelPublic();
+ _builder.append(_accessLevelPublic, "");
+ _builder.append(typeName, "");
+ _builder.append(" get");
+ String _firstUpper = StringExtensions.toFirstUpper(name);
+ _builder.append(_firstUpper, "");
+ _builder.append(" (");
+ String _selfPointer = this.languageExt.selfPointer(classname, false);
+ _builder.append(_selfPointer, "");
+ _builder.append("){");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("return ");
+ String _memberAccess = this.languageExt.memberAccess();
+ _builder.append(_memberAccess, " ");
+ _builder.append(name, " ");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ return _builder;
+ }
+
+ public CharSequence invokeGetter(final String name, final String classname) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("get");
+ String _firstUpper = StringExtensions.toFirstUpper(name);
+ _builder.append(_firstUpper, "");
+ _builder.append("(");
+ String _selfPointer = this.languageExt.selfPointer(classname, true);
+ _builder.append(_selfPointer, "");
+ _builder.append(")");
+ return _builder;
+ }
+
+ public CharSequence invokeSetter(final String name, final String classname, final String value) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("set");
+ String _firstUpper = StringExtensions.toFirstUpper(name);
+ _builder.append(_firstUpper, "");
+ _builder.append("(");
+ String _selfPointer = this.languageExt.selfPointer(classname, true);
+ _builder.append(_selfPointer, "");
+ _builder.append(value, "");
+ _builder.append(")");
+ return _builder;
+ }
+
+ public CharSequence operationsDeclaration(final List<? extends Operation> operations, final String classname) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/*--------------------- operations ---------------------*/");
+ _builder.newLine();
+ {
+ for(final Operation operation : operations) {
+ {
+ boolean _and = false;
+ boolean _usesInheritance = this.languageExt.usesInheritance();
+ if (!_usesInheritance) {
+ _and = false;
+ } else {
+ boolean _isConstructor = RoomHelpers.isConstructor(operation);
+ _and = (_usesInheritance && _isConstructor);
+ }
+ boolean _not = (!_and);
+ if (_not) {
+ CharSequence _operationSignature = this.operationSignature(operation, classname, true);
+ _builder.append(_operationSignature, "");
+ _builder.append(";");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence operationsImplementation(final List<? extends Operation> operations, final String classname) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/*--------------------- operations ---------------------*/");
+ _builder.newLine();
+ {
+ for(final Operation operation : operations) {
+ {
+ boolean _and = false;
+ boolean _usesInheritance = this.languageExt.usesInheritance();
+ if (!_usesInheritance) {
+ _and = false;
+ } else {
+ boolean _isConstructor = RoomHelpers.isConstructor(operation);
+ _and = (_usesInheritance && _isConstructor);
+ }
+ boolean _not = (!_and);
+ if (_not) {
+ CharSequence _operationSignature = this.operationSignature(operation, classname, false);
+ _builder.append(_operationSignature, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ AbstractGenerator _instance = AbstractGenerator.getInstance();
+ DetailCode _detailCode = operation.getDetailCode();
+ String _translatedCode = _instance.getTranslatedCode(_detailCode);
+ _builder.append(_translatedCode, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ return _builder;
+ }
+
+ public CharSequence operationsImplementation(final ActorClass ac) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("/*--------------------- operations ---------------------*/");
+ _builder.newLine();
+ {
+ EList<StandardOperation> _operations = ac.getOperations();
+ for(final StandardOperation operation : _operations) {
+ {
+ boolean _and = false;
+ boolean _usesInheritance = this.languageExt.usesInheritance();
+ if (!_usesInheritance) {
+ _and = false;
+ } else {
+ boolean _isConstructor = RoomHelpers.isConstructor(operation);
+ _and = (_usesInheritance && _isConstructor);
+ }
+ boolean _not = (!_and);
+ if (_not) {
+ String _name = ac.getName();
+ CharSequence _operationSignature = this.operationSignature(operation, _name, false);
+ _builder.append(_operationSignature, "");
+ _builder.append(" {");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ AbstractGenerator _instance = AbstractGenerator.getInstance();
+ DetailCode _detailCode = operation.getDetailCode();
+ String _translatedCode = _instance.getTranslatedCode(_detailCode);
+ _builder.append(_translatedCode, " ");
+ _builder.newLineIfNotEmpty();
+ _builder.append("}");
+ _builder.newLine();
+ }
+ }
+ }
+ }
+ return _builder;
+ }
+
+ public String destructorCall(final String classname) {
+ String _destructorName = this.languageExt.destructorName(classname);
+ String _plus = (_destructorName + "()");
+ return _plus;
+ }
+
+ private CharSequence operationSignature(final Operation operation, final String classname, final boolean isDeclaration) {
+ CharSequence _xifexpression = null;
+ boolean _isConstructor = RoomHelpers.isConstructor(operation);
+ if (_isConstructor) {
+ String _constructorName = this.languageExt.constructorName(classname);
+ String _constructorReturnType = this.languageExt.constructorReturnType();
+ CharSequence _classOperationSignature = this.classOperationSignature(classname, _constructorName, "", _constructorReturnType, isDeclaration);
+ _xifexpression = _classOperationSignature;
+ } else {
+ CharSequence _xifexpression_1 = null;
+ boolean _isDestructor = RoomHelpers.isDestructor(operation);
+ if (_isDestructor) {
+ String _destructorName = this.languageExt.destructorName(classname);
+ String _destructorReturnType = this.languageExt.destructorReturnType();
+ CharSequence _classOperationSignature_1 = this.classOperationSignature(classname, _destructorName, "", _destructorReturnType, isDeclaration);
+ _xifexpression_1 = _classOperationSignature_1;
+ } else {
+ String _name = operation.getName();
+ EList<VarDecl> _arguments = operation.getArguments();
+ CharSequence _BuildArgumentList = this.BuildArgumentList(_arguments);
+ String _string = _BuildArgumentList.toString();
+ RefableType _returntype = operation.getReturntype();
+ String _dataTypeToString = this.dataTypeToString(_returntype);
+ CharSequence _classOperationSignature_2 = this.classOperationSignature(classname, _name, _string, _dataTypeToString, isDeclaration);
+ _xifexpression_1 = _classOperationSignature_2;
+ }
+ _xifexpression = _xifexpression_1;
+ }
+ return _xifexpression;
+ }
+
+ private String dataTypeToString(final RefableType type) {
+ String _xifexpression = null;
+ boolean _equals = Objects.equal(type, null);
+ if (_equals) {
+ _xifexpression = "void";
+ } else {
+ String _xifexpression_1 = null;
+ boolean _isRef = type.isRef();
+ if (_isRef) {
+ DataType _type = type.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ String _pointerLiteral = this.languageExt.pointerLiteral();
+ String _plus = (_typeName + _pointerLiteral);
+ _xifexpression_1 = _plus;
+ } else {
+ DataType _type_1 = type.getType();
+ String _typeName_1 = this._typeHelpers.typeName(_type_1);
+ _xifexpression_1 = _typeName_1;
+ }
+ _xifexpression = _xifexpression_1;
+ }
+ return _xifexpression;
+ }
+
+ /**
+ * builds comma separated argument list as string from EList<VarDecl> arguments
+ */
+ private CharSequence BuildArgumentList(final EList<VarDecl> arguments) {
+ StringConcatenation _builder = new StringConcatenation();
+ {
+ boolean _hasElements = false;
+ for(final VarDecl argument : arguments) {
+ if (!_hasElements) {
+ _hasElements = true;
+ } else {
+ _builder.appendImmediate(", ", "");
+ }
+ RefableType _refType = argument.getRefType();
+ DataType _type = _refType.getType();
+ String _typeName = this._typeHelpers.typeName(_type);
+ _builder.append(_typeName, "");
+ {
+ RefableType _refType_1 = argument.getRefType();
+ boolean _isRef = _refType_1.isRef();
+ if (_isRef) {
+ String _pointerLiteral = this.languageExt.pointerLiteral();
+ _builder.append(_pointerLiteral, "");
+ }
+ }
+ _builder.append(" ");
+ String _name = argument.getName();
+ _builder.append(_name, "");
+ }
+ }
+ return _builder;
+ }
+
+ private CharSequence classOperationSignature(final String classname, final String operationname, final String argumentList, final String returnType, final boolean isDeclaration) {
+ StringConcatenation _builder = new StringConcatenation();
+ String _accessLevelPublic = this.languageExt.accessLevelPublic();
+ _builder.append(_accessLevelPublic, "");
+ _builder.append(returnType, "");
+ _builder.append(" ");
+ String _memberInDeclaration = this.languageExt.memberInDeclaration(classname, operationname);
+ _builder.append(_memberInDeclaration, "");
+ _builder.append("(");
+ boolean _isEmpty = argumentList.isEmpty();
+ boolean _not = (!_isEmpty);
+ String _selfPointer = this.languageExt.selfPointer(classname, _not);
+ _builder.append(_selfPointer, "");
+ _builder.append(argumentList, "");
+ _builder.append(")");
+ return _builder;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/RoomExtensions.java b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/RoomExtensions.java
index 45b1beba1..4e01d092e 100644
--- a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/RoomExtensions.java
+++ b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/RoomExtensions.java
@@ -1,959 +1,971 @@
-package org.eclipse.etrice.generator.generic;
-
-import com.google.common.base.Objects;
-import com.google.common.collect.Iterables;
-import com.google.inject.Singleton;
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.genmodel.etricegen.ActiveTrigger;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedRefinedState;
-import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.PortInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.SAPInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.ServiceImplInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.DataClass;
-import org.eclipse.etrice.core.room.DetailCode;
-import org.eclipse.etrice.core.room.ExternalPort;
-import org.eclipse.etrice.core.room.GeneralProtocolClass;
-import org.eclipse.etrice.core.room.Guard;
-import org.eclipse.etrice.core.room.InitialTransition;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.MessageHandler;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.core.room.PortClass;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.core.room.RoomClass;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.SAPRef;
-import org.eclipse.etrice.core.room.SPPRef;
-import org.eclipse.etrice.core.room.ServiceImplementation;
-import org.eclipse.etrice.core.room.SimpleState;
-import org.eclipse.etrice.core.room.StandardOperation;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.core.room.TrPoint;
-import org.eclipse.etrice.core.room.Transition;
-import org.eclipse.etrice.core.room.TransitionPoint;
-import org.eclipse.etrice.core.room.Trigger;
-import org.eclipse.etrice.core.room.TriggeredTransition;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.eclipse.etrice.core.room.util.RoomHelpers;
-import org.eclipse.etrice.generator.base.CodegenHelpers;
-import org.eclipse.xtext.xbase.lib.Functions.Function1;
-import org.eclipse.xtext.xbase.lib.IterableExtensions;
-
-@Singleton
-@SuppressWarnings("all")
-public class RoomExtensions {
- public <T extends Object> List<T> union(final List<T> l1, final List<T> l2) {
- ArrayList<T> _arrayList = new ArrayList<T>();
- ArrayList<T> ret = _arrayList;
- ret.addAll(l1);
- ret.addAll(l2);
- return ret;
- }
-
- public <T extends Object> Iterable<T> union(final Iterable<T> l1, final Iterable<T> l2) {
- ArrayList<T> _arrayList = new ArrayList<T>();
- ArrayList<T> ret = _arrayList;
- Iterables.<T>addAll(ret, l1);
- Iterables.<T>addAll(ret, l2);
- return ret;
- }
-
- public List<Port> punion(final List<Port> in1, final List<ExternalPort> in2) {
- ArrayList<Port> _arrayList = new ArrayList<Port>();
- ArrayList<Port> ret = _arrayList;
- for (final ExternalPort ele : in2) {
- Port _ifport = ele.getIfport();
- ret.add(_ifport);
- }
- ret.addAll(in1);
- return ret;
- }
-
- public String getGenerationPathSegment() {
- return "/src-gen/";
- }
-
- public String getDocGenerationPathSegment() {
- return "/doc-gen/";
- }
-
- public String getModelPath(final EObject e) {
- Resource res = e.eResource();
- boolean _equals = Objects.equal(res, null);
- if (_equals) {
- return "";
- } else {
- URI _uRI = res.getURI();
- return _uRI.toFileString();
- }
- }
-
- public String getPackage(final RoomClass rc) {
- EObject _eContainer = rc.eContainer();
- return ((RoomModel) _eContainer).getName();
- }
-
- public String getPathFromPackage(final String packageName) {
- String _replaceAll = packageName.replaceAll("\\.", "/");
- return (_replaceAll + "/");
- }
-
- public String getPath(final RoomClass rc) {
- String _package = this.getPackage(rc);
- String _pathFromPackage = this.getPathFromPackage(_package);
- return _pathFromPackage;
- }
-
- public String getProjectPath(final EObject e) {
- Resource res = e.eResource();
- boolean _equals = Objects.equal(res, null);
- if (_equals) {
- return "";
- } else {
- File _file = new File("");
- File tmpf = _file;
- URI _uRI = res.getURI();
- String _fileString = _uRI.toFileString();
- File _file_1 = new File(_fileString);
- tmpf = _file_1;
- boolean _isFile = tmpf.isFile();
- boolean _not = (!_isFile);
- if (_not) {
- return "";
- }
- boolean isProject = false;
- boolean _dowhile = false;
- do {
- {
- File _parentFile = tmpf.getParentFile();
- tmpf = _parentFile;
- String[] contents = tmpf.list();
- for (final String f : contents) {
- boolean _equals_1 = f.equals(".project");
- if (_equals_1) {
- isProject = true;
- }
- }
- }
- boolean _and = false;
- boolean _not_1 = (!isProject);
- if (!_not_1) {
- _and = false;
- } else {
- File _parentFile = tmpf.getParentFile();
- boolean _notEquals = (!Objects.equal(_parentFile, null));
- _and = (_not_1 && _notEquals);
- }
- _dowhile = _and;
- } while(_dowhile);
- return tmpf.getAbsolutePath();
- }
- }
-
- public String getGenerationTargetPath(final EObject e) {
- String _projectPath = this.getProjectPath(e);
- String _generationPathSegment = this.getGenerationPathSegment();
- return (_projectPath + _generationPathSegment);
- }
-
- public String getDocGenerationTargetPath(final EObject e) {
- String _projectPath = this.getProjectPath(e);
- String _docGenerationPathSegment = this.getDocGenerationPathSegment();
- return (_projectPath + _docGenerationPathSegment);
- }
-
- public List<Port> getEndPorts(final ActorClass ac) {
- EList<Port> _intPorts = ac.getIntPorts();
- EList<ExternalPort> _extPorts = ac.getExtPorts();
- List<Port> _punion = this.punion(_intPorts, _extPorts);
- return _punion;
- }
-
- public List<Port> getAllEndPorts(final ActorClass ac) {
- List<Port> _xifexpression = null;
- ActorClass _base = ac.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- return this.getEndPorts(ac);
- } else {
- ActorClass _base_1 = ac.getBase();
- List<Port> _allEndPorts = this.getAllEndPorts(_base_1);
- List<Port> _endPorts = this.getEndPorts(ac);
- List<Port> _union = this.<Port>union(_allEndPorts, _endPorts);
- _xifexpression = _union;
- }
- return _xifexpression;
- }
-
- public List<SAPRef> getAllSAPs(final ActorClass ac) {
- List<SAPRef> _xifexpression = null;
- ActorClass _base = ac.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- return ac.getStrSAPs();
- } else {
- ActorClass _base_1 = ac.getBase();
- List<SAPRef> _allSAPs = this.getAllSAPs(_base_1);
- EList<SAPRef> _strSAPs = ac.getStrSAPs();
- List<SAPRef> _union = this.<SAPRef>union(_allSAPs, _strSAPs);
- _xifexpression = _union;
- }
- return _xifexpression;
- }
-
- public List<ServiceImplementation> getAllServiceImplementations(final ActorClass ac) {
- List<ServiceImplementation> _xifexpression = null;
- ActorClass _base = ac.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- return ac.getServiceImplementations();
- } else {
- ActorClass _base_1 = ac.getBase();
- List<ServiceImplementation> _allServiceImplementations = this.getAllServiceImplementations(_base_1);
- EList<ServiceImplementation> _serviceImplementations = ac.getServiceImplementations();
- List<ServiceImplementation> _union = this.<ServiceImplementation>union(_allServiceImplementations, _serviceImplementations);
- _xifexpression = _union;
- }
- return _xifexpression;
- }
-
- public String getPathName(final String path) {
- String _replaceAll = path.replaceAll("/", "_");
- return _replaceAll;
- }
-
- public List<Attribute> getAllAttributes(final DataClass dc) {
- List<Attribute> _xifexpression = null;
- DataClass _base = dc.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- return dc.getAttributes();
- } else {
- DataClass _base_1 = dc.getBase();
- List<Attribute> _allAttributes = this.getAllAttributes(_base_1);
- EList<Attribute> _attributes = dc.getAttributes();
- List<Attribute> _union = this.<Attribute>union(_allAttributes, _attributes);
- _xifexpression = _union;
- }
- return _xifexpression;
- }
-
- public List<Attribute> getAllAttributes(final ActorClass ac) {
- List<Attribute> _xifexpression = null;
- ActorClass _base = ac.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- return ac.getAttributes();
- } else {
- ActorClass _base_1 = ac.getBase();
- List<Attribute> _allAttributes = this.getAllAttributes(_base_1);
- EList<Attribute> _attributes = ac.getAttributes();
- List<Attribute> _union = this.<Attribute>union(_allAttributes, _attributes);
- _xifexpression = _union;
- }
- return _xifexpression;
- }
-
- protected String _getPortClassName(final Port p) {
- String _xifexpression = null;
- GeneralProtocolClass _protocol = p.getProtocol();
- if ((_protocol instanceof ProtocolClass)) {
- GeneralProtocolClass _protocol_1 = p.getProtocol();
- boolean _isConjugated = p.isConjugated();
- boolean _isReplicated = p.isReplicated();
- String _portClassName = this.getPortClassName(((ProtocolClass) _protocol_1), _isConjugated, _isReplicated);
- _xifexpression = _portClassName;
- } else {
- _xifexpression = "";
- }
- return _xifexpression;
- }
-
- protected String _getPortClassName(final SAPRef sap) {
- ProtocolClass _protocol = sap.getProtocol();
- return this.getPortClassName(_protocol, true);
- }
-
- protected String _getPortClassName(final SPPRef spp) {
- ProtocolClass _protocol = spp.getProtocol();
- return this.getPortClassName(_protocol, false, true);
- }
-
- public String getPortClassName(final ProtocolClass p, final boolean conj) {
- String _portClassName = this.getPortClassName(p, conj, false);
- return _portClassName;
- }
-
- public String getPortClassName(final ProtocolClass p, final boolean conj, final boolean repl) {
- String _name = p.getName();
- String _xifexpression = null;
- if (conj) {
- _xifexpression = "Conj";
- } else {
- _xifexpression = "";
- }
- String _plus = (_name + _xifexpression);
- String _xifexpression_1 = null;
- if (repl) {
- _xifexpression_1 = "Repl";
- } else {
- _xifexpression_1 = "";
- }
- String _plus_1 = (_plus + _xifexpression_1);
- String _plus_2 = (_plus_1 + "Port");
- return _plus_2;
- }
-
- protected String _getPortClassName(final ExternalPort p) {
- Port _ifport = p.getIfport();
- return this.getPortClassName(_ifport);
- }
-
- protected String _getPortClassName(final ServiceImplementation svc) {
- SPPRef _spp = svc.getSpp();
- ProtocolClass _protocol = _spp.getProtocol();
- return this.getPortClassName(_protocol, false, true);
- }
-
- public List<Message> getAllIncomingMessages(final ProtocolClass pc) {
- ProtocolClass _base = pc.getBase();
- boolean _notEquals = (!Objects.equal(_base, null));
- if (_notEquals) {
- ProtocolClass _base_1 = pc.getBase();
- List<Message> _allIncomingMessages = this.getAllIncomingMessages(_base_1);
- EList<Message> _incomingMessages = pc.getIncomingMessages();
- return this.<Message>union(_allIncomingMessages, _incomingMessages);
- } else {
- return pc.getIncomingMessages();
- }
- }
-
- public List<Message> getAllOutgoingMessages(final ProtocolClass pc) {
- EList<Message> _xifexpression = null;
- ProtocolClass _base = pc.getBase();
- boolean _notEquals = (!Objects.equal(_base, null));
- if (_notEquals) {
- ProtocolClass _base_1 = pc.getBase();
- List<Message> _allOutgoingMessages = this.getAllOutgoingMessages(_base_1);
- EList<Message> _outgoingMessages = pc.getOutgoingMessages();
- return this.<Message>union(_allOutgoingMessages, _outgoingMessages);
- } else {
- EList<Message> _outgoingMessages_1 = pc.getOutgoingMessages();
- _xifexpression = _outgoingMessages_1;
- }
- return _xifexpression;
- }
-
- public List<Message> getIncoming(final ProtocolClass pc, final boolean conj) {
- if (conj) {
- return this.getAllOutgoingMessages(pc);
- } else {
- return this.getAllIncomingMessages(pc);
- }
- }
-
- public List<Message> getOutgoing(final ProtocolClass pc, final boolean conj) {
- if (conj) {
- return this.getAllIncomingMessages(pc);
- } else {
- return this.getAllOutgoingMessages(pc);
- }
- }
-
- public PortClass getPortClass(final ProtocolClass pc, final boolean conj) {
- if (conj) {
- return pc.getConjugate();
- } else {
- return pc.getRegular();
- }
- }
-
- public boolean handlesSend(final ProtocolClass pc, final boolean conj) {
- PortClass _portClass = this.getPortClass(pc, conj);
- boolean _equals = Objects.equal(_portClass, null);
- if (_equals) {
- return false;
- } else {
- PortClass _portClass_1 = this.getPortClass(pc, conj);
- EList<MessageHandler> _msgHandlers = _portClass_1.getMsgHandlers();
- for (final MessageHandler hdlr : _msgHandlers) {
- List<Message> _outgoing = this.getOutgoing(pc, conj);
- Message _msg = hdlr.getMsg();
- boolean _contains = _outgoing.contains(_msg);
- if (_contains) {
- return true;
- }
- }
- }
- return false;
- }
-
- public boolean handlesReceive(final ProtocolClass pc, final boolean conj) {
- PortClass _portClass = this.getPortClass(pc, conj);
- boolean _equals = Objects.equal(_portClass, null);
- if (_equals) {
- return false;
- } else {
- PortClass _portClass_1 = this.getPortClass(pc, conj);
- EList<MessageHandler> _msgHandlers = _portClass_1.getMsgHandlers();
- for (final MessageHandler hdlr : _msgHandlers) {
- List<Message> _incoming = this.getIncoming(pc, conj);
- Message _msg = hdlr.getMsg();
- boolean _contains = _incoming.contains(_msg);
- if (_contains) {
- return true;
- }
- }
- }
- return false;
- }
-
- public boolean isConjugated(final InterfaceItemInstance iii) {
- if ((iii instanceof PortInstance)) {
- Port _port = ((PortInstance) iii).getPort();
- return _port.isConjugated();
- } else {
- if ((iii instanceof SAPInstance)) {
- return true;
- } else {
- if ((iii instanceof ServiceImplInstance)) {
- return false;
- } else {
- return false;
- }
- }
- }
- }
-
- public List<MessageHandler> getReceiveHandlers(final ProtocolClass pc, final boolean conj) {
- PortClass _portClass = this.getPortClass(pc, conj);
- boolean _equals = Objects.equal(_portClass, null);
- if (_equals) {
- ArrayList<MessageHandler> _arrayList = new ArrayList<MessageHandler>();
- return _arrayList;
- } else {
- ArrayList<MessageHandler> _arrayList_1 = new ArrayList<MessageHandler>();
- ArrayList<MessageHandler> res = _arrayList_1;
- PortClass _portClass_1 = this.getPortClass(pc, conj);
- EList<MessageHandler> _msgHandlers = _portClass_1.getMsgHandlers();
- for (final MessageHandler hdlr : _msgHandlers) {
- List<Message> _incoming = this.getIncoming(pc, conj);
- Message _msg = hdlr.getMsg();
- boolean _contains = _incoming.contains(_msg);
- if (_contains) {
- res.add(hdlr);
- }
- }
- return res;
- }
- }
-
- public List<MessageHandler> getSendHandlers(final ProtocolClass pc, final boolean conj) {
- PortClass _portClass = this.getPortClass(pc, conj);
- boolean _equals = Objects.equal(_portClass, null);
- if (_equals) {
- ArrayList<MessageHandler> _arrayList = new ArrayList<MessageHandler>();
- return _arrayList;
- } else {
- ArrayList<MessageHandler> _arrayList_1 = new ArrayList<MessageHandler>();
- ArrayList<MessageHandler> res = _arrayList_1;
- PortClass _portClass_1 = this.getPortClass(pc, conj);
- EList<MessageHandler> _msgHandlers = _portClass_1.getMsgHandlers();
- for (final MessageHandler hdlr : _msgHandlers) {
- List<Message> _outgoing = this.getOutgoing(pc, conj);
- Message _msg = hdlr.getMsg();
- boolean _contains = _outgoing.contains(_msg);
- if (_contains) {
- res.add(hdlr);
- }
- }
- return res;
- }
- }
-
- public MessageHandler getSendHandler(final Message m, final boolean conj) {
- EObject _eContainer = m.eContainer();
- List<MessageHandler> _sendHandlers = this.getSendHandlers(((ProtocolClass) _eContainer), conj);
- final Function1<MessageHandler,Boolean> _function = new Function1<MessageHandler,Boolean>() {
- public Boolean apply(final MessageHandler e) {
- Message _msg = e.getMsg();
- boolean _equals = Objects.equal(_msg, m);
- return Boolean.valueOf(_equals);
- }
- };
- return IterableExtensions.<MessageHandler>findFirst(_sendHandlers, _function);
- }
-
- public boolean isIncoming(final Message m) {
- EObject _eContainer = m.eContainer();
- List<Message> _allIncomingMessages = this.getAllIncomingMessages(((ProtocolClass) _eContainer));
- return _allIncomingMessages.contains(m);
- }
-
- public String getCodeName(final Message m) {
- boolean _isIncoming = this.isIncoming(m);
- if (_isIncoming) {
- String _name = m.getName();
- return ("IN_" + _name);
- } else {
- String _name_1 = m.getName();
- return ("OUT_" + _name_1);
- }
- }
-
- public boolean isLeaf(final State s) {
- StateGraph _subgraph = s.getSubgraph();
- boolean _equals = Objects.equal(_subgraph, null);
- return _equals;
- }
-
- public List<State> getLeafStateList(final StateGraph sg) {
- ArrayList<State> _arrayList = new ArrayList<State>();
- ArrayList<State> res = _arrayList;
- boolean _notEquals = (!Objects.equal(sg, null));
- if (_notEquals) {
- EList<State> _states = sg.getStates();
- for (final State s : _states) {
- List<State> _leafStateList = this.getLeafStateList(s);
- res.addAll(_leafStateList);
- }
- }
- return res;
- }
-
- public List<State> getLeafStateList(final State s) {
- boolean _isLeaf = this.isLeaf(s);
- if (_isLeaf) {
- ArrayList<State> _arrayList = new ArrayList<State>();
- ArrayList<State> res = _arrayList;
- res.add(s);
- return res;
- } else {
- StateGraph _subgraph = s.getSubgraph();
- return this.getLeafStateList(_subgraph);
- }
- }
-
- public List<State> getStateList(final StateGraph sg) {
- ArrayList<State> _arrayList = new ArrayList<State>();
- ArrayList<State> ret = _arrayList;
- boolean _notEquals = (!Objects.equal(sg, null));
- if (_notEquals) {
- EList<State> _states = sg.getStates();
- for (final State e : _states) {
- {
- ret.add(e);
- StateGraph _subgraph = e.getSubgraph();
- boolean _notEquals_1 = (!Objects.equal(_subgraph, null));
- if (_notEquals_1) {
- StateGraph _subgraph_1 = e.getSubgraph();
- List<State> _stateList = this.getStateList(_subgraph_1);
- ret.addAll(_stateList);
- }
- }
- }
- }
- return ret;
- }
-
- public List<State> getBaseStateList(final StateGraph sg) {
- ArrayList<State> _arrayList = new ArrayList<State>();
- ArrayList<State> ret = _arrayList;
- boolean _notEquals = (!Objects.equal(sg, null));
- if (_notEquals) {
- List<State> _stateList = this.getStateList(sg);
- for (final State e : _stateList) {
- if ((e instanceof SimpleState)) {
- ret.add(e);
- }
- }
- }
- return ret;
- }
-
- public ArrayList<State> getLeafStatesLast(final List<State> states) {
- ArrayList<State> _arrayList = new ArrayList<State>();
- ArrayList<State> leaf = _arrayList;
- ArrayList<State> _arrayList_1 = new ArrayList<State>();
- ArrayList<State> nonLeaf = _arrayList_1;
- for (final State state : states) {
- boolean _isLeaf = this.isLeaf(state);
- if (_isLeaf) {
- leaf.add(state);
- } else {
- nonLeaf.add(state);
- }
- }
- nonLeaf.addAll(leaf);
- return nonLeaf;
- }
-
- public List<State> getAllBaseStates(final ActorClass ac) {
- List<State> _xifexpression = null;
- ActorClass _base = ac.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- StateGraph _stateMachine = ac.getStateMachine();
- return this.getBaseStateList(_stateMachine);
- } else {
- ActorClass _base_1 = ac.getBase();
- List<State> _allBaseStates = this.getAllBaseStates(_base_1);
- StateGraph _stateMachine_1 = ac.getStateMachine();
- List<State> _baseStateList = this.getBaseStateList(_stateMachine_1);
- List<State> _union = this.<State>union(_allBaseStates, _baseStateList);
- _xifexpression = _union;
- }
- return _xifexpression;
- }
-
- public List<State> getAllBaseStatesLeavesLast(final ActorClass ac) {
- List<State> _xifexpression = null;
- ActorClass _base = ac.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- StateGraph _stateMachine = ac.getStateMachine();
- List<State> _baseStateList = this.getBaseStateList(_stateMachine);
- return this.getLeafStatesLast(_baseStateList);
- } else {
- ActorClass _base_1 = ac.getBase();
- List<State> _allBaseStates = this.getAllBaseStates(_base_1);
- ArrayList<State> _leafStatesLast = this.getLeafStatesLast(_allBaseStates);
- StateGraph _stateMachine_1 = ac.getStateMachine();
- List<State> _baseStateList_1 = this.getBaseStateList(_stateMachine_1);
- ArrayList<State> _leafStatesLast_1 = this.getLeafStatesLast(_baseStateList_1);
- List<State> _union = this.<State>union(_leafStatesLast, _leafStatesLast_1);
- _xifexpression = _union;
- }
- return _xifexpression;
- }
-
- public List<State> getAllLeafStates(final ActorClass ac) {
- List<State> _xifexpression = null;
- ActorClass _base = ac.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- StateGraph _stateMachine = ac.getStateMachine();
- return this.getLeafStateList(_stateMachine);
- } else {
- ActorClass _base_1 = ac.getBase();
- List<State> _allLeafStates = this.getAllLeafStates(_base_1);
- StateGraph _stateMachine_1 = ac.getStateMachine();
- List<State> _leafStateList = this.getLeafStateList(_stateMachine_1);
- List<State> _union = this.<State>union(_allLeafStates, _leafStateList);
- _xifexpression = _union;
- }
- return _xifexpression;
- }
-
- public boolean overridesStop(final ActorClass ac) {
- boolean _or = false;
- EList<StandardOperation> _operations = ac.getOperations();
- final Function1<StandardOperation,Boolean> _function = new Function1<StandardOperation,Boolean>() {
- public Boolean apply(final StandardOperation e) {
- boolean _and = false;
- boolean _and_1 = false;
- String _name = e.getName();
- boolean _equals = Objects.equal(_name, "stop");
- if (!_equals) {
- _and_1 = false;
- } else {
- EList<VarDecl> _arguments = e.getArguments();
- boolean _isEmpty = _arguments.isEmpty();
- _and_1 = (_equals && _isEmpty);
- }
- if (!_and_1) {
- _and = false;
- } else {
- RefableType _returntype = e.getReturntype();
- boolean _equals_1 = Objects.equal(_returntype, null);
- _and = (_and_1 && _equals_1);
- }
- return Boolean.valueOf(_and);
- }
- };
- boolean _exists = IterableExtensions.<StandardOperation>exists(_operations, _function);
- if (_exists) {
- _or = true;
- } else {
- boolean _and = false;
- ActorClass _base = ac.getBase();
- boolean _notEquals = (!Objects.equal(_base, null));
- if (!_notEquals) {
- _and = false;
- } else {
- ActorClass _base_1 = ac.getBase();
- boolean _overridesStop = this.overridesStop(_base_1);
- _and = (_notEquals && _overridesStop);
- }
- _or = (_exists || _and);
- }
- return _or;
- }
-
- public int getNumberOfInheritedStates(final ActorClass ac) {
- ActorClass _base = ac.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- return 0;
- } else {
- ActorClass _base_1 = ac.getBase();
- StateGraph _stateMachine = _base_1.getStateMachine();
- List<State> _stateList = this.getStateList(_stateMachine);
- int _size = _stateList.size();
- ActorClass _base_2 = ac.getBase();
- int _numberOfInheritedStates = this.getNumberOfInheritedStates(_base_2);
- return (_size + _numberOfInheritedStates);
- }
- }
-
- public int getNumberOfInheritedBaseStates(final ActorClass ac) {
- ActorClass _base = ac.getBase();
- boolean _equals = Objects.equal(_base, null);
- if (_equals) {
- return 0;
- } else {
- ActorClass _base_1 = ac.getBase();
- StateGraph _stateMachine = _base_1.getStateMachine();
- List<State> _baseStateList = this.getBaseStateList(_stateMachine);
- int _size = _baseStateList.size();
- ActorClass _base_2 = ac.getBase();
- int _numberOfInheritedBaseStates = this.getNumberOfInheritedBaseStates(_base_2);
- return (_size + _numberOfInheritedBaseStates);
- }
- }
-
- public String getStateId(final State s) {
- return CodegenHelpers.getGenStateId(s);
- }
-
- public String getStatePathName(final State s) {
- return CodegenHelpers.getGenStatePathName(s);
- }
-
- public String getChainId(final TransitionChain t) {
- return CodegenHelpers.getGenChainId(t);
- }
-
- public boolean hasGuard(final Trigger tr) {
- boolean _and = false;
- boolean _and_1 = false;
- Guard _guard = tr.getGuard();
- boolean _notEquals = (!Objects.equal(_guard, null));
- if (!_notEquals) {
- _and_1 = false;
- } else {
- Guard _guard_1 = tr.getGuard();
- DetailCode _guard_2 = _guard_1.getGuard();
- boolean _notEquals_1 = (!Objects.equal(_guard_2, null));
- _and_1 = (_notEquals && _notEquals_1);
- }
- if (!_and_1) {
- _and = false;
- } else {
- Guard _guard_3 = tr.getGuard();
- DetailCode _guard_4 = _guard_3.getGuard();
- EList<String> _commands = _guard_4.getCommands();
- int _size = _commands.size();
- boolean _greaterThan = (_size > 0);
- _and = (_and_1 && _greaterThan);
- }
- return _and;
- }
-
- public boolean hasGuard(final ExpandedActorClass ac, final ActiveTrigger at) {
- boolean hasGuard = false;
- EList<TriggeredTransition> _transitions = at.getTransitions();
- for (final TriggeredTransition t : _transitions) {
- EList<Trigger> _triggers = t.getTriggers();
- final Function1<Trigger,Boolean> _function = new Function1<Trigger,Boolean>() {
- public Boolean apply(final Trigger e) {
- boolean _and = false;
- String _trigger = at.getTrigger();
- boolean _isMatching = ac.isMatching(e, _trigger);
- if (!_isMatching) {
- _and = false;
- } else {
- boolean _hasGuard = RoomExtensions.this.hasGuard(e);
- _and = (_isMatching && _hasGuard);
- }
- return Boolean.valueOf(_and);
- }
- };
- boolean _exists = IterableExtensions.<Trigger>exists(_triggers, _function);
- if (_exists) {
- hasGuard = true;
- }
- }
- return hasGuard;
- }
-
- public boolean empty(final DetailCode dc) {
- String _detailCode = RoomHelpers.getDetailCode(dc);
- boolean _equals = Objects.equal(_detailCode, "");
- return _equals;
- }
-
- public boolean hasEntryCode(final State s) {
- DetailCode _entryCode = s.getEntryCode();
- boolean _empty = this.empty(_entryCode);
- boolean _not = (!_empty);
- if (_not) {
- return true;
- }
- if ((s instanceof ExpandedRefinedState)) {
- DetailCode _inheritedEntry = ((ExpandedRefinedState) s).getInheritedEntry();
- boolean _empty_1 = this.empty(_inheritedEntry);
- return (!_empty_1);
- }
- return false;
- }
-
- public boolean hasExitCode(final State s) {
- DetailCode _exitCode = s.getExitCode();
- boolean _empty = this.empty(_exitCode);
- boolean _not = (!_empty);
- if (_not) {
- return true;
- }
- if ((s instanceof ExpandedRefinedState)) {
- DetailCode _inheritedExit = ((ExpandedRefinedState) s).getInheritedExit();
- boolean _empty_1 = this.empty(_inheritedExit);
- return (!_empty_1);
- }
- return false;
- }
-
- public boolean hasDoCode(final State s) {
- DetailCode _doCode = s.getDoCode();
- boolean _empty = this.empty(_doCode);
- boolean _not = (!_empty);
- if (_not) {
- return true;
- }
- if ((s instanceof ExpandedRefinedState)) {
- DetailCode _inheritedDo = ((ExpandedRefinedState) s).getInheritedDo();
- boolean _empty_1 = this.empty(_inheritedDo);
- return (!_empty_1);
- }
- return false;
- }
-
- public boolean hasActionCode(final Transition t) {
- boolean _and = false;
- DetailCode _action = t.getAction();
- boolean _notEquals = (!Objects.equal(_action, null));
- if (!_notEquals) {
- _and = false;
- } else {
- DetailCode _action_1 = t.getAction();
- EList<String> _commands = _action_1.getCommands();
- int _size = _commands.size();
- boolean _greaterThan = (_size > 0);
- _and = (_notEquals && _greaterThan);
- }
- return _and;
- }
-
- public String getContextId(final TransitionChain tc) {
- State _stateContext = tc.getStateContext();
- String _stateId = this.getStateId(_stateContext);
- return _stateId;
- }
-
- public Transition getInitTransition(final StateGraph sg) {
- EList<Transition> _transitions = sg.getTransitions();
- for (final Transition tr : _transitions) {
- if ((tr instanceof InitialTransition)) {
- return tr;
- }
- }
- return null;
- }
-
- public boolean hasInitTransition(final StateGraph sg) {
- EList<Transition> _transitions = sg.getTransitions();
- for (final Transition tr : _transitions) {
- if ((tr instanceof InitialTransition)) {
- return true;
- }
- }
- return false;
- }
-
- public List<Transition> getTransitionList(final State s) {
- boolean _isLeaf = this.isLeaf(s);
- if (_isLeaf) {
- ArrayList<Transition> _arrayList = new ArrayList<Transition>();
- return _arrayList;
- } else {
- StateGraph _subgraph = s.getSubgraph();
- return this.getTransitionList(_subgraph);
- }
- }
-
- public List<Transition> getTransitionList(final StateGraph sg) {
- EList<Transition> _transitions = sg.getTransitions();
- ArrayList<Transition> _arrayList = new ArrayList<Transition>(_transitions);
- ArrayList<Transition> res = _arrayList;
- EList<State> _states = sg.getStates();
- for (final State s : _states) {
- List<Transition> _transitionList = this.getTransitionList(s);
- res.addAll(_transitionList);
- }
- return res;
- }
-
- public List<Transition> getOutgoingTransitionsHierarchical(final ExpandedActorClass ac, final State s) {
- ArrayList<Transition> _arrayList = new ArrayList<Transition>();
- ArrayList<Transition> result = _arrayList;
- EList<Transition> _outgoingTransitions = ac.getOutgoingTransitions(s);
- result.addAll(_outgoingTransitions);
- EObject _eContainer = s.eContainer();
- StateGraph sg = ((StateGraph) _eContainer);
- EList<TrPoint> _trPoints = sg.getTrPoints();
- for (final TrPoint tp : _trPoints) {
- if ((tp instanceof TransitionPoint)) {
- EList<Transition> _outgoingTransitions_1 = ac.getOutgoingTransitions(tp);
- result.addAll(_outgoingTransitions_1);
- }
- }
- EObject _eContainer_1 = sg.eContainer();
- if ((_eContainer_1 instanceof State)) {
- EObject _eContainer_2 = sg.eContainer();
- List<Transition> _outgoingTransitionsHierarchical = this.getOutgoingTransitionsHierarchical(ac, ((State) _eContainer_2));
- result.addAll(_outgoingTransitionsHierarchical);
- }
- return result;
- }
-
- public String getPortClassName(final EObject p) {
- if (p instanceof Port) {
- return _getPortClassName((Port)p);
- } else if (p instanceof SAPRef) {
- return _getPortClassName((SAPRef)p);
- } else if (p instanceof SPPRef) {
- return _getPortClassName((SPPRef)p);
- } else if (p instanceof ExternalPort) {
- return _getPortClassName((ExternalPort)p);
- } else if (p instanceof ServiceImplementation) {
- return _getPortClassName((ServiceImplementation)p);
- } else {
- throw new IllegalArgumentException("Unhandled parameter types: " +
- Arrays.<Object>asList(p).toString());
- }
- }
-}
+package org.eclipse.etrice.generator.generic;
+
+import com.google.common.base.Objects;
+import com.google.common.collect.Iterables;
+import com.google.inject.Singleton;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.etrice.core.genmodel.etricegen.ActiveTrigger;
+import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.core.genmodel.etricegen.ExpandedRefinedState;
+import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance;
+import org.eclipse.etrice.core.genmodel.etricegen.PortInstance;
+import org.eclipse.etrice.core.genmodel.etricegen.SAPInstance;
+import org.eclipse.etrice.core.genmodel.etricegen.ServiceImplInstance;
+import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain;
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.Attribute;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DetailCode;
+import org.eclipse.etrice.core.room.ExternalPort;
+import org.eclipse.etrice.core.room.GeneralProtocolClass;
+import org.eclipse.etrice.core.room.Guard;
+import org.eclipse.etrice.core.room.InitialTransition;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.MessageHandler;
+import org.eclipse.etrice.core.room.Port;
+import org.eclipse.etrice.core.room.PortClass;
+import org.eclipse.etrice.core.room.ProtocolClass;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.core.room.RoomClass;
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.core.room.SAPRef;
+import org.eclipse.etrice.core.room.SPPRef;
+import org.eclipse.etrice.core.room.ServiceImplementation;
+import org.eclipse.etrice.core.room.SimpleState;
+import org.eclipse.etrice.core.room.StandardOperation;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.etrice.core.room.StateGraph;
+import org.eclipse.etrice.core.room.TrPoint;
+import org.eclipse.etrice.core.room.Transition;
+import org.eclipse.etrice.core.room.TransitionPoint;
+import org.eclipse.etrice.core.room.Trigger;
+import org.eclipse.etrice.core.room.TriggeredTransition;
+import org.eclipse.etrice.core.room.VarDecl;
+import org.eclipse.etrice.core.room.util.RoomHelpers;
+import org.eclipse.etrice.generator.base.CodegenHelpers;
+import org.eclipse.xtext.xbase.lib.Functions.Function1;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@Singleton
+@SuppressWarnings("all")
+public class RoomExtensions {
+ public <T extends Object> List<T> union(final List<T> l1, final List<T> l2) {
+ ArrayList<T> _arrayList = new ArrayList<T>();
+ ArrayList<T> ret = _arrayList;
+ ret.addAll(l1);
+ ret.addAll(l2);
+ return ret;
+ }
+
+ public <T extends Object> Iterable<T> union(final Iterable<T> l1, final Iterable<T> l2) {
+ ArrayList<T> _arrayList = new ArrayList<T>();
+ ArrayList<T> ret = _arrayList;
+ Iterables.<T>addAll(ret, l1);
+ Iterables.<T>addAll(ret, l2);
+ return ret;
+ }
+
+ public List<Port> punion(final List<Port> in1, final List<ExternalPort> in2) {
+ ArrayList<Port> _arrayList = new ArrayList<Port>();
+ ArrayList<Port> ret = _arrayList;
+ for (final ExternalPort ele : in2) {
+ Port _ifport = ele.getIfport();
+ ret.add(_ifport);
+ }
+ ret.addAll(in1);
+ return ret;
+ }
+
+ public <T extends Object> List<T> minus(final List<T> l1, final List<T> l2) {
+ ArrayList<T> _arrayList = new ArrayList<T>(l1);
+ ArrayList<T> ret = _arrayList;
+ ret.removeAll(l2);
+ return ret;
+ }
+
+ public String getGenerationPathSegment() {
+ return "/src-gen/";
+ }
+
+ public String getDocGenerationPathSegment() {
+ return "/doc-gen/";
+ }
+
+ public String getModelPath(final EObject e) {
+ Resource res = e.eResource();
+ boolean _equals = Objects.equal(res, null);
+ if (_equals) {
+ return "";
+ } else {
+ URI _uRI = res.getURI();
+ return _uRI.toFileString();
+ }
+ }
+
+ public String getPackage(final RoomClass rc) {
+ EObject _eContainer = rc.eContainer();
+ return ((RoomModel) _eContainer).getName();
+ }
+
+ public String getPathFromPackage(final String packageName) {
+ String _replaceAll = packageName.replaceAll("\\.", "/");
+ return (_replaceAll + "/");
+ }
+
+ public String getPath(final RoomClass rc) {
+ String _package = this.getPackage(rc);
+ String _pathFromPackage = this.getPathFromPackage(_package);
+ return _pathFromPackage;
+ }
+
+ public String getProjectPath(final EObject e) {
+ Resource res = e.eResource();
+ boolean _equals = Objects.equal(res, null);
+ if (_equals) {
+ return "";
+ } else {
+ File _file = new File("");
+ File tmpf = _file;
+ URI _uRI = res.getURI();
+ String _fileString = _uRI.toFileString();
+ File _file_1 = new File(_fileString);
+ tmpf = _file_1;
+ boolean _isFile = tmpf.isFile();
+ boolean _not = (!_isFile);
+ if (_not) {
+ return "";
+ }
+ boolean isProject = false;
+ boolean _dowhile = false;
+ do {
+ {
+ File _parentFile = tmpf.getParentFile();
+ tmpf = _parentFile;
+ String[] contents = tmpf.list();
+ for (final String f : contents) {
+ boolean _equals_1 = f.equals(".project");
+ if (_equals_1) {
+ isProject = true;
+ }
+ }
+ }
+ boolean _and = false;
+ boolean _not_1 = (!isProject);
+ if (!_not_1) {
+ _and = false;
+ } else {
+ File _parentFile = tmpf.getParentFile();
+ boolean _notEquals = (!Objects.equal(_parentFile, null));
+ _and = (_not_1 && _notEquals);
+ }
+ _dowhile = _and;
+ } while(_dowhile);
+ return tmpf.getAbsolutePath();
+ }
+ }
+
+ public String getGenerationTargetPath(final EObject e) {
+ String _projectPath = this.getProjectPath(e);
+ String _generationPathSegment = this.getGenerationPathSegment();
+ return (_projectPath + _generationPathSegment);
+ }
+
+ public String getDocGenerationTargetPath(final EObject e) {
+ String _projectPath = this.getProjectPath(e);
+ String _docGenerationPathSegment = this.getDocGenerationPathSegment();
+ return (_projectPath + _docGenerationPathSegment);
+ }
+
+ public List<Port> getEndPorts(final ActorClass ac) {
+ EList<Port> _intPorts = ac.getIntPorts();
+ EList<ExternalPort> _extPorts = ac.getExtPorts();
+ List<Port> _punion = this.punion(_intPorts, _extPorts);
+ return _punion;
+ }
+
+ public List<Port> getAllEndPorts(final ActorClass ac) {
+ List<Port> _xifexpression = null;
+ ActorClass _base = ac.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ return this.getEndPorts(ac);
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ List<Port> _allEndPorts = this.getAllEndPorts(_base_1);
+ List<Port> _endPorts = this.getEndPorts(ac);
+ List<Port> _union = this.<Port>union(_allEndPorts, _endPorts);
+ _xifexpression = _union;
+ }
+ return _xifexpression;
+ }
+
+ public List<SAPRef> getAllSAPs(final ActorClass ac) {
+ List<SAPRef> _xifexpression = null;
+ ActorClass _base = ac.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ return ac.getStrSAPs();
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ List<SAPRef> _allSAPs = this.getAllSAPs(_base_1);
+ EList<SAPRef> _strSAPs = ac.getStrSAPs();
+ List<SAPRef> _union = this.<SAPRef>union(_allSAPs, _strSAPs);
+ _xifexpression = _union;
+ }
+ return _xifexpression;
+ }
+
+ public List<ServiceImplementation> getAllServiceImplementations(final ActorClass ac) {
+ List<ServiceImplementation> _xifexpression = null;
+ ActorClass _base = ac.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ return ac.getServiceImplementations();
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ List<ServiceImplementation> _allServiceImplementations = this.getAllServiceImplementations(_base_1);
+ EList<ServiceImplementation> _serviceImplementations = ac.getServiceImplementations();
+ List<ServiceImplementation> _union = this.<ServiceImplementation>union(_allServiceImplementations, _serviceImplementations);
+ _xifexpression = _union;
+ }
+ return _xifexpression;
+ }
+
+ public String getPathName(final String path) {
+ String _replaceAll = path.replaceAll("/", "_");
+ return _replaceAll;
+ }
+
+ public List<Attribute> getAllAttributes(final DataClass dc) {
+ List<Attribute> _xifexpression = null;
+ DataClass _base = dc.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ return dc.getAttributes();
+ } else {
+ DataClass _base_1 = dc.getBase();
+ List<Attribute> _allAttributes = this.getAllAttributes(_base_1);
+ EList<Attribute> _attributes = dc.getAttributes();
+ List<Attribute> _union = this.<Attribute>union(_allAttributes, _attributes);
+ _xifexpression = _union;
+ }
+ return _xifexpression;
+ }
+
+ public List<Attribute> getAllAttributes(final ActorClass ac) {
+ List<Attribute> _xifexpression = null;
+ ActorClass _base = ac.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ return ac.getAttributes();
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ List<Attribute> _allAttributes = this.getAllAttributes(_base_1);
+ EList<Attribute> _attributes = ac.getAttributes();
+ List<Attribute> _union = this.<Attribute>union(_allAttributes, _attributes);
+ _xifexpression = _union;
+ }
+ return _xifexpression;
+ }
+
+ public ActorClass getContainingActorClass(final EObject o) {
+ ActorClass _actorClass = RoomHelpers.getActorClass(o);
+ return _actorClass;
+ }
+
+ protected String _getPortClassName(final Port p) {
+ String _xifexpression = null;
+ GeneralProtocolClass _protocol = p.getProtocol();
+ if ((_protocol instanceof ProtocolClass)) {
+ GeneralProtocolClass _protocol_1 = p.getProtocol();
+ boolean _isConjugated = p.isConjugated();
+ boolean _isReplicated = p.isReplicated();
+ String _portClassName = this.getPortClassName(((ProtocolClass) _protocol_1), _isConjugated, _isReplicated);
+ _xifexpression = _portClassName;
+ } else {
+ _xifexpression = "";
+ }
+ return _xifexpression;
+ }
+
+ protected String _getPortClassName(final SAPRef sap) {
+ ProtocolClass _protocol = sap.getProtocol();
+ return this.getPortClassName(_protocol, true);
+ }
+
+ protected String _getPortClassName(final SPPRef spp) {
+ ProtocolClass _protocol = spp.getProtocol();
+ return this.getPortClassName(_protocol, false, true);
+ }
+
+ public String getPortClassName(final ProtocolClass p, final boolean conj) {
+ String _portClassName = this.getPortClassName(p, conj, false);
+ return _portClassName;
+ }
+
+ public String getPortClassName(final ProtocolClass p, final boolean conj, final boolean repl) {
+ String _name = p.getName();
+ String _xifexpression = null;
+ if (conj) {
+ _xifexpression = "Conj";
+ } else {
+ _xifexpression = "";
+ }
+ String _plus = (_name + _xifexpression);
+ String _xifexpression_1 = null;
+ if (repl) {
+ _xifexpression_1 = "Repl";
+ } else {
+ _xifexpression_1 = "";
+ }
+ String _plus_1 = (_plus + _xifexpression_1);
+ String _plus_2 = (_plus_1 + "Port");
+ return _plus_2;
+ }
+
+ protected String _getPortClassName(final ExternalPort p) {
+ Port _ifport = p.getIfport();
+ return this.getPortClassName(_ifport);
+ }
+
+ protected String _getPortClassName(final ServiceImplementation svc) {
+ SPPRef _spp = svc.getSpp();
+ ProtocolClass _protocol = _spp.getProtocol();
+ return this.getPortClassName(_protocol, false, true);
+ }
+
+ public List<Message> getAllIncomingMessages(final ProtocolClass pc) {
+ ProtocolClass _base = pc.getBase();
+ boolean _notEquals = (!Objects.equal(_base, null));
+ if (_notEquals) {
+ ProtocolClass _base_1 = pc.getBase();
+ List<Message> _allIncomingMessages = this.getAllIncomingMessages(_base_1);
+ EList<Message> _incomingMessages = pc.getIncomingMessages();
+ return this.<Message>union(_allIncomingMessages, _incomingMessages);
+ } else {
+ return pc.getIncomingMessages();
+ }
+ }
+
+ public List<Message> getAllOutgoingMessages(final ProtocolClass pc) {
+ EList<Message> _xifexpression = null;
+ ProtocolClass _base = pc.getBase();
+ boolean _notEquals = (!Objects.equal(_base, null));
+ if (_notEquals) {
+ ProtocolClass _base_1 = pc.getBase();
+ List<Message> _allOutgoingMessages = this.getAllOutgoingMessages(_base_1);
+ EList<Message> _outgoingMessages = pc.getOutgoingMessages();
+ return this.<Message>union(_allOutgoingMessages, _outgoingMessages);
+ } else {
+ EList<Message> _outgoingMessages_1 = pc.getOutgoingMessages();
+ _xifexpression = _outgoingMessages_1;
+ }
+ return _xifexpression;
+ }
+
+ public List<Message> getIncoming(final ProtocolClass pc, final boolean conj) {
+ if (conj) {
+ return this.getAllOutgoingMessages(pc);
+ } else {
+ return this.getAllIncomingMessages(pc);
+ }
+ }
+
+ public List<Message> getOutgoing(final ProtocolClass pc, final boolean conj) {
+ if (conj) {
+ return this.getAllIncomingMessages(pc);
+ } else {
+ return this.getAllOutgoingMessages(pc);
+ }
+ }
+
+ public PortClass getPortClass(final ProtocolClass pc, final boolean conj) {
+ if (conj) {
+ return pc.getConjugate();
+ } else {
+ return pc.getRegular();
+ }
+ }
+
+ public boolean handlesSend(final ProtocolClass pc, final boolean conj) {
+ PortClass _portClass = this.getPortClass(pc, conj);
+ boolean _equals = Objects.equal(_portClass, null);
+ if (_equals) {
+ return false;
+ } else {
+ PortClass _portClass_1 = this.getPortClass(pc, conj);
+ EList<MessageHandler> _msgHandlers = _portClass_1.getMsgHandlers();
+ for (final MessageHandler hdlr : _msgHandlers) {
+ List<Message> _outgoing = this.getOutgoing(pc, conj);
+ Message _msg = hdlr.getMsg();
+ boolean _contains = _outgoing.contains(_msg);
+ if (_contains) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ public boolean handlesReceive(final ProtocolClass pc, final boolean conj) {
+ PortClass _portClass = this.getPortClass(pc, conj);
+ boolean _equals = Objects.equal(_portClass, null);
+ if (_equals) {
+ return false;
+ } else {
+ PortClass _portClass_1 = this.getPortClass(pc, conj);
+ EList<MessageHandler> _msgHandlers = _portClass_1.getMsgHandlers();
+ for (final MessageHandler hdlr : _msgHandlers) {
+ List<Message> _incoming = this.getIncoming(pc, conj);
+ Message _msg = hdlr.getMsg();
+ boolean _contains = _incoming.contains(_msg);
+ if (_contains) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ public boolean isConjugated(final InterfaceItemInstance iii) {
+ if ((iii instanceof PortInstance)) {
+ Port _port = ((PortInstance) iii).getPort();
+ return _port.isConjugated();
+ } else {
+ if ((iii instanceof SAPInstance)) {
+ return true;
+ } else {
+ if ((iii instanceof ServiceImplInstance)) {
+ return false;
+ } else {
+ return false;
+ }
+ }
+ }
+ }
+
+ public List<MessageHandler> getReceiveHandlers(final ProtocolClass pc, final boolean conj) {
+ PortClass _portClass = this.getPortClass(pc, conj);
+ boolean _equals = Objects.equal(_portClass, null);
+ if (_equals) {
+ ArrayList<MessageHandler> _arrayList = new ArrayList<MessageHandler>();
+ return _arrayList;
+ } else {
+ ArrayList<MessageHandler> _arrayList_1 = new ArrayList<MessageHandler>();
+ ArrayList<MessageHandler> res = _arrayList_1;
+ PortClass _portClass_1 = this.getPortClass(pc, conj);
+ EList<MessageHandler> _msgHandlers = _portClass_1.getMsgHandlers();
+ for (final MessageHandler hdlr : _msgHandlers) {
+ List<Message> _incoming = this.getIncoming(pc, conj);
+ Message _msg = hdlr.getMsg();
+ boolean _contains = _incoming.contains(_msg);
+ if (_contains) {
+ res.add(hdlr);
+ }
+ }
+ return res;
+ }
+ }
+
+ public List<MessageHandler> getSendHandlers(final ProtocolClass pc, final boolean conj) {
+ PortClass _portClass = this.getPortClass(pc, conj);
+ boolean _equals = Objects.equal(_portClass, null);
+ if (_equals) {
+ ArrayList<MessageHandler> _arrayList = new ArrayList<MessageHandler>();
+ return _arrayList;
+ } else {
+ ArrayList<MessageHandler> _arrayList_1 = new ArrayList<MessageHandler>();
+ ArrayList<MessageHandler> res = _arrayList_1;
+ PortClass _portClass_1 = this.getPortClass(pc, conj);
+ EList<MessageHandler> _msgHandlers = _portClass_1.getMsgHandlers();
+ for (final MessageHandler hdlr : _msgHandlers) {
+ List<Message> _outgoing = this.getOutgoing(pc, conj);
+ Message _msg = hdlr.getMsg();
+ boolean _contains = _outgoing.contains(_msg);
+ if (_contains) {
+ res.add(hdlr);
+ }
+ }
+ return res;
+ }
+ }
+
+ public MessageHandler getSendHandler(final Message m, final boolean conj) {
+ EObject _eContainer = m.eContainer();
+ List<MessageHandler> _sendHandlers = this.getSendHandlers(((ProtocolClass) _eContainer), conj);
+ final Function1<MessageHandler,Boolean> _function = new Function1<MessageHandler,Boolean>() {
+ public Boolean apply(final MessageHandler e) {
+ Message _msg = e.getMsg();
+ boolean _equals = Objects.equal(_msg, m);
+ return Boolean.valueOf(_equals);
+ }
+ };
+ return IterableExtensions.<MessageHandler>findFirst(_sendHandlers, _function);
+ }
+
+ public boolean isIncoming(final Message m) {
+ EObject _eContainer = m.eContainer();
+ List<Message> _allIncomingMessages = this.getAllIncomingMessages(((ProtocolClass) _eContainer));
+ return _allIncomingMessages.contains(m);
+ }
+
+ public String getCodeName(final Message m) {
+ boolean _isIncoming = this.isIncoming(m);
+ if (_isIncoming) {
+ String _name = m.getName();
+ return ("IN_" + _name);
+ } else {
+ String _name_1 = m.getName();
+ return ("OUT_" + _name_1);
+ }
+ }
+
+ public boolean isLeaf(final State s) {
+ StateGraph _subgraph = s.getSubgraph();
+ boolean _equals = Objects.equal(_subgraph, null);
+ return _equals;
+ }
+
+ public List<State> getLeafStateList(final StateGraph sg) {
+ ArrayList<State> _arrayList = new ArrayList<State>();
+ ArrayList<State> res = _arrayList;
+ boolean _notEquals = (!Objects.equal(sg, null));
+ if (_notEquals) {
+ EList<State> _states = sg.getStates();
+ for (final State s : _states) {
+ List<State> _leafStateList = this.getLeafStateList(s);
+ res.addAll(_leafStateList);
+ }
+ }
+ return res;
+ }
+
+ public List<State> getLeafStateList(final State s) {
+ boolean _isLeaf = this.isLeaf(s);
+ if (_isLeaf) {
+ ArrayList<State> _arrayList = new ArrayList<State>();
+ ArrayList<State> res = _arrayList;
+ res.add(s);
+ return res;
+ } else {
+ StateGraph _subgraph = s.getSubgraph();
+ return this.getLeafStateList(_subgraph);
+ }
+ }
+
+ public List<State> getStateList(final StateGraph sg) {
+ ArrayList<State> _arrayList = new ArrayList<State>();
+ ArrayList<State> ret = _arrayList;
+ boolean _notEquals = (!Objects.equal(sg, null));
+ if (_notEquals) {
+ EList<State> _states = sg.getStates();
+ for (final State e : _states) {
+ {
+ ret.add(e);
+ StateGraph _subgraph = e.getSubgraph();
+ boolean _notEquals_1 = (!Objects.equal(_subgraph, null));
+ if (_notEquals_1) {
+ StateGraph _subgraph_1 = e.getSubgraph();
+ List<State> _stateList = this.getStateList(_subgraph_1);
+ ret.addAll(_stateList);
+ }
+ }
+ }
+ }
+ return ret;
+ }
+
+ public List<State> getBaseStateList(final StateGraph sg) {
+ ArrayList<State> _arrayList = new ArrayList<State>();
+ ArrayList<State> ret = _arrayList;
+ boolean _notEquals = (!Objects.equal(sg, null));
+ if (_notEquals) {
+ List<State> _stateList = this.getStateList(sg);
+ for (final State e : _stateList) {
+ if ((e instanceof SimpleState)) {
+ ret.add(e);
+ }
+ }
+ }
+ return ret;
+ }
+
+ public ArrayList<State> getLeafStatesLast(final List<State> states) {
+ ArrayList<State> _arrayList = new ArrayList<State>();
+ ArrayList<State> leaf = _arrayList;
+ ArrayList<State> _arrayList_1 = new ArrayList<State>();
+ ArrayList<State> nonLeaf = _arrayList_1;
+ for (final State state : states) {
+ boolean _isLeaf = this.isLeaf(state);
+ if (_isLeaf) {
+ leaf.add(state);
+ } else {
+ nonLeaf.add(state);
+ }
+ }
+ nonLeaf.addAll(leaf);
+ return nonLeaf;
+ }
+
+ public List<State> getAllBaseStates(final ActorClass ac) {
+ List<State> _xifexpression = null;
+ ActorClass _base = ac.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ StateGraph _stateMachine = ac.getStateMachine();
+ return this.getBaseStateList(_stateMachine);
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ List<State> _allBaseStates = this.getAllBaseStates(_base_1);
+ StateGraph _stateMachine_1 = ac.getStateMachine();
+ List<State> _baseStateList = this.getBaseStateList(_stateMachine_1);
+ List<State> _union = this.<State>union(_allBaseStates, _baseStateList);
+ _xifexpression = _union;
+ }
+ return _xifexpression;
+ }
+
+ public List<State> getAllBaseStatesLeavesLast(final ActorClass ac) {
+ List<State> _xifexpression = null;
+ ActorClass _base = ac.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ StateGraph _stateMachine = ac.getStateMachine();
+ List<State> _baseStateList = this.getBaseStateList(_stateMachine);
+ return this.getLeafStatesLast(_baseStateList);
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ List<State> _allBaseStates = this.getAllBaseStates(_base_1);
+ ArrayList<State> _leafStatesLast = this.getLeafStatesLast(_allBaseStates);
+ StateGraph _stateMachine_1 = ac.getStateMachine();
+ List<State> _baseStateList_1 = this.getBaseStateList(_stateMachine_1);
+ ArrayList<State> _leafStatesLast_1 = this.getLeafStatesLast(_baseStateList_1);
+ List<State> _union = this.<State>union(_leafStatesLast, _leafStatesLast_1);
+ _xifexpression = _union;
+ }
+ return _xifexpression;
+ }
+
+ public List<State> getAllLeafStates(final ActorClass ac) {
+ List<State> _xifexpression = null;
+ ActorClass _base = ac.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ StateGraph _stateMachine = ac.getStateMachine();
+ return this.getLeafStateList(_stateMachine);
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ List<State> _allLeafStates = this.getAllLeafStates(_base_1);
+ StateGraph _stateMachine_1 = ac.getStateMachine();
+ List<State> _leafStateList = this.getLeafStateList(_stateMachine_1);
+ List<State> _union = this.<State>union(_allLeafStates, _leafStateList);
+ _xifexpression = _union;
+ }
+ return _xifexpression;
+ }
+
+ public boolean overridesStop(final ActorClass ac) {
+ boolean _or = false;
+ EList<StandardOperation> _operations = ac.getOperations();
+ final Function1<StandardOperation,Boolean> _function = new Function1<StandardOperation,Boolean>() {
+ public Boolean apply(final StandardOperation e) {
+ boolean _and = false;
+ boolean _and_1 = false;
+ String _name = e.getName();
+ boolean _equals = Objects.equal(_name, "stop");
+ if (!_equals) {
+ _and_1 = false;
+ } else {
+ EList<VarDecl> _arguments = e.getArguments();
+ boolean _isEmpty = _arguments.isEmpty();
+ _and_1 = (_equals && _isEmpty);
+ }
+ if (!_and_1) {
+ _and = false;
+ } else {
+ RefableType _returntype = e.getReturntype();
+ boolean _equals_1 = Objects.equal(_returntype, null);
+ _and = (_and_1 && _equals_1);
+ }
+ return Boolean.valueOf(_and);
+ }
+ };
+ boolean _exists = IterableExtensions.<StandardOperation>exists(_operations, _function);
+ if (_exists) {
+ _or = true;
+ } else {
+ boolean _and = false;
+ ActorClass _base = ac.getBase();
+ boolean _notEquals = (!Objects.equal(_base, null));
+ if (!_notEquals) {
+ _and = false;
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ boolean _overridesStop = this.overridesStop(_base_1);
+ _and = (_notEquals && _overridesStop);
+ }
+ _or = (_exists || _and);
+ }
+ return _or;
+ }
+
+ public int getNumberOfInheritedStates(final ActorClass ac) {
+ ActorClass _base = ac.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ return 0;
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ StateGraph _stateMachine = _base_1.getStateMachine();
+ List<State> _stateList = this.getStateList(_stateMachine);
+ int _size = _stateList.size();
+ ActorClass _base_2 = ac.getBase();
+ int _numberOfInheritedStates = this.getNumberOfInheritedStates(_base_2);
+ return (_size + _numberOfInheritedStates);
+ }
+ }
+
+ public int getNumberOfInheritedBaseStates(final ActorClass ac) {
+ ActorClass _base = ac.getBase();
+ boolean _equals = Objects.equal(_base, null);
+ if (_equals) {
+ return 0;
+ } else {
+ ActorClass _base_1 = ac.getBase();
+ StateGraph _stateMachine = _base_1.getStateMachine();
+ List<State> _baseStateList = this.getBaseStateList(_stateMachine);
+ int _size = _baseStateList.size();
+ ActorClass _base_2 = ac.getBase();
+ int _numberOfInheritedBaseStates = this.getNumberOfInheritedBaseStates(_base_2);
+ return (_size + _numberOfInheritedBaseStates);
+ }
+ }
+
+ public String getStateId(final State s) {
+ return CodegenHelpers.getGenStateId(s);
+ }
+
+ public String getStatePathName(final State s) {
+ return CodegenHelpers.getGenStatePathName(s);
+ }
+
+ public String getChainId(final TransitionChain t) {
+ return CodegenHelpers.getGenChainId(t);
+ }
+
+ public boolean hasGuard(final Trigger tr) {
+ boolean _and = false;
+ boolean _and_1 = false;
+ Guard _guard = tr.getGuard();
+ boolean _notEquals = (!Objects.equal(_guard, null));
+ if (!_notEquals) {
+ _and_1 = false;
+ } else {
+ Guard _guard_1 = tr.getGuard();
+ DetailCode _guard_2 = _guard_1.getGuard();
+ boolean _notEquals_1 = (!Objects.equal(_guard_2, null));
+ _and_1 = (_notEquals && _notEquals_1);
+ }
+ if (!_and_1) {
+ _and = false;
+ } else {
+ Guard _guard_3 = tr.getGuard();
+ DetailCode _guard_4 = _guard_3.getGuard();
+ EList<String> _commands = _guard_4.getCommands();
+ int _size = _commands.size();
+ boolean _greaterThan = (_size > 0);
+ _and = (_and_1 && _greaterThan);
+ }
+ return _and;
+ }
+
+ public boolean hasGuard(final ExpandedActorClass ac, final ActiveTrigger at) {
+ boolean hasGuard = false;
+ EList<TriggeredTransition> _transitions = at.getTransitions();
+ for (final TriggeredTransition t : _transitions) {
+ EList<Trigger> _triggers = t.getTriggers();
+ final Function1<Trigger,Boolean> _function = new Function1<Trigger,Boolean>() {
+ public Boolean apply(final Trigger e) {
+ boolean _and = false;
+ String _trigger = at.getTrigger();
+ boolean _isMatching = ac.isMatching(e, _trigger);
+ if (!_isMatching) {
+ _and = false;
+ } else {
+ boolean _hasGuard = RoomExtensions.this.hasGuard(e);
+ _and = (_isMatching && _hasGuard);
+ }
+ return Boolean.valueOf(_and);
+ }
+ };
+ boolean _exists = IterableExtensions.<Trigger>exists(_triggers, _function);
+ if (_exists) {
+ hasGuard = true;
+ }
+ }
+ return hasGuard;
+ }
+
+ public boolean empty(final DetailCode dc) {
+ String _detailCode = RoomHelpers.getDetailCode(dc);
+ boolean _equals = Objects.equal(_detailCode, "");
+ return _equals;
+ }
+
+ public boolean hasEntryCode(final State s) {
+ DetailCode _entryCode = s.getEntryCode();
+ boolean _empty = this.empty(_entryCode);
+ boolean _not = (!_empty);
+ if (_not) {
+ return true;
+ }
+ if ((s instanceof ExpandedRefinedState)) {
+ DetailCode _inheritedEntry = ((ExpandedRefinedState) s).getInheritedEntry();
+ boolean _empty_1 = this.empty(_inheritedEntry);
+ return (!_empty_1);
+ }
+ return false;
+ }
+
+ public boolean hasExitCode(final State s) {
+ DetailCode _exitCode = s.getExitCode();
+ boolean _empty = this.empty(_exitCode);
+ boolean _not = (!_empty);
+ if (_not) {
+ return true;
+ }
+ if ((s instanceof ExpandedRefinedState)) {
+ DetailCode _inheritedExit = ((ExpandedRefinedState) s).getInheritedExit();
+ boolean _empty_1 = this.empty(_inheritedExit);
+ return (!_empty_1);
+ }
+ return false;
+ }
+
+ public boolean hasDoCode(final State s) {
+ DetailCode _doCode = s.getDoCode();
+ boolean _empty = this.empty(_doCode);
+ boolean _not = (!_empty);
+ if (_not) {
+ return true;
+ }
+ if ((s instanceof ExpandedRefinedState)) {
+ DetailCode _inheritedDo = ((ExpandedRefinedState) s).getInheritedDo();
+ boolean _empty_1 = this.empty(_inheritedDo);
+ return (!_empty_1);
+ }
+ return false;
+ }
+
+ public boolean hasActionCode(final Transition t) {
+ boolean _and = false;
+ DetailCode _action = t.getAction();
+ boolean _notEquals = (!Objects.equal(_action, null));
+ if (!_notEquals) {
+ _and = false;
+ } else {
+ DetailCode _action_1 = t.getAction();
+ EList<String> _commands = _action_1.getCommands();
+ int _size = _commands.size();
+ boolean _greaterThan = (_size > 0);
+ _and = (_notEquals && _greaterThan);
+ }
+ return _and;
+ }
+
+ public String getContextId(final TransitionChain tc) {
+ State _stateContext = tc.getStateContext();
+ String _stateId = this.getStateId(_stateContext);
+ return _stateId;
+ }
+
+ public Transition getInitTransition(final StateGraph sg) {
+ EList<Transition> _transitions = sg.getTransitions();
+ for (final Transition tr : _transitions) {
+ if ((tr instanceof InitialTransition)) {
+ return tr;
+ }
+ }
+ return null;
+ }
+
+ public boolean hasInitTransition(final StateGraph sg) {
+ EList<Transition> _transitions = sg.getTransitions();
+ for (final Transition tr : _transitions) {
+ if ((tr instanceof InitialTransition)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ public List<Transition> getTransitionList(final State s) {
+ boolean _isLeaf = this.isLeaf(s);
+ if (_isLeaf) {
+ ArrayList<Transition> _arrayList = new ArrayList<Transition>();
+ return _arrayList;
+ } else {
+ StateGraph _subgraph = s.getSubgraph();
+ return this.getTransitionList(_subgraph);
+ }
+ }
+
+ public List<Transition> getTransitionList(final StateGraph sg) {
+ EList<Transition> _transitions = sg.getTransitions();
+ ArrayList<Transition> _arrayList = new ArrayList<Transition>(_transitions);
+ ArrayList<Transition> res = _arrayList;
+ EList<State> _states = sg.getStates();
+ for (final State s : _states) {
+ List<Transition> _transitionList = this.getTransitionList(s);
+ res.addAll(_transitionList);
+ }
+ return res;
+ }
+
+ public List<Transition> getOutgoingTransitionsHierarchical(final ExpandedActorClass ac, final State s) {
+ ArrayList<Transition> _arrayList = new ArrayList<Transition>();
+ ArrayList<Transition> result = _arrayList;
+ EList<Transition> _outgoingTransitions = ac.getOutgoingTransitions(s);
+ result.addAll(_outgoingTransitions);
+ EObject _eContainer = s.eContainer();
+ StateGraph sg = ((StateGraph) _eContainer);
+ EList<TrPoint> _trPoints = sg.getTrPoints();
+ for (final TrPoint tp : _trPoints) {
+ if ((tp instanceof TransitionPoint)) {
+ EList<Transition> _outgoingTransitions_1 = ac.getOutgoingTransitions(tp);
+ result.addAll(_outgoingTransitions_1);
+ }
+ }
+ EObject _eContainer_1 = sg.eContainer();
+ if ((_eContainer_1 instanceof State)) {
+ EObject _eContainer_2 = sg.eContainer();
+ List<Transition> _outgoingTransitionsHierarchical = this.getOutgoingTransitionsHierarchical(ac, ((State) _eContainer_2));
+ result.addAll(_outgoingTransitionsHierarchical);
+ }
+ return result;
+ }
+
+ public String getPortClassName(final EObject p) {
+ if (p instanceof Port) {
+ return _getPortClassName((Port)p);
+ } else if (p instanceof SAPRef) {
+ return _getPortClassName((SAPRef)p);
+ } else if (p instanceof SPPRef) {
+ return _getPortClassName((SPPRef)p);
+ } else if (p instanceof ExternalPort) {
+ return _getPortClassName((ExternalPort)p);
+ } else if (p instanceof ServiceImplementation) {
+ return _getPortClassName((ServiceImplementation)p);
+ } else {
+ throw new IllegalArgumentException("Unhandled parameter types: " +
+ Arrays.<Object>asList(p).toString());
+ }
+ }
+}
diff --git a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/TypeHelpers.java b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/TypeHelpers.java
index 825f209aa..80078c381 100644
--- a/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/TypeHelpers.java
+++ b/plugins/org.eclipse.etrice.generator/xtend-gen/org/eclipse/etrice/generator/generic/TypeHelpers.java
@@ -1,57 +1,86 @@
-package org.eclipse.etrice.generator.generic;
-
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import org.eclipse.etrice.core.room.DataType;
-import org.eclipse.etrice.core.room.ExternalType;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.PrimitiveType;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator;
-
-@Singleton
-@SuppressWarnings("all")
-public class TypeHelpers {
- @Inject
- private AbstractTransitionChainGenerator chainGenerator;
-
- public String typeName(final DataType type) {
- if ((type instanceof PrimitiveType)) {
- return ((PrimitiveType) type).getTargetName();
- } else {
- if ((type instanceof ExternalType)) {
- return ((ExternalType) type).getTargetName();
- } else {
- return type.getName();
- }
- }
- }
-
- public String defaultValue(final DataType dt) {
- if ((dt instanceof PrimitiveType)) {
- return ((PrimitiveType) dt).getDefaultValueLiteral();
- } else {
- if ((dt instanceof ExternalType)) {
- String _targetName = ((ExternalType) dt).getTargetName();
- String _plus = ("new " + _targetName);
- return (_plus + "()");
- } else {
- String _name = dt.getName();
- String _plus_1 = ("new " + _name);
- return (_plus_1 + "()");
- }
- }
- }
-
- public String defaultValue(final VarDecl a) {
- RefableType _refType = a.getRefType();
- DataType _type = _refType.getType();
- return this.defaultValue(_type);
- }
-
- public String getTypedDataDefinition(final Message m) {
- VarDecl _data = m.getData();
- return this.chainGenerator.generateTypedData(_data);
- }
-}
+package org.eclipse.etrice.generator.generic;
+
+import com.google.common.base.Objects;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+import org.eclipse.etrice.core.room.DataClass;
+import org.eclipse.etrice.core.room.DataType;
+import org.eclipse.etrice.core.room.ExternalType;
+import org.eclipse.etrice.core.room.LiteralType;
+import org.eclipse.etrice.core.room.Message;
+import org.eclipse.etrice.core.room.PrimitiveType;
+import org.eclipse.etrice.core.room.RefableType;
+import org.eclipse.etrice.core.room.VarDecl;
+import org.eclipse.etrice.generator.generic.AbstractTransitionChainGenerator;
+
+@Singleton
+@SuppressWarnings("all")
+public class TypeHelpers {
+ @Inject
+ private AbstractTransitionChainGenerator chainGenerator;
+
+ public String typeName(final DataType type) {
+ if ((type instanceof PrimitiveType)) {
+ return ((PrimitiveType) type).getTargetName();
+ } else {
+ if ((type instanceof ExternalType)) {
+ return ((ExternalType) type).getTargetName();
+ } else {
+ return type.getName();
+ }
+ }
+ }
+
+ public String defaultValue(final DataType dt) {
+ if ((dt instanceof PrimitiveType)) {
+ return ((PrimitiveType) dt).getDefaultValueLiteral();
+ } else {
+ if ((dt instanceof ExternalType)) {
+ String _targetName = ((ExternalType) dt).getTargetName();
+ String _plus = ("new " + _targetName);
+ return (_plus + "()");
+ } else {
+ String _name = dt.getName();
+ String _plus_1 = ("new " + _name);
+ return (_plus_1 + "()");
+ }
+ }
+ }
+
+ public String defaultValue(final VarDecl a) {
+ RefableType _refType = a.getRefType();
+ DataType _type = _refType.getType();
+ return this.defaultValue(_type);
+ }
+
+ public String getTypedDataDefinition(final Message m) {
+ VarDecl _data = m.getData();
+ return this.chainGenerator.generateTypedData(_data);
+ }
+
+ public boolean isPrimitive(final DataType type) {
+ return (type instanceof PrimitiveType);
+ }
+
+ public boolean isDataClass(final DataType type) {
+ return (type instanceof DataClass);
+ }
+
+ public boolean isCharacterType(final PrimitiveType type) {
+ LiteralType _type = type.getType();
+ boolean _equals = Objects.equal(_type, LiteralType.CHAR);
+ return _equals;
+ }
+
+ public boolean isCharacterType(final DataType type) {
+ boolean _and = false;
+ boolean _isPrimitive = this.isPrimitive(type);
+ if (!_isPrimitive) {
+ _and = false;
+ } else {
+ boolean _isCharacterType = this.isCharacterType(((PrimitiveType) type));
+ _and = (_isPrimitive && _isCharacterType);
+ }
+ return _and;
+ }
+}
diff --git a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.c.zip b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.c.zip
index 4397cf9b6..d77257be7 100644
--- a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.c.zip
+++ b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.c.zip
Binary files differ
diff --git a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.java.zip b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.java.zip
index e2121cbe6..aecdf03b0 100644
--- a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.java.zip
+++ b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.java.zip
Binary files differ
diff --git a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.c.zip b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.c.zip
index 74e459c39..3d74c9fb2 100644
--- a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.c.zip
+++ b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.c.zip
Binary files differ
diff --git a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.java.zip b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.java.zip
index be4e089c4..75a6514dd 100644
--- a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.java.zip
+++ b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.java.zip
Binary files differ
diff --git a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.tutorials.zip b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.tutorials.zip
index 535d3bb49..47fe39c2e 100644
--- a/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.tutorials.zip
+++ b/plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.tutorials.zip
Binary files differ

Back to the top