From 0a31d5448e92d915c7163c3985fa0807f67d3f06 Mon Sep 17 00:00:00 2001 From: OszkarSemerath Date: Wed, 17 Jan 2018 00:54:44 +0100 Subject: Scoping and linking of Viatra Packages and Patterns is completed --- .../internal/InternalApplicationConfiguration.g | 2526 +++++- .../InternalApplicationConfiguration.tokens | 80 +- .../InternalApplicationConfigurationLexer.java | 1404 ++- .../InternalApplicationConfigurationParser.java | 9144 ++++++++++++++++++-- 4 files changed, 12168 insertions(+), 986 deletions(-) (limited to 'Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal') diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfiguration.g b/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfiguration.g index f7f57fab..13039f39 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfiguration.g +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfiguration.g @@ -23,6 +23,7 @@ import org.eclipse.xtext.parser.*; import org.eclipse.xtext.parser.impl.*; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.common.util.Enumerator; import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; import org.eclipse.xtext.parser.antlr.XtextTokenStream; import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; @@ -132,39 +133,68 @@ ruleCommand returns [EObject current=null] @after { leaveRule(); }: - { - newCompositeNode(grammarAccess.getCommandAccess().getDeclarationParserRuleCall()); - } - this_Declaration_0=ruleDeclaration - { - $current = $this_Declaration_0.current; - afterParserOrEnumRuleCall(); - } + ( + { + newCompositeNode(grammarAccess.getCommandAccess().getDeclarationParserRuleCall_0()); + } + this_Declaration_0=ruleDeclaration + { + $current = $this_Declaration_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getCommandAccess().getTaskParserRuleCall_1()); + } + this_Task_1=ruleTask + { + $current = $this_Task_1.current; + afterParserOrEnumRuleCall(); + } + ) ; -// Entry rule entryRuleDeclaration -entryRuleDeclaration returns [EObject current=null]: - { newCompositeNode(grammarAccess.getDeclarationRule()); } - iv_ruleDeclaration=ruleDeclaration - { $current=$iv_ruleDeclaration.current; } +// Entry rule entryRuleQualifiedName +entryRuleQualifiedName returns [String current=null]: + { newCompositeNode(grammarAccess.getQualifiedNameRule()); } + iv_ruleQualifiedName=ruleQualifiedName + { $current=$iv_ruleQualifiedName.current.getText(); } EOF; -// Rule Declaration -ruleDeclaration returns [EObject current=null] +// Rule QualifiedName +ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] @init { enterRule(); } @after { leaveRule(); }: - { - newCompositeNode(grammarAccess.getDeclarationAccess().getMetamodelDeclarationParserRuleCall()); - } - this_MetamodelDeclaration_0=ruleMetamodelDeclaration - { - $current = $this_MetamodelDeclaration_0.current; - afterParserOrEnumRuleCall(); - } + ( + this_ID_0=RULE_ID + { + $current.merge(this_ID_0); + } + { + newLeafNode(this_ID_0, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); + } + ( + ( + ('.')=> + kw='.' + { + $current.merge(kw); + newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); + } + ) + this_ID_2=RULE_ID + { + $current.merge(this_ID_2); + } + { + newLeafNode(this_ID_2, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); + } + )* + ) ; // Entry rule entryRuleImport @@ -283,6 +313,243 @@ ruleViatraImport returns [EObject current=null] ) ; +// Entry rule entryRuleDeclaration +entryRuleDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getDeclarationRule()); } + iv_ruleDeclaration=ruleDeclaration + { $current=$iv_ruleDeclaration.current; } + EOF; + +// Rule Declaration +ruleDeclaration returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getDeclarationAccess().getFileDeclarationParserRuleCall_0()); + } + this_FileDeclaration_0=ruleFileDeclaration + { + $current = $this_FileDeclaration_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getDeclarationAccess().getMetamodelDeclarationParserRuleCall_1()); + } + this_MetamodelDeclaration_1=ruleMetamodelDeclaration + { + $current = $this_MetamodelDeclaration_1.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getDeclarationAccess().getPartialModelDeclarationParserRuleCall_2()); + } + this_PartialModelDeclaration_2=rulePartialModelDeclaration + { + $current = $this_PartialModelDeclaration_2.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getDeclarationAccess().getGraphPatternDeclarationParserRuleCall_3()); + } + this_GraphPatternDeclaration_3=ruleGraphPatternDeclaration + { + $current = $this_GraphPatternDeclaration_3.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getDeclarationAccess().getConfigDeclarationParserRuleCall_4()); + } + this_ConfigDeclaration_4=ruleConfigDeclaration + { + $current = $this_ConfigDeclaration_4.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getDeclarationAccess().getScopeDeclarationParserRuleCall_5()); + } + this_ScopeDeclaration_5=ruleScopeDeclaration + { + $current = $this_ScopeDeclaration_5.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleFileSpecification +entryRuleFileSpecification returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFileSpecificationRule()); } + iv_ruleFileSpecification=ruleFileSpecification + { $current=$iv_ruleFileSpecification.current; } + EOF; + +// Rule FileSpecification +ruleFileSpecification returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + lv_path_0_0=RULE_STRING + { + newLeafNode(lv_path_0_0, grammarAccess.getFileSpecificationAccess().getPathSTRINGTerminalRuleCall_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getFileSpecificationRule()); + } + setWithLastConsumed( + $current, + "path", + lv_path_0_0, + "org.eclipse.xtext.common.Terminals.STRING"); + } + ) + ) +; + +// Entry rule entryRuleFileDeclaration +entryRuleFileDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFileDeclarationRule()); } + iv_ruleFileDeclaration=ruleFileDeclaration + { $current=$iv_ruleFileDeclaration.current; } + EOF; + +// Rule FileDeclaration +ruleFileDeclaration returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='file' + { + newLeafNode(otherlv_0, grammarAccess.getFileDeclarationAccess().getFileKeyword_0()); + } + ( + ( + lv_name_1_0=RULE_ID + { + newLeafNode(lv_name_1_0, grammarAccess.getFileDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getFileDeclarationRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + } + ) + ) + otherlv_2='=' + { + newLeafNode(otherlv_2, grammarAccess.getFileDeclarationAccess().getEqualsSignKeyword_2()); + } + ( + ( + { + newCompositeNode(grammarAccess.getFileDeclarationAccess().getSpecificationFileSpecificationParserRuleCall_3_0()); + } + lv_specification_3_0=ruleFileSpecification + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getFileDeclarationRule()); + } + set( + $current, + "specification", + lv_specification_3_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.FileSpecification"); + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleFileReference +entryRuleFileReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFileReferenceRule()); } + iv_ruleFileReference=ruleFileReference + { $current=$iv_ruleFileReference.current; } + EOF; + +// Rule FileReference +ruleFileReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getFileReferenceRule()); + } + } + otherlv_0=RULE_ID + { + newLeafNode(otherlv_0, grammarAccess.getFileReferenceAccess().getReferredFileDeclarationCrossReference_0()); + } + ) + ) +; + +// Entry rule entryRuleFile +entryRuleFile returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFileRule()); } + iv_ruleFile=ruleFile + { $current=$iv_ruleFile.current; } + EOF; + +// Rule File +ruleFile returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getFileAccess().getFileSpecificationParserRuleCall_0()); + } + this_FileSpecification_0=ruleFileSpecification + { + $current = $this_FileSpecification_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getFileAccess().getFileReferenceParserRuleCall_1()); + } + this_FileReference_1=ruleFileReference + { + $current = $this_FileReference_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + // Entry rule entryRuleMetamodelSpecification entryRuleMetamodelSpecification returns [EObject current=null]: { newCompositeNode(grammarAccess.getMetamodelSpecificationRule()); } @@ -417,9 +684,12 @@ ruleAllPackageEntry returns [EObject current=null] $current = createModelElement(grammarAccess.getAllPackageEntryRule()); } } - otherlv_1=RULE_ID { - newLeafNode(otherlv_1, grammarAccess.getAllPackageEntryAccess().getPackageEPackageCrossReference_1_0()); + newCompositeNode(grammarAccess.getAllPackageEntryAccess().getPackageEPackageCrossReference_1_0()); + } + ruleQualifiedName + { + afterParserOrEnumRuleCall(); } ) ) @@ -508,9 +778,12 @@ ruleMetamodelElement returns [EObject current=null] $current = createModelElement(grammarAccess.getMetamodelElementRule()); } } - otherlv_0=RULE_ID { - newLeafNode(otherlv_0, grammarAccess.getMetamodelElementAccess().getPackageEPackageCrossReference_0_0_0()); + newCompositeNode(grammarAccess.getMetamodelElementAccess().getPackageEPackageCrossReference_0_0_0()); + } + ruleQualifiedName + { + afterParserOrEnumRuleCall(); } ) ) @@ -644,6 +917,2205 @@ ruleMetamodelReference returns [EObject current=null] ) ; +// Entry rule entryRuleMetamodel +entryRuleMetamodel returns [EObject current=null]: + { newCompositeNode(grammarAccess.getMetamodelRule()); } + iv_ruleMetamodel=ruleMetamodel + { $current=$iv_ruleMetamodel.current; } + EOF; + +// Rule Metamodel +ruleMetamodel returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getMetamodelAccess().getMetamodelReferenceParserRuleCall_0()); + } + this_MetamodelReference_0=ruleMetamodelReference + { + $current = $this_MetamodelReference_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getMetamodelAccess().getMetamodelSpecificationParserRuleCall_1()); + } + this_MetamodelSpecification_1=ruleMetamodelSpecification + { + $current = $this_MetamodelSpecification_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRulePartialModelSpecification +entryRulePartialModelSpecification returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPartialModelSpecificationRule()); } + iv_rulePartialModelSpecification=rulePartialModelSpecification + { $current=$iv_rulePartialModelSpecification.current; } + EOF; + +// Rule PartialModelSpecification +rulePartialModelSpecification returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='{' + { + newLeafNode(otherlv_0, grammarAccess.getPartialModelSpecificationAccess().getLeftCurlyBracketKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getPartialModelSpecificationAccess().getEntryPartialModelEntryParserRuleCall_1_0()); + } + lv_entry_1_0=rulePartialModelEntry + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getPartialModelSpecificationRule()); + } + add( + $current, + "entry", + lv_entry_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PartialModelEntry"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_2=',' + { + newLeafNode(otherlv_2, grammarAccess.getPartialModelSpecificationAccess().getCommaKeyword_2_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getPartialModelSpecificationAccess().getEntryPartialModelEntryParserRuleCall_2_1_0()); + } + lv_entry_3_0=rulePartialModelEntry + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getPartialModelSpecificationRule()); + } + add( + $current, + "entry", + lv_entry_3_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PartialModelEntry"); + afterParserOrEnumRuleCall(); + } + ) + ) + )? + otherlv_4='}' + { + newLeafNode(otherlv_4, grammarAccess.getPartialModelSpecificationAccess().getRightCurlyBracketKeyword_3()); + } + ) +; + +// Entry rule entryRulePartialModelEntry +entryRulePartialModelEntry returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPartialModelEntryRule()); } + iv_rulePartialModelEntry=rulePartialModelEntry + { $current=$iv_rulePartialModelEntry.current; } + EOF; + +// Rule PartialModelEntry +rulePartialModelEntry returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getPartialModelEntryAccess().getModelEntryParserRuleCall_0()); + } + this_ModelEntry_0=ruleModelEntry + { + $current = $this_ModelEntry_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getPartialModelEntryAccess().getFolderEntryParserRuleCall_1()); + } + this_FolderEntry_1=ruleFolderEntry + { + $current = $this_FolderEntry_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleModelEntry +entryRuleModelEntry returns [EObject current=null]: + { newCompositeNode(grammarAccess.getModelEntryRule()); } + iv_ruleModelEntry=ruleModelEntry + { $current=$iv_ruleModelEntry.current; } + EOF; + +// Rule ModelEntry +ruleModelEntry returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + newCompositeNode(grammarAccess.getModelEntryAccess().getPathFileParserRuleCall_0()); + } + lv_path_0_0=ruleFile + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getModelEntryRule()); + } + set( + $current, + "path", + lv_path_0_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + } + ) + ) +; + +// Entry rule entryRuleFolderEntry +entryRuleFolderEntry returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFolderEntryRule()); } + iv_ruleFolderEntry=ruleFolderEntry + { $current=$iv_ruleFolderEntry.current; } + EOF; + +// Rule FolderEntry +ruleFolderEntry returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='folder' + { + newLeafNode(otherlv_0, grammarAccess.getFolderEntryAccess().getFolderKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getFolderEntryAccess().getPathFileParserRuleCall_1_0()); + } + lv_path_1_0=ruleFile + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getFolderEntryRule()); + } + set( + $current, + "path", + lv_path_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_2='excluding' + { + newLeafNode(otherlv_2, grammarAccess.getFolderEntryAccess().getExcludingKeyword_2_0()); + } + otherlv_3='{' + { + newLeafNode(otherlv_3, grammarAccess.getFolderEntryAccess().getLeftCurlyBracketKeyword_2_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getFolderEntryAccess().getExclusionModelEntryParserRuleCall_2_2_0()); + } + lv_exclusion_4_0=ruleModelEntry + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getFolderEntryRule()); + } + add( + $current, + "exclusion", + lv_exclusion_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ModelEntry"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_5=',' + { + newLeafNode(otherlv_5, grammarAccess.getFolderEntryAccess().getCommaKeyword_2_3_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getFolderEntryAccess().getExclusionModelEntryParserRuleCall_2_3_1_0()); + } + lv_exclusion_6_0=ruleModelEntry + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getFolderEntryRule()); + } + add( + $current, + "exclusion", + lv_exclusion_6_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ModelEntry"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + otherlv_7='}' + { + newLeafNode(otherlv_7, grammarAccess.getFolderEntryAccess().getRightCurlyBracketKeyword_2_4()); + } + )? + ) +; + +// Entry rule entryRulePartialModelDeclaration +entryRulePartialModelDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPartialModelDeclarationRule()); } + iv_rulePartialModelDeclaration=rulePartialModelDeclaration + { $current=$iv_rulePartialModelDeclaration.current; } + EOF; + +// Rule PartialModelDeclaration +rulePartialModelDeclaration returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='partial-model' + { + newLeafNode(otherlv_0, grammarAccess.getPartialModelDeclarationAccess().getPartialModelKeyword_0()); + } + ( + ( + lv_name_1_0=RULE_ID + { + newLeafNode(lv_name_1_0, grammarAccess.getPartialModelDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getPartialModelDeclarationRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + } + ) + ) + ( + ( + { + newCompositeNode(grammarAccess.getPartialModelDeclarationAccess().getSpecificationPartialModelSpecificationParserRuleCall_2_0()); + } + lv_specification_2_0=rulePartialModelSpecification + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getPartialModelDeclarationRule()); + } + set( + $current, + "specification", + lv_specification_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PartialModelSpecification"); + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRulePartialModelReference +entryRulePartialModelReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPartialModelReferenceRule()); } + iv_rulePartialModelReference=rulePartialModelReference + { $current=$iv_rulePartialModelReference.current; } + EOF; + +// Rule PartialModelReference +rulePartialModelReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getPartialModelReferenceRule()); + } + } + otherlv_0=RULE_ID + { + newLeafNode(otherlv_0, grammarAccess.getPartialModelReferenceAccess().getReferredPartialModelDeclarationCrossReference_0()); + } + ) + ) +; + +// Entry rule entryRulePartialModel +entryRulePartialModel returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPartialModelRule()); } + iv_rulePartialModel=rulePartialModel + { $current=$iv_rulePartialModel.current; } + EOF; + +// Rule PartialModel +rulePartialModel returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getPartialModelAccess().getPartialModelSpecificationParserRuleCall_0()); + } + this_PartialModelSpecification_0=rulePartialModelSpecification + { + $current = $this_PartialModelSpecification_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getPartialModelAccess().getPartialModelReferenceParserRuleCall_1()); + } + this_PartialModelReference_1=rulePartialModelReference + { + $current = $this_PartialModelReference_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRulePatternSpecification +entryRulePatternSpecification returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPatternSpecificationRule()); } + iv_rulePatternSpecification=rulePatternSpecification + { $current=$iv_rulePatternSpecification.current; } + EOF; + +// Rule PatternSpecification +rulePatternSpecification returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='{' + { + newLeafNode(otherlv_0, grammarAccess.getPatternSpecificationAccess().getLeftCurlyBracketKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getPatternSpecificationAccess().getEntriesPatternEntryParserRuleCall_1_0()); + } + lv_entries_1_0=rulePatternEntry + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getPatternSpecificationRule()); + } + add( + $current, + "entries", + lv_entries_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternEntry"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_2=',' + { + newLeafNode(otherlv_2, grammarAccess.getPatternSpecificationAccess().getCommaKeyword_2_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getPatternSpecificationAccess().getEntriesPatternEntryParserRuleCall_2_1_0()); + } + lv_entries_3_0=rulePatternEntry + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getPatternSpecificationRule()); + } + add( + $current, + "entries", + lv_entries_3_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternEntry"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + otherlv_4='}' + { + newLeafNode(otherlv_4, grammarAccess.getPatternSpecificationAccess().getRightCurlyBracketKeyword_3()); + } + ) +; + +// Entry rule entryRulePatternEntry +entryRulePatternEntry returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPatternEntryRule()); } + iv_rulePatternEntry=rulePatternEntry + { $current=$iv_rulePatternEntry.current; } + EOF; + +// Rule PatternEntry +rulePatternEntry returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getPatternEntryAccess().getPatternElementParserRuleCall_0()); + } + this_PatternElement_0=rulePatternElement + { + $current = $this_PatternElement_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getPatternEntryAccess().getAllPatternEntryParserRuleCall_1()); + } + this_AllPatternEntry_1=ruleAllPatternEntry + { + $current = $this_AllPatternEntry_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleAllPatternEntry +entryRuleAllPatternEntry returns [EObject current=null]: + { newCompositeNode(grammarAccess.getAllPatternEntryRule()); } + iv_ruleAllPatternEntry=ruleAllPatternEntry + { $current=$iv_ruleAllPatternEntry.current; } + EOF; + +// Rule AllPatternEntry +ruleAllPatternEntry returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='package' + { + newLeafNode(otherlv_0, grammarAccess.getAllPatternEntryAccess().getPackageKeyword_0()); + } + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getAllPatternEntryRule()); + } + } + { + newCompositeNode(grammarAccess.getAllPatternEntryAccess().getPackagePatternModelCrossReference_1_0()); + } + ruleQualifiedName + { + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_2='excluding' + { + newLeafNode(otherlv_2, grammarAccess.getAllPatternEntryAccess().getExcludingKeyword_2_0()); + } + otherlv_3='{' + { + newLeafNode(otherlv_3, grammarAccess.getAllPatternEntryAccess().getLeftCurlyBracketKeyword_2_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getAllPatternEntryAccess().getExclusuionPatternElementParserRuleCall_2_2_0()); + } + lv_exclusuion_4_0=rulePatternElement + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAllPatternEntryRule()); + } + add( + $current, + "exclusuion", + lv_exclusuion_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternElement"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_5=',' + { + newLeafNode(otherlv_5, grammarAccess.getAllPatternEntryAccess().getCommaKeyword_2_3_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getAllPatternEntryAccess().getExclusuionPatternElementParserRuleCall_2_3_1_0()); + } + lv_exclusuion_6_0=rulePatternElement + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAllPatternEntryRule()); + } + add( + $current, + "exclusuion", + lv_exclusuion_6_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternElement"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + otherlv_7='}' + { + newLeafNode(otherlv_7, grammarAccess.getAllPatternEntryAccess().getRightCurlyBracketKeyword_2_4()); + } + )? + ) +; + +// Entry rule entryRulePatternElement +entryRulePatternElement returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPatternElementRule()); } + iv_rulePatternElement=rulePatternElement + { $current=$iv_rulePatternElement.current; } + EOF; + +// Rule PatternElement +rulePatternElement returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getPatternElementRule()); + } + } + { + newCompositeNode(grammarAccess.getPatternElementAccess().getPackagePatternModelCrossReference_0_0_0()); + } + ruleQualifiedName + { + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_1='::' + { + newLeafNode(otherlv_1, grammarAccess.getPatternElementAccess().getColonColonKeyword_0_1()); + } + )? + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getPatternElementRule()); + } + } + otherlv_2=RULE_ID + { + newLeafNode(otherlv_2, grammarAccess.getPatternElementAccess().getPatternPatternCrossReference_1_0()); + } + ) + ) + ) +; + +// Entry rule entryRuleGraphPatternDeclaration +entryRuleGraphPatternDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getGraphPatternDeclarationRule()); } + iv_ruleGraphPatternDeclaration=ruleGraphPatternDeclaration + { $current=$iv_ruleGraphPatternDeclaration.current; } + EOF; + +// Rule GraphPatternDeclaration +ruleGraphPatternDeclaration returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='patterns' + { + newLeafNode(otherlv_0, grammarAccess.getGraphPatternDeclarationAccess().getPatternsKeyword_0()); + } + ( + ( + lv_name_1_0=RULE_ID + { + newLeafNode(lv_name_1_0, grammarAccess.getGraphPatternDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getGraphPatternDeclarationRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + } + ) + ) + ( + ( + { + newCompositeNode(grammarAccess.getGraphPatternDeclarationAccess().getSpecificationPatternSpecificationParserRuleCall_2_0()); + } + lv_specification_2_0=rulePatternSpecification + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGraphPatternDeclarationRule()); + } + set( + $current, + "specification", + lv_specification_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternSpecification"); + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleGraphPatternReference +entryRuleGraphPatternReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getGraphPatternReferenceRule()); } + iv_ruleGraphPatternReference=ruleGraphPatternReference + { $current=$iv_ruleGraphPatternReference.current; } + EOF; + +// Rule GraphPatternReference +ruleGraphPatternReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getGraphPatternReferenceRule()); + } + } + otherlv_0=RULE_ID + { + newLeafNode(otherlv_0, grammarAccess.getGraphPatternReferenceAccess().getReferredGraphPatternDeclarationCrossReference_0()); + } + ) + ) +; + +// Entry rule entryRuleGraphPattern +entryRuleGraphPattern returns [EObject current=null]: + { newCompositeNode(grammarAccess.getGraphPatternRule()); } + iv_ruleGraphPattern=ruleGraphPattern + { $current=$iv_ruleGraphPattern.current; } + EOF; + +// Rule GraphPattern +ruleGraphPattern returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getGraphPatternAccess().getGraphPatternReferenceParserRuleCall_0()); + } + this_GraphPatternReference_0=ruleGraphPatternReference + { + $current = $this_GraphPatternReference_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getGraphPatternAccess().getPatternSpecificationParserRuleCall_1()); + } + this_PatternSpecification_1=rulePatternSpecification + { + $current = $this_PatternSpecification_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleConfigSpecification +entryRuleConfigSpecification returns [EObject current=null]: + { newCompositeNode(grammarAccess.getConfigSpecificationRule()); } + iv_ruleConfigSpecification=ruleConfigSpecification + { $current=$iv_ruleConfigSpecification.current; } + EOF; + +// Rule ConfigSpecification +ruleConfigSpecification returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getConfigSpecificationAccess().getConfigSpecificationAction_0(), + $current); + } + ) + otherlv_1='{' + { + newLeafNode(otherlv_1, grammarAccess.getConfigSpecificationAccess().getLeftCurlyBracketKeyword_1()); + } + ( + ( + ( + { + newCompositeNode(grammarAccess.getConfigSpecificationAccess().getEntriesConfigEntryParserRuleCall_2_0_0()); + } + lv_entries_2_0=ruleConfigEntry + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getConfigSpecificationRule()); + } + add( + $current, + "entries", + lv_entries_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ConfigEntry"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_3=',' + { + newLeafNode(otherlv_3, grammarAccess.getConfigSpecificationAccess().getCommaKeyword_2_1_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getConfigSpecificationAccess().getEntriesConfigEntryParserRuleCall_2_1_1_0()); + } + lv_entries_4_0=ruleConfigEntry + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getConfigSpecificationRule()); + } + add( + $current, + "entries", + lv_entries_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ConfigEntry"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + )? + otherlv_5='}' + { + newLeafNode(otherlv_5, grammarAccess.getConfigSpecificationAccess().getRightCurlyBracketKeyword_3()); + } + ) +; + +// Entry rule entryRuleConfigDeclaration +entryRuleConfigDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getConfigDeclarationRule()); } + iv_ruleConfigDeclaration=ruleConfigDeclaration + { $current=$iv_ruleConfigDeclaration.current; } + EOF; + +// Rule ConfigDeclaration +ruleConfigDeclaration returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='config' + { + newLeafNode(otherlv_0, grammarAccess.getConfigDeclarationAccess().getConfigKeyword_0()); + } + ( + ( + lv_name_1_0=RULE_ID + { + newLeafNode(lv_name_1_0, grammarAccess.getConfigDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getConfigDeclarationRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + } + ) + ) + ( + ( + { + newCompositeNode(grammarAccess.getConfigDeclarationAccess().getSpecificationConfigSpecificationParserRuleCall_2_0()); + } + lv_specification_2_0=ruleConfigSpecification + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getConfigDeclarationRule()); + } + set( + $current, + "specification", + lv_specification_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ConfigSpecification"); + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleConfigEntry +entryRuleConfigEntry returns [EObject current=null]: + { newCompositeNode(grammarAccess.getConfigEntryRule()); } + iv_ruleConfigEntry=ruleConfigEntry + { $current=$iv_ruleConfigEntry.current; } + EOF; + +// Rule ConfigEntry +ruleConfigEntry returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + lv_key_0_0=RULE_STRING + { + newLeafNode(lv_key_0_0, grammarAccess.getConfigEntryAccess().getKeySTRINGTerminalRuleCall_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getConfigEntryRule()); + } + setWithLastConsumed( + $current, + "key", + lv_key_0_0, + "org.eclipse.xtext.common.Terminals.STRING"); + } + ) + ) + otherlv_1='=' + { + newLeafNode(otherlv_1, grammarAccess.getConfigEntryAccess().getEqualsSignKeyword_1()); + } + ( + ( + lv_value_2_0=RULE_STRING + { + newLeafNode(lv_value_2_0, grammarAccess.getConfigEntryAccess().getValueSTRINGTerminalRuleCall_2_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getConfigEntryRule()); + } + setWithLastConsumed( + $current, + "value", + lv_value_2_0, + "org.eclipse.xtext.common.Terminals.STRING"); + } + ) + ) + ) +; + +// Entry rule entryRuleConfigReference +entryRuleConfigReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getConfigReferenceRule()); } + iv_ruleConfigReference=ruleConfigReference + { $current=$iv_ruleConfigReference.current; } + EOF; + +// Rule ConfigReference +ruleConfigReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getConfigReferenceRule()); + } + } + otherlv_0=RULE_ID + { + newLeafNode(otherlv_0, grammarAccess.getConfigReferenceAccess().getConfigConfigDeclarationCrossReference_0()); + } + ) + ) +; + +// Entry rule entryRuleConfig +entryRuleConfig returns [EObject current=null]: + { newCompositeNode(grammarAccess.getConfigRule()); } + iv_ruleConfig=ruleConfig + { $current=$iv_ruleConfig.current; } + EOF; + +// Rule Config +ruleConfig returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getConfigAccess().getConfigSpecificationParserRuleCall_0()); + } + this_ConfigSpecification_0=ruleConfigSpecification + { + $current = $this_ConfigSpecification_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getConfigAccess().getConfigReferenceParserRuleCall_1()); + } + this_ConfigReference_1=ruleConfigReference + { + $current = $this_ConfigReference_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleScopeSpecification +entryRuleScopeSpecification returns [EObject current=null]: + { newCompositeNode(grammarAccess.getScopeSpecificationRule()); } + iv_ruleScopeSpecification=ruleScopeSpecification + { $current=$iv_ruleScopeSpecification.current; } + EOF; + +// Rule ScopeSpecification +ruleScopeSpecification returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getScopeSpecificationAccess().getScopeSpecificationAction_0(), + $current); + } + ) + otherlv_1='{' + { + newLeafNode(otherlv_1, grammarAccess.getScopeSpecificationAccess().getLeftCurlyBracketKeyword_1()); + } + ( + ( + ( + { + newCompositeNode(grammarAccess.getScopeSpecificationAccess().getScopesTypeScopeParserRuleCall_2_0_0()); + } + lv_scopes_2_0=ruleTypeScope + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getScopeSpecificationRule()); + } + add( + $current, + "scopes", + lv_scopes_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.TypeScope"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_3=',' + { + newLeafNode(otherlv_3, grammarAccess.getScopeSpecificationAccess().getCommaKeyword_2_1_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getScopeSpecificationAccess().getScopesTypeScopeParserRuleCall_2_1_1_0()); + } + lv_scopes_4_0=ruleTypeScope + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getScopeSpecificationRule()); + } + add( + $current, + "scopes", + lv_scopes_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.TypeScope"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + )? + otherlv_5='}' + { + newLeafNode(otherlv_5, grammarAccess.getScopeSpecificationAccess().getRightCurlyBracketKeyword_3()); + } + ) +; + +// Entry rule entryRuleTypeScope +entryRuleTypeScope returns [EObject current=null]: + { newCompositeNode(grammarAccess.getTypeScopeRule()); } + iv_ruleTypeScope=ruleTypeScope + { $current=$iv_ruleTypeScope.current; } + EOF; + +// Rule TypeScope +ruleTypeScope returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + ( + lv_min_0_0=RULE_INT + { + newLeafNode(lv_min_0_0, grammarAccess.getTypeScopeAccess().getMinINTTerminalRuleCall_0_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed( + $current, + "min", + lv_min_0_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + ) + ) + ( + ( + ( + lv_greather_1_0='<' + { + newLeafNode(lv_greather_1_0, grammarAccess.getTypeScopeAccess().getGreatherLessThanSignKeyword_0_1_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed($current, "greather", true, "<"); + } + ) + ) + | + ( + ( + lv_greaterOrEqual_2_0='<=' + { + newLeafNode(lv_greaterOrEqual_2_0, grammarAccess.getTypeScopeAccess().getGreaterOrEqualLessThanSignEqualsSignKeyword_0_1_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed($current, "greaterOrEqual", true, "<="); + } + ) + ) + ) + )? + otherlv_3='#' + { + newLeafNode(otherlv_3, grammarAccess.getTypeScopeAccess().getNumberSignKeyword_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getTypeScopeAccess().getTypeTypeReferenceParserRuleCall_2_0()); + } + lv_type_4_0=ruleTypeReference + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getTypeScopeRule()); + } + set( + $current, + "type", + lv_type_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.TypeReference"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + ( + ( + lv_less_5_0='<' + { + newLeafNode(lv_less_5_0, grammarAccess.getTypeScopeAccess().getLessLessThanSignKeyword_3_0_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed($current, "less", true, "<"); + } + ) + ) + | + ( + ( + lv_lessOrEqual_6_0='<=' + { + newLeafNode(lv_lessOrEqual_6_0, grammarAccess.getTypeScopeAccess().getLessOrEqualLessThanSignEqualsSignKeyword_3_0_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed($current, "lessOrEqual", true, "<="); + } + ) + ) + ) + ( + ( + lv_max_7_0=RULE_INT + { + newLeafNode(lv_max_7_0, grammarAccess.getTypeScopeAccess().getMaxINTTerminalRuleCall_3_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed( + $current, + "max", + lv_max_7_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + ) + ) + )? + ) +; + +// Entry rule entryRuleTypeReference +entryRuleTypeReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getTypeReferenceRule()); } + iv_ruleTypeReference=ruleTypeReference + { $current=$iv_ruleTypeReference.current; } + EOF; + +// Rule TypeReference +ruleTypeReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getTypeReferenceAccess().getClassReferenceParserRuleCall_0()); + } + this_ClassReference_0=ruleClassReference + { + $current = $this_ClassReference_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getTypeReferenceAccess().getObjectReferenceParserRuleCall_1()); + } + this_ObjectReference_1=ruleObjectReference + { + $current = $this_ObjectReference_1.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getTypeReferenceAccess().getIntegerReferenceParserRuleCall_2()); + } + this_IntegerReference_2=ruleIntegerReference + { + $current = $this_IntegerReference_2.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getTypeReferenceAccess().getRealReferenceParserRuleCall_3()); + } + this_RealReference_3=ruleRealReference + { + $current = $this_RealReference_3.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getTypeReferenceAccess().getStringReferenceParserRuleCall_4()); + } + this_StringReference_4=ruleStringReference + { + $current = $this_StringReference_4.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleClassReference +entryRuleClassReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getClassReferenceRule()); } + iv_ruleClassReference=ruleClassReference + { $current=$iv_ruleClassReference.current; } + EOF; + +// Rule ClassReference +ruleClassReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='[' + { + newLeafNode(otherlv_0, grammarAccess.getClassReferenceAccess().getLeftSquareBracketKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getClassReferenceAccess().getElementMetamodelElementParserRuleCall_1_0()); + } + lv_element_1_0=ruleMetamodelElement + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getClassReferenceRule()); + } + set( + $current, + "element", + lv_element_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelElement"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_2=']' + { + newLeafNode(otherlv_2, grammarAccess.getClassReferenceAccess().getRightSquareBracketKeyword_2()); + } + ) +; + +// Entry rule entryRuleObjectReference +entryRuleObjectReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getObjectReferenceRule()); } + iv_ruleObjectReference=ruleObjectReference + { $current=$iv_ruleObjectReference.current; } + EOF; + +// Rule ObjectReference +ruleObjectReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getObjectReferenceAccess().getObjectReferenceAction_0(), + $current); + } + ) + otherlv_1='Object' + { + newLeafNode(otherlv_1, grammarAccess.getObjectReferenceAccess().getObjectKeyword_1()); + } + ) +; + +// Entry rule entryRuleIntegerReference +entryRuleIntegerReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getIntegerReferenceRule()); } + iv_ruleIntegerReference=ruleIntegerReference + { $current=$iv_ruleIntegerReference.current; } + EOF; + +// Rule IntegerReference +ruleIntegerReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getIntegerReferenceAccess().getIntegerScopeAction_0(), + $current); + } + ) + otherlv_1='int' + { + newLeafNode(otherlv_1, grammarAccess.getIntegerReferenceAccess().getIntKeyword_1()); + } + ) +; + +// Entry rule entryRuleRealReference +entryRuleRealReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getRealReferenceRule()); } + iv_ruleRealReference=ruleRealReference + { $current=$iv_ruleRealReference.current; } + EOF; + +// Rule RealReference +ruleRealReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getRealReferenceAccess().getRealScopeAction_0(), + $current); + } + ) + otherlv_1='real' + { + newLeafNode(otherlv_1, grammarAccess.getRealReferenceAccess().getRealKeyword_1()); + } + ) +; + +// Entry rule entryRuleStringReference +entryRuleStringReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getStringReferenceRule()); } + iv_ruleStringReference=ruleStringReference + { $current=$iv_ruleStringReference.current; } + EOF; + +// Rule StringReference +ruleStringReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getStringReferenceAccess().getStringScopeAction_0(), + $current); + } + ) + otherlv_1='string' + { + newLeafNode(otherlv_1, grammarAccess.getStringReferenceAccess().getStringKeyword_1()); + } + ) +; + +// Entry rule entryRuleScopeDeclaration +entryRuleScopeDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getScopeDeclarationRule()); } + iv_ruleScopeDeclaration=ruleScopeDeclaration + { $current=$iv_ruleScopeDeclaration.current; } + EOF; + +// Rule ScopeDeclaration +ruleScopeDeclaration returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='scope' + { + newLeafNode(otherlv_0, grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0()); + } + ( + ( + lv_name_1_0=RULE_ID + { + newLeafNode(lv_name_1_0, grammarAccess.getScopeDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getScopeDeclarationRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + } + ) + ) + ( + ( + { + newCompositeNode(grammarAccess.getScopeDeclarationAccess().getSpecificationScopeSpecificationParserRuleCall_2_0()); + } + lv_specification_2_0=ruleScopeSpecification + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getScopeDeclarationRule()); + } + set( + $current, + "specification", + lv_specification_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ScopeSpecification"); + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleScopeReference +entryRuleScopeReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getScopeReferenceRule()); } + iv_ruleScopeReference=ruleScopeReference + { $current=$iv_ruleScopeReference.current; } + EOF; + +// Rule ScopeReference +ruleScopeReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getScopeReferenceRule()); + } + } + otherlv_0=RULE_ID + { + newLeafNode(otherlv_0, grammarAccess.getScopeReferenceAccess().getReferredScopeDeclarationCrossReference_0()); + } + ) + ) +; + +// Entry rule entryRuleScope +entryRuleScope returns [EObject current=null]: + { newCompositeNode(grammarAccess.getScopeRule()); } + iv_ruleScope=ruleScope + { $current=$iv_ruleScope.current; } + EOF; + +// Rule Scope +ruleScope returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getScopeAccess().getScopeSpecificationParserRuleCall_0()); + } + this_ScopeSpecification_0=ruleScopeSpecification + { + $current = $this_ScopeSpecification_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getScopeAccess().getScopeReferenceParserRuleCall_1()); + } + this_ScopeReference_1=ruleScopeReference + { + $current = $this_ScopeReference_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleTask +entryRuleTask returns [EObject current=null]: + { newCompositeNode(grammarAccess.getTaskRule()); } + iv_ruleTask=ruleTask + { $current=$iv_ruleTask.current; } + EOF; + +// Rule Task +ruleTask returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + { + newCompositeNode(grammarAccess.getTaskAccess().getGenerationTaskParserRuleCall()); + } + this_GenerationTask_0=ruleGenerationTask + { + $current = $this_GenerationTask_0.current; + afterParserOrEnumRuleCall(); + } +; + +// Entry rule entryRuleGenerationTask +entryRuleGenerationTask returns [EObject current=null]: + { newCompositeNode(grammarAccess.getGenerationTaskRule()); } + iv_ruleGenerationTask=ruleGenerationTask + { $current=$iv_ruleGenerationTask.current; } + EOF; + +// Rule GenerationTask +ruleGenerationTask returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='generate' + { + newLeafNode(otherlv_0, grammarAccess.getGenerationTaskAccess().getGenerateKeyword_0()); + } + ( + { + $current = forceCreateModelElement( + grammarAccess.getGenerationTaskAccess().getGenerationTaskAction_1(), + $current); + } + ) + otherlv_2='{' + { + newLeafNode(otherlv_2, grammarAccess.getGenerationTaskAccess().getLeftCurlyBracketKeyword_2()); + } + ( + ( + { + getUnorderedGroupHelper().enter(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ( + ( + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 0)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 0); + } + ({true}?=>(otherlv_4='metamodel' + { + newLeafNode(otherlv_4, grammarAccess.getGenerationTaskAccess().getMetamodelKeyword_3_0_0()); + } + otherlv_5='=' + { + newLeafNode(otherlv_5, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_0_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getMetamodelMetamodelParserRuleCall_3_0_2_0()); + } + lv_metamodel_6_0=ruleMetamodel + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "metamodel", + lv_metamodel_6_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Metamodel"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 1)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 1); + } + ({true}?=>(otherlv_7='partial-model' + { + newLeafNode(otherlv_7, grammarAccess.getGenerationTaskAccess().getPartialModelKeyword_3_1_0()); + } + otherlv_8='=' + { + newLeafNode(otherlv_8, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_1_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getPartialModelPartialModelParserRuleCall_3_1_2_0()); + } + lv_partialModel_9_0=rulePartialModel + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "partialModel", + lv_partialModel_9_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PartialModel"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 2)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 2); + } + ({true}?=>(otherlv_10='patterns' + { + newLeafNode(otherlv_10, grammarAccess.getGenerationTaskAccess().getPatternsKeyword_3_2_0()); + } + otherlv_11='=' + { + newLeafNode(otherlv_11, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_2_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getPatternsGraphPatternParserRuleCall_3_2_2_0()); + } + lv_patterns_12_0=ruleGraphPattern + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "patterns", + lv_patterns_12_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.GraphPattern"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 3)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 3); + } + ({true}?=>(otherlv_13='scope' + { + newLeafNode(otherlv_13, grammarAccess.getGenerationTaskAccess().getScopeKeyword_3_3_0()); + } + otherlv_14='=' + { + newLeafNode(otherlv_14, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_3_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getScopeScopeParserRuleCall_3_3_2_0()); + } + lv_scope_15_0=ruleScope + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "scope", + lv_scope_15_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Scope"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 4)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 4); + } + ({true}?=>(otherlv_16='number' + { + newLeafNode(otherlv_16, grammarAccess.getGenerationTaskAccess().getNumberKeyword_3_4_0()); + } + otherlv_17='=' + { + newLeafNode(otherlv_17, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_4_1()); + } + ( + ( + lv_number_18_0=RULE_INT + { + newLeafNode(lv_number_18_0, grammarAccess.getGenerationTaskAccess().getNumberINTTerminalRuleCall_3_4_2_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getGenerationTaskRule()); + } + setWithLastConsumed( + $current, + "number", + lv_number_18_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 5)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 5); + } + ({true}?=>(otherlv_19='runs' + { + newLeafNode(otherlv_19, grammarAccess.getGenerationTaskAccess().getRunsKeyword_3_5_0()); + } + otherlv_20='=' + { + newLeafNode(otherlv_20, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_5_1()); + } + ( + ( + lv_runs_21_0=RULE_INT + { + newLeafNode(lv_runs_21_0, grammarAccess.getGenerationTaskAccess().getRunsINTTerminalRuleCall_3_5_2_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getGenerationTaskRule()); + } + setWithLastConsumed( + $current, + "runs", + lv_runs_21_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 6)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 6); + } + ({true}?=>(otherlv_22='solver' + { + newLeafNode(otherlv_22, grammarAccess.getGenerationTaskAccess().getSolverKeyword_3_6_0()); + } + otherlv_23='=' + { + newLeafNode(otherlv_23, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_6_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getSolverSolverEnumRuleCall_3_6_2_0()); + } + lv_solver_24_0=ruleSolver + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "solver", + lv_solver_24_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Solver"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 7)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 7); + } + ({true}?=>(otherlv_25='config' + { + newLeafNode(otherlv_25, grammarAccess.getGenerationTaskAccess().getConfigKeyword_3_7_0()); + } + otherlv_26='=' + { + newLeafNode(otherlv_26, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_7_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getConfigConfigParserRuleCall_3_7_2_0()); + } + lv_config_27_0=ruleConfig + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "config", + lv_config_27_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Config"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 8)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 8); + } + ({true}?=>(otherlv_28='output' + { + newLeafNode(otherlv_28, grammarAccess.getGenerationTaskAccess().getOutputKeyword_3_8_0()); + } + otherlv_29='=' + { + newLeafNode(otherlv_29, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_8_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getTagetFolderFileParserRuleCall_3_8_2_0()); + } + lv_tagetFolder_30_0=ruleFile + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "tagetFolder", + lv_tagetFolder_30_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 9)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 9); + } + ({true}?=>(otherlv_31='debug' + { + newLeafNode(otherlv_31, grammarAccess.getGenerationTaskAccess().getDebugKeyword_3_9_0()); + } + otherlv_32='=' + { + newLeafNode(otherlv_32, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_9_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getDebugFolderFileParserRuleCall_3_9_2_0()); + } + lv_debugFolder_33_0=ruleFile + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "debugFolder", + lv_debugFolder_33_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 10)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 10); + } + ({true}?=>(otherlv_34='log' + { + newLeafNode(otherlv_34, grammarAccess.getGenerationTaskAccess().getLogKeyword_3_10_0()); + } + otherlv_35='=' + { + newLeafNode(otherlv_35, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_10_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getTargetLogFileFileParserRuleCall_3_10_2_0()); + } + lv_targetLogFile_36_0=ruleFile + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "targetLogFile", + lv_targetLogFile_36_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 11)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 11); + } + ({true}?=>(otherlv_37='statistics' + { + newLeafNode(otherlv_37, grammarAccess.getGenerationTaskAccess().getStatisticsKeyword_3_11_0()); + } + otherlv_38='=' + { + newLeafNode(otherlv_38, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_11_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGenerationTaskAccess().getTargetStatisticsFileFileParserRuleCall_3_11_2_0()); + } + lv_targetStatisticsFile_39_0=ruleFile + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + $current, + "targetStatisticsFile", + lv_targetStatisticsFile_39_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + } + ) + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + ) + )* + ) + ) + { + getUnorderedGroupHelper().leave(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + } + ) + otherlv_40='}' + { + newLeafNode(otherlv_40, grammarAccess.getGenerationTaskAccess().getRightCurlyBracketKeyword_4()); + } + ) +; + +// Rule Solver +ruleSolver returns [Enumerator current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + enumLiteral_0='SMTSolver' + { + $current = grammarAccess.getSolverAccess().getSMTSolverEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getSolverAccess().getSMTSolverEnumLiteralDeclaration_0()); + } + ) + | + ( + enumLiteral_1='AlloySolver' + { + $current = grammarAccess.getSolverAccess().getAlloySolverEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getSolverAccess().getAlloySolverEnumLiteralDeclaration_1()); + } + ) + | + ( + enumLiteral_2='ViatraSolver' + { + $current = grammarAccess.getSolverAccess().getViatraSolverEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getSolverAccess().getViatraSolverEnumLiteralDeclaration_2()); + } + ) + ) +; + RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfiguration.tokens b/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfiguration.tokens index 676ff381..0b45afaa 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfiguration.tokens +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfiguration.tokens @@ -1,20 +1,47 @@ -','=15 -'.'=20 -'::'=19 -'epackage'=12 -'excluding'=18 -'import'=11 -'metamodel'=21 -'package'=17 -'viatra'=13 -'{'=14 -'}'=16 +'#'=30 +','=18 +'.'=11 +'::'=22 +'<'=28 +'<='=29 +'='=16 +'AlloySolver'=47 +'Object'=33 +'SMTSolver'=46 +'ViatraSolver'=48 +'['=31 +']'=32 +'config'=27 +'debug'=43 +'epackage'=13 +'excluding'=21 +'file'=15 +'folder'=24 +'generate'=38 +'import'=12 +'int'=34 +'log'=44 +'metamodel'=23 +'number'=39 +'output'=42 +'package'=20 +'partial-model'=25 +'patterns'=26 +'real'=35 +'runs'=40 +'scope'=37 +'solver'=41 +'statistics'=45 +'string'=36 +'viatra'=14 +'{'=17 +'}'=19 RULE_ANY_OTHER=10 -RULE_ID=5 +RULE_ID=4 RULE_INT=6 RULE_ML_COMMENT=7 RULE_SL_COMMENT=8 -RULE_STRING=4 +RULE_STRING=5 RULE_WS=9 T__11=11 T__12=12 @@ -27,3 +54,30 @@ T__18=18 T__19=19 T__20=20 T__21=21 +T__22=22 +T__23=23 +T__24=24 +T__25=25 +T__26=26 +T__27=27 +T__28=28 +T__29=29 +T__30=30 +T__31=31 +T__32=32 +T__33=33 +T__34=34 +T__35=35 +T__36=36 +T__37=37 +T__38=38 +T__39=39 +T__40=40 +T__41=41 +T__42=42 +T__43=43 +T__44=44 +T__45=45 +T__46=46 +T__47=47 +T__48=48 diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfigurationLexer.java b/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfigurationLexer.java index 730041a1..3474822c 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfigurationLexer.java +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfigurationLexer.java @@ -12,8 +12,6 @@ import java.util.ArrayList; @SuppressWarnings("all") public class InternalApplicationConfigurationLexer extends Lexer { - public static final int RULE_STRING=4; - public static final int RULE_SL_COMMENT=8; public static final int T__19=19; public static final int T__15=15; public static final int T__16=16; @@ -23,14 +21,43 @@ public class InternalApplicationConfigurationLexer extends Lexer { public static final int T__12=12; public static final int T__13=13; public static final int T__14=14; - public static final int EOF=-1; - public static final int RULE_ID=5; - public static final int RULE_WS=9; - public static final int RULE_ANY_OTHER=10; + public static final int RULE_ID=4; + public static final int T__26=26; + public static final int T__27=27; + public static final int T__28=28; public static final int RULE_INT=6; + public static final int T__29=29; + public static final int T__22=22; public static final int RULE_ML_COMMENT=7; + public static final int T__23=23; + public static final int T__24=24; + public static final int T__25=25; public static final int T__20=20; public static final int T__21=21; + public static final int RULE_STRING=5; + public static final int RULE_SL_COMMENT=8; + 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 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 EOF=-1; + 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_WS=9; + public static final int RULE_ANY_OTHER=10; + public static final int T__48=48; + public static final int T__44=44; + public static final int T__45=45; + public static final int T__46=46; + public static final int T__47=47; + public static final int T__40=40; + public static final int T__41=41; + public static final int T__42=42; + public static final int T__43=43; // delegates // delegators @@ -43,17 +70,575 @@ public class InternalApplicationConfigurationLexer extends Lexer { super(input,state); } - public String getGrammarFileName() { return "InternalApplicationConfiguration.g"; } + public String getGrammarFileName() { return "InternalApplicationConfiguration.g"; } + + // $ANTLR start "T__11" + public final void mT__11() throws RecognitionException { + try { + int _type = T__11; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:11:7: ( '.' ) + // InternalApplicationConfiguration.g:11:9: '.' + { + match('.'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__11" + + // $ANTLR start "T__12" + public final void mT__12() throws RecognitionException { + try { + int _type = T__12; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:12:7: ( 'import' ) + // InternalApplicationConfiguration.g:12:9: 'import' + { + match("import"); + + + } + + 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; + // InternalApplicationConfiguration.g:13:7: ( 'epackage' ) + // InternalApplicationConfiguration.g:13:9: 'epackage' + { + match("epackage"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__13" + + // $ANTLR start "T__14" + public final void mT__14() throws RecognitionException { + try { + int _type = T__14; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:14:7: ( 'viatra' ) + // InternalApplicationConfiguration.g:14:9: 'viatra' + { + match("viatra"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__14" + + // $ANTLR start "T__15" + public final void mT__15() throws RecognitionException { + try { + int _type = T__15; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:15:7: ( 'file' ) + // InternalApplicationConfiguration.g:15:9: 'file' + { + match("file"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__15" + + // $ANTLR start "T__16" + public final void mT__16() throws RecognitionException { + try { + int _type = T__16; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:16:7: ( '=' ) + // InternalApplicationConfiguration.g:16:9: '=' + { + match('='); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__16" + + // $ANTLR start "T__17" + public final void mT__17() throws RecognitionException { + try { + int _type = T__17; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:17:7: ( '{' ) + // InternalApplicationConfiguration.g:17:9: '{' + { + match('{'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__17" + + // $ANTLR start "T__18" + public final void mT__18() throws RecognitionException { + try { + int _type = T__18; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:18:7: ( ',' ) + // InternalApplicationConfiguration.g:18:9: ',' + { + match(','); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__18" + + // $ANTLR start "T__19" + public final void mT__19() throws RecognitionException { + try { + int _type = T__19; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:19:7: ( '}' ) + // InternalApplicationConfiguration.g:19:9: '}' + { + match('}'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__19" + + // $ANTLR start "T__20" + public final void mT__20() throws RecognitionException { + try { + int _type = T__20; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:20:7: ( 'package' ) + // InternalApplicationConfiguration.g:20:9: 'package' + { + match("package"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__20" + + // $ANTLR start "T__21" + public final void mT__21() throws RecognitionException { + try { + int _type = T__21; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:21:7: ( 'excluding' ) + // InternalApplicationConfiguration.g:21:9: 'excluding' + { + match("excluding"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__21" + + // $ANTLR start "T__22" + public final void mT__22() throws RecognitionException { + try { + int _type = T__22; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:22:7: ( '::' ) + // InternalApplicationConfiguration.g:22:9: '::' + { + match("::"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__22" + + // $ANTLR start "T__23" + public final void mT__23() throws RecognitionException { + try { + int _type = T__23; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:23:7: ( 'metamodel' ) + // InternalApplicationConfiguration.g:23:9: 'metamodel' + { + match("metamodel"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__23" + + // $ANTLR start "T__24" + public final void mT__24() throws RecognitionException { + try { + int _type = T__24; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:24:7: ( 'folder' ) + // InternalApplicationConfiguration.g:24:9: 'folder' + { + match("folder"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__24" + + // $ANTLR start "T__25" + public final void mT__25() throws RecognitionException { + try { + int _type = T__25; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:25:7: ( 'partial-model' ) + // InternalApplicationConfiguration.g:25:9: 'partial-model' + { + match("partial-model"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__25" + + // $ANTLR start "T__26" + public final void mT__26() throws RecognitionException { + try { + int _type = T__26; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:26:7: ( 'patterns' ) + // InternalApplicationConfiguration.g:26:9: 'patterns' + { + match("patterns"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__26" + + // $ANTLR start "T__27" + public final void mT__27() throws RecognitionException { + try { + int _type = T__27; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:27:7: ( 'config' ) + // InternalApplicationConfiguration.g:27:9: 'config' + { + match("config"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__27" + + // $ANTLR start "T__28" + public final void mT__28() throws RecognitionException { + try { + int _type = T__28; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:28:7: ( '<' ) + // InternalApplicationConfiguration.g:28:9: '<' + { + match('<'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__28" + + // $ANTLR start "T__29" + public final void mT__29() throws RecognitionException { + try { + int _type = T__29; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:29:7: ( '<=' ) + // InternalApplicationConfiguration.g:29:9: '<=' + { + match("<="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__29" + + // $ANTLR start "T__30" + public final void mT__30() throws RecognitionException { + try { + int _type = T__30; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:30:7: ( '#' ) + // InternalApplicationConfiguration.g:30:9: '#' + { + match('#'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__30" + + // $ANTLR start "T__31" + public final void mT__31() throws RecognitionException { + try { + int _type = T__31; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:31:7: ( '[' ) + // InternalApplicationConfiguration.g:31:9: '[' + { + match('['); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__31" + + // $ANTLR start "T__32" + public final void mT__32() throws RecognitionException { + try { + int _type = T__32; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:32:7: ( ']' ) + // InternalApplicationConfiguration.g:32:9: ']' + { + match(']'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__32" + + // $ANTLR start "T__33" + public final void mT__33() throws RecognitionException { + try { + int _type = T__33; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:33:7: ( 'Object' ) + // InternalApplicationConfiguration.g:33:9: 'Object' + { + match("Object"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__33" + + // $ANTLR start "T__34" + public final void mT__34() throws RecognitionException { + try { + int _type = T__34; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:34:7: ( 'int' ) + // InternalApplicationConfiguration.g:34:9: 'int' + { + match("int"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__34" + + // $ANTLR start "T__35" + public final void mT__35() throws RecognitionException { + try { + int _type = T__35; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalApplicationConfiguration.g:35:7: ( 'real' ) + // InternalApplicationConfiguration.g:35:9: 'real' + { + match("real"); + + + } + + 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; + // InternalApplicationConfiguration.g:36:7: ( 'string' ) + // InternalApplicationConfiguration.g:36:9: 'string' + { + match("string"); + + + } + + 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; + // InternalApplicationConfiguration.g:37:7: ( 'scope' ) + // InternalApplicationConfiguration.g:37:9: 'scope' + { + match("scope"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__37" - // $ANTLR start "T__11" - public final void mT__11() throws RecognitionException { + // $ANTLR start "T__38" + public final void mT__38() throws RecognitionException { try { - int _type = T__11; + int _type = T__38; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:11:7: ( 'import' ) - // InternalApplicationConfiguration.g:11:9: 'import' + // InternalApplicationConfiguration.g:38:7: ( 'generate' ) + // InternalApplicationConfiguration.g:38:9: 'generate' { - match("import"); + match("generate"); } @@ -64,17 +649,17 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__11" + // $ANTLR end "T__38" - // $ANTLR start "T__12" - public final void mT__12() throws RecognitionException { + // $ANTLR start "T__39" + public final void mT__39() throws RecognitionException { try { - int _type = T__12; + int _type = T__39; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:12:7: ( 'epackage' ) - // InternalApplicationConfiguration.g:12:9: 'epackage' + // InternalApplicationConfiguration.g:39:7: ( 'number' ) + // InternalApplicationConfiguration.g:39:9: 'number' { - match("epackage"); + match("number"); } @@ -85,17 +670,17 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__12" + // $ANTLR end "T__39" - // $ANTLR start "T__13" - public final void mT__13() throws RecognitionException { + // $ANTLR start "T__40" + public final void mT__40() throws RecognitionException { try { - int _type = T__13; + int _type = T__40; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:13:7: ( 'viatra' ) - // InternalApplicationConfiguration.g:13:9: 'viatra' + // InternalApplicationConfiguration.g:40:7: ( 'runs' ) + // InternalApplicationConfiguration.g:40:9: 'runs' { - match("viatra"); + match("runs"); } @@ -106,17 +691,18 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__13" + // $ANTLR end "T__40" - // $ANTLR start "T__14" - public final void mT__14() throws RecognitionException { + // $ANTLR start "T__41" + public final void mT__41() throws RecognitionException { try { - int _type = T__14; + int _type = T__41; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:14:7: ( '{' ) - // InternalApplicationConfiguration.g:14:9: '{' + // InternalApplicationConfiguration.g:41:7: ( 'solver' ) + // InternalApplicationConfiguration.g:41:9: 'solver' { - match('{'); + match("solver"); + } @@ -126,17 +712,18 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__14" + // $ANTLR end "T__41" - // $ANTLR start "T__15" - public final void mT__15() throws RecognitionException { + // $ANTLR start "T__42" + public final void mT__42() throws RecognitionException { try { - int _type = T__15; + int _type = T__42; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:15:7: ( ',' ) - // InternalApplicationConfiguration.g:15:9: ',' + // InternalApplicationConfiguration.g:42:7: ( 'output' ) + // InternalApplicationConfiguration.g:42:9: 'output' { - match(','); + match("output"); + } @@ -146,17 +733,18 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__15" + // $ANTLR end "T__42" - // $ANTLR start "T__16" - public final void mT__16() throws RecognitionException { + // $ANTLR start "T__43" + public final void mT__43() throws RecognitionException { try { - int _type = T__16; + int _type = T__43; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:16:7: ( '}' ) - // InternalApplicationConfiguration.g:16:9: '}' + // InternalApplicationConfiguration.g:43:7: ( 'debug' ) + // InternalApplicationConfiguration.g:43:9: 'debug' { - match('}'); + match("debug"); + } @@ -166,17 +754,17 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__16" + // $ANTLR end "T__43" - // $ANTLR start "T__17" - public final void mT__17() throws RecognitionException { + // $ANTLR start "T__44" + public final void mT__44() throws RecognitionException { try { - int _type = T__17; + int _type = T__44; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:17:7: ( 'package' ) - // InternalApplicationConfiguration.g:17:9: 'package' + // InternalApplicationConfiguration.g:44:7: ( 'log' ) + // InternalApplicationConfiguration.g:44:9: 'log' { - match("package"); + match("log"); } @@ -187,17 +775,17 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__17" + // $ANTLR end "T__44" - // $ANTLR start "T__18" - public final void mT__18() throws RecognitionException { + // $ANTLR start "T__45" + public final void mT__45() throws RecognitionException { try { - int _type = T__18; + int _type = T__45; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:18:7: ( 'excluding' ) - // InternalApplicationConfiguration.g:18:9: 'excluding' + // InternalApplicationConfiguration.g:45:7: ( 'statistics' ) + // InternalApplicationConfiguration.g:45:9: 'statistics' { - match("excluding"); + match("statistics"); } @@ -208,17 +796,17 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__18" + // $ANTLR end "T__45" - // $ANTLR start "T__19" - public final void mT__19() throws RecognitionException { + // $ANTLR start "T__46" + public final void mT__46() throws RecognitionException { try { - int _type = T__19; + int _type = T__46; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:19:7: ( '::' ) - // InternalApplicationConfiguration.g:19:9: '::' + // InternalApplicationConfiguration.g:46:7: ( 'SMTSolver' ) + // InternalApplicationConfiguration.g:46:9: 'SMTSolver' { - match("::"); + match("SMTSolver"); } @@ -229,17 +817,18 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__19" + // $ANTLR end "T__46" - // $ANTLR start "T__20" - public final void mT__20() throws RecognitionException { + // $ANTLR start "T__47" + public final void mT__47() throws RecognitionException { try { - int _type = T__20; + int _type = T__47; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:20:7: ( '.' ) - // InternalApplicationConfiguration.g:20:9: '.' + // InternalApplicationConfiguration.g:47:7: ( 'AlloySolver' ) + // InternalApplicationConfiguration.g:47:9: 'AlloySolver' { - match('.'); + match("AlloySolver"); + } @@ -249,17 +838,17 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__20" + // $ANTLR end "T__47" - // $ANTLR start "T__21" - public final void mT__21() throws RecognitionException { + // $ANTLR start "T__48" + public final void mT__48() throws RecognitionException { try { - int _type = T__21; + int _type = T__48; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:21:7: ( 'metamodel' ) - // InternalApplicationConfiguration.g:21:9: 'metamodel' + // InternalApplicationConfiguration.g:48:7: ( 'ViatraSolver' ) + // InternalApplicationConfiguration.g:48:9: 'ViatraSolver' { - match("metamodel"); + match("ViatraSolver"); } @@ -270,17 +859,17 @@ public class InternalApplicationConfigurationLexer extends Lexer { finally { } } - // $ANTLR end "T__21" + // $ANTLR end "T__48" // $ANTLR start "RULE_ID" public final void mRULE_ID() throws RecognitionException { try { int _type = RULE_ID; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:647:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) - // InternalApplicationConfiguration.g:647:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + // InternalApplicationConfiguration.g:3119:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) + // InternalApplicationConfiguration.g:3119:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* { - // InternalApplicationConfiguration.g:647:11: ( '^' )? + // InternalApplicationConfiguration.g:3119:11: ( '^' )? int alt1=2; int LA1_0 = input.LA(1); @@ -289,7 +878,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { } switch (alt1) { case 1 : - // InternalApplicationConfiguration.g:647:11: '^' + // InternalApplicationConfiguration.g:3119:11: '^' { match('^'); @@ -307,7 +896,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { recover(mse); throw mse;} - // InternalApplicationConfiguration.g:647:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + // InternalApplicationConfiguration.g:3119:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* loop2: do { int alt2=2; @@ -356,10 +945,10 @@ public class InternalApplicationConfigurationLexer extends Lexer { try { int _type = RULE_INT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:649:10: ( ( '0' .. '9' )+ ) - // InternalApplicationConfiguration.g:649:12: ( '0' .. '9' )+ + // InternalApplicationConfiguration.g:3121:10: ( ( '0' .. '9' )+ ) + // InternalApplicationConfiguration.g:3121:12: ( '0' .. '9' )+ { - // InternalApplicationConfiguration.g:649:12: ( '0' .. '9' )+ + // InternalApplicationConfiguration.g:3121:12: ( '0' .. '9' )+ int cnt3=0; loop3: do { @@ -373,7 +962,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { switch (alt3) { case 1 : - // InternalApplicationConfiguration.g:649:13: '0' .. '9' + // InternalApplicationConfiguration.g:3121:13: '0' .. '9' { matchRange('0','9'); @@ -405,10 +994,10 @@ public class InternalApplicationConfigurationLexer extends Lexer { try { int _type = RULE_STRING; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:651:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) ) - // InternalApplicationConfiguration.g:651:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) + // InternalApplicationConfiguration.g:3123:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) ) + // InternalApplicationConfiguration.g:3123:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) { - // InternalApplicationConfiguration.g:651:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) + // InternalApplicationConfiguration.g:3123:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) int alt6=2; int LA6_0 = input.LA(1); @@ -426,10 +1015,10 @@ public class InternalApplicationConfigurationLexer extends Lexer { } switch (alt6) { case 1 : - // InternalApplicationConfiguration.g:651:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' + // InternalApplicationConfiguration.g:3123:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' { match('\"'); - // InternalApplicationConfiguration.g:651:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* + // InternalApplicationConfiguration.g:3123:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* loop4: do { int alt4=3; @@ -445,7 +1034,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { switch (alt4) { case 1 : - // InternalApplicationConfiguration.g:651:21: '\\\\' . + // InternalApplicationConfiguration.g:3123:21: '\\\\' . { match('\\'); matchAny(); @@ -453,7 +1042,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { } break; case 2 : - // InternalApplicationConfiguration.g:651:28: ~ ( ( '\\\\' | '\"' ) ) + // InternalApplicationConfiguration.g:3123:28: ~ ( ( '\\\\' | '\"' ) ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -478,10 +1067,10 @@ public class InternalApplicationConfigurationLexer extends Lexer { } break; case 2 : - // InternalApplicationConfiguration.g:651:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' + // InternalApplicationConfiguration.g:3123:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' { match('\''); - // InternalApplicationConfiguration.g:651:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* + // InternalApplicationConfiguration.g:3123:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* loop5: do { int alt5=3; @@ -497,7 +1086,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { switch (alt5) { case 1 : - // InternalApplicationConfiguration.g:651:54: '\\\\' . + // InternalApplicationConfiguration.g:3123:54: '\\\\' . { match('\\'); matchAny(); @@ -505,7 +1094,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { } break; case 2 : - // InternalApplicationConfiguration.g:651:61: ~ ( ( '\\\\' | '\\'' ) ) + // InternalApplicationConfiguration.g:3123:61: ~ ( ( '\\\\' | '\\'' ) ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -548,12 +1137,12 @@ public class InternalApplicationConfigurationLexer extends Lexer { try { int _type = RULE_ML_COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:653:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // InternalApplicationConfiguration.g:653:19: '/*' ( options {greedy=false; } : . )* '*/' + // InternalApplicationConfiguration.g:3125:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // InternalApplicationConfiguration.g:3125:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // InternalApplicationConfiguration.g:653:24: ( options {greedy=false; } : . )* + // InternalApplicationConfiguration.g:3125:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -578,7 +1167,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { switch (alt7) { case 1 : - // InternalApplicationConfiguration.g:653:52: . + // InternalApplicationConfiguration.g:3125:52: . { matchAny(); @@ -608,12 +1197,12 @@ public class InternalApplicationConfigurationLexer extends Lexer { try { int _type = RULE_SL_COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:655:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) - // InternalApplicationConfiguration.g:655:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? + // InternalApplicationConfiguration.g:3127:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) + // InternalApplicationConfiguration.g:3127:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // InternalApplicationConfiguration.g:655:24: (~ ( ( '\\n' | '\\r' ) ) )* + // InternalApplicationConfiguration.g:3127:24: (~ ( ( '\\n' | '\\r' ) ) )* loop8: do { int alt8=2; @@ -626,7 +1215,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { switch (alt8) { case 1 : - // InternalApplicationConfiguration.g:655:24: ~ ( ( '\\n' | '\\r' ) ) + // InternalApplicationConfiguration.g:3127: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(); @@ -646,7 +1235,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { } } while (true); - // InternalApplicationConfiguration.g:655:40: ( ( '\\r' )? '\\n' )? + // InternalApplicationConfiguration.g:3127:40: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -655,9 +1244,9 @@ public class InternalApplicationConfigurationLexer extends Lexer { } switch (alt10) { case 1 : - // InternalApplicationConfiguration.g:655:41: ( '\\r' )? '\\n' + // InternalApplicationConfiguration.g:3127:41: ( '\\r' )? '\\n' { - // InternalApplicationConfiguration.g:655:41: ( '\\r' )? + // InternalApplicationConfiguration.g:3127:41: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -666,7 +1255,7 @@ public class InternalApplicationConfigurationLexer extends Lexer { } switch (alt9) { case 1 : - // InternalApplicationConfiguration.g:655:41: '\\r' + // InternalApplicationConfiguration.g:3127:41: '\\r' { match('\r'); @@ -698,10 +1287,10 @@ public class InternalApplicationConfigurationLexer extends Lexer { try { int _type = RULE_WS; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:657:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // InternalApplicationConfiguration.g:657:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // InternalApplicationConfiguration.g:3129:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // InternalApplicationConfiguration.g:3129:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // InternalApplicationConfiguration.g:657:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // InternalApplicationConfiguration.g:3129:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -755,8 +1344,8 @@ public class InternalApplicationConfigurationLexer extends Lexer { try { int _type = RULE_ANY_OTHER; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalApplicationConfiguration.g:659:16: ( . ) - // InternalApplicationConfiguration.g:659:18: . + // InternalApplicationConfiguration.g:3131:16: ( . ) + // InternalApplicationConfiguration.g:3131:18: . { matchAny(); @@ -771,8 +1360,8 @@ public class InternalApplicationConfigurationLexer extends Lexer { // $ANTLR end "RULE_ANY_OTHER" public void mTokens() throws RecognitionException { - // InternalApplicationConfiguration.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) - int alt12=18; + // InternalApplicationConfiguration.g:1:8: ( T__11 | 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 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) + int alt12=45; alt12 = dfa12.predict(input); switch (alt12) { case 1 : @@ -853,49 +1442,238 @@ public class InternalApplicationConfigurationLexer extends Lexer { } break; case 12 : - // InternalApplicationConfiguration.g:1:76: RULE_ID + // InternalApplicationConfiguration.g:1:76: T__22 { - mRULE_ID(); + mT__22(); } break; case 13 : - // InternalApplicationConfiguration.g:1:84: RULE_INT + // InternalApplicationConfiguration.g:1:82: T__23 { - mRULE_INT(); + mT__23(); } break; case 14 : - // InternalApplicationConfiguration.g:1:93: RULE_STRING + // InternalApplicationConfiguration.g:1:88: T__24 { - mRULE_STRING(); + mT__24(); } break; case 15 : - // InternalApplicationConfiguration.g:1:105: RULE_ML_COMMENT + // InternalApplicationConfiguration.g:1:94: T__25 { - mRULE_ML_COMMENT(); + mT__25(); } break; case 16 : - // InternalApplicationConfiguration.g:1:121: RULE_SL_COMMENT + // InternalApplicationConfiguration.g:1:100: T__26 { - mRULE_SL_COMMENT(); + mT__26(); } break; case 17 : - // InternalApplicationConfiguration.g:1:137: RULE_WS + // InternalApplicationConfiguration.g:1:106: T__27 { - mRULE_WS(); + mT__27(); } break; case 18 : - // InternalApplicationConfiguration.g:1:145: RULE_ANY_OTHER + // InternalApplicationConfiguration.g:1:112: T__28 + { + mT__28(); + + } + break; + case 19 : + // InternalApplicationConfiguration.g:1:118: T__29 + { + mT__29(); + + } + break; + case 20 : + // InternalApplicationConfiguration.g:1:124: T__30 + { + mT__30(); + + } + break; + case 21 : + // InternalApplicationConfiguration.g:1:130: T__31 + { + mT__31(); + + } + break; + case 22 : + // InternalApplicationConfiguration.g:1:136: T__32 + { + mT__32(); + + } + break; + case 23 : + // InternalApplicationConfiguration.g:1:142: T__33 + { + mT__33(); + + } + break; + case 24 : + // InternalApplicationConfiguration.g:1:148: T__34 + { + mT__34(); + + } + break; + case 25 : + // InternalApplicationConfiguration.g:1:154: T__35 + { + mT__35(); + + } + break; + case 26 : + // InternalApplicationConfiguration.g:1:160: T__36 + { + mT__36(); + + } + break; + case 27 : + // InternalApplicationConfiguration.g:1:166: T__37 + { + mT__37(); + + } + break; + case 28 : + // InternalApplicationConfiguration.g:1:172: T__38 + { + mT__38(); + + } + break; + case 29 : + // InternalApplicationConfiguration.g:1:178: T__39 + { + mT__39(); + + } + break; + case 30 : + // InternalApplicationConfiguration.g:1:184: T__40 + { + mT__40(); + + } + break; + case 31 : + // InternalApplicationConfiguration.g:1:190: T__41 + { + mT__41(); + + } + break; + case 32 : + // InternalApplicationConfiguration.g:1:196: T__42 + { + mT__42(); + + } + break; + case 33 : + // InternalApplicationConfiguration.g:1:202: T__43 + { + mT__43(); + + } + break; + case 34 : + // InternalApplicationConfiguration.g:1:208: T__44 + { + mT__44(); + + } + break; + case 35 : + // InternalApplicationConfiguration.g:1:214: T__45 + { + mT__45(); + + } + break; + case 36 : + // InternalApplicationConfiguration.g:1:220: T__46 + { + mT__46(); + + } + break; + case 37 : + // InternalApplicationConfiguration.g:1:226: T__47 + { + mT__47(); + + } + break; + case 38 : + // InternalApplicationConfiguration.g:1:232: T__48 + { + mT__48(); + + } + break; + case 39 : + // InternalApplicationConfiguration.g:1:238: RULE_ID + { + mRULE_ID(); + + } + break; + case 40 : + // InternalApplicationConfiguration.g:1:246: RULE_INT + { + mRULE_INT(); + + } + break; + case 41 : + // InternalApplicationConfiguration.g:1:255: RULE_STRING + { + mRULE_STRING(); + + } + break; + case 42 : + // InternalApplicationConfiguration.g:1:267: RULE_ML_COMMENT + { + mRULE_ML_COMMENT(); + + } + break; + case 43 : + // InternalApplicationConfiguration.g:1:283: RULE_SL_COMMENT + { + mRULE_SL_COMMENT(); + + } + break; + case 44 : + // InternalApplicationConfiguration.g:1:299: RULE_WS + { + mRULE_WS(); + + } + break; + case 45 : + // InternalApplicationConfiguration.g:1:307: RULE_ANY_OTHER { mRULE_ANY_OTHER(); @@ -909,92 +1687,248 @@ public class InternalApplicationConfigurationLexer extends Lexer { protected DFA12 dfa12 = new DFA12(this); static final String DFA12_eotS = - "\1\uffff\3\24\3\uffff\1\24\1\22\1\uffff\1\24\1\22\2\uffff\3\22\2\uffff\1\24\1\uffff\3\24\3\uffff\1\24\2\uffff\1\24\5\uffff\22\24\1\74\2\24\1\77\2\24\1\uffff\2\24\1\uffff\1\104\1\24\1\106\1\24\1\uffff\1\24\1\uffff\1\111\1\112\2\uffff"; + "\2\uffff\4\50\4\uffff\1\50\1\44\2\50\1\67\3\uffff\13\50\1\44\2\uffff\3\44\3\uffff\2\50\1\uffff\5\50\4\uffff\1\50\1\uffff\2\50\5\uffff\16\50\5\uffff\1\50\1\152\25\50\1\u0080\4\50\1\uffff\3\50\1\u0088\7\50\1\u0090\1\u0091\10\50\1\uffff\7\50\1\uffff\7\50\2\uffff\2\50\1\u00aa\4\50\1\u00af\3\50\1\u00b3\2\50\1\u00b6\1\u00b7\4\50\1\u00bc\1\u00bd\1\u00be\1\50\1\uffff\1\u00c0\1\50\1\u00c2\1\u00c3\1\uffff\3\50\1\uffff\2\50\2\uffff\1\u00c9\3\50\3\uffff\1\50\1\uffff\1\50\2\uffff\3\50\1\u00d2\1\50\2\uffff\1\u00d4\2\50\1\u00d7\3\50\1\uffff\1\u00db\1\uffff\1\u00dc\1\50\1\uffff\1\u00de\2\50\2\uffff\1\u00e1\1\uffff\2\50\1\uffff\1\u00e4\1\50\1\uffff\1\u00e6\1\uffff"; static final String DFA12_eofS = - "\113\uffff"; + "\u00e7\uffff"; static final String DFA12_minS = - "\1\0\1\155\1\160\1\151\3\uffff\1\141\1\72\1\uffff\1\145\1\101\2\uffff\2\0\1\52\2\uffff\1\160\1\uffff\1\141\1\143\1\141\3\uffff\1\143\2\uffff\1\164\5\uffff\1\157\1\143\1\154\1\164\1\153\1\141\1\162\1\153\1\165\1\162\1\141\1\155\1\164\1\141\1\144\1\141\1\147\1\157\1\60\1\147\1\151\1\60\1\145\1\144\1\uffff\1\145\1\156\1\uffff\1\60\1\145\1\60\1\147\1\uffff\1\154\1\uffff\2\60\2\uffff"; + "\1\0\1\uffff\1\155\1\160\2\151\4\uffff\1\141\1\72\1\145\1\157\1\75\3\uffff\1\142\1\145\1\143\1\145\2\165\1\145\1\157\1\115\1\154\1\151\1\101\2\uffff\2\0\1\52\3\uffff\1\160\1\164\1\uffff\1\141\1\143\1\141\2\154\4\uffff\1\143\1\uffff\1\164\1\156\5\uffff\1\152\1\141\1\156\1\141\1\157\1\154\1\156\1\155\1\164\1\142\1\147\1\124\1\154\1\141\5\uffff\1\157\1\60\1\143\1\154\1\164\1\145\1\144\1\153\2\164\1\141\1\146\1\145\1\154\1\163\1\151\1\164\1\160\1\166\1\145\1\142\1\160\1\165\1\60\1\123\1\157\1\164\1\162\1\uffff\1\153\1\165\1\162\1\60\1\145\1\141\1\151\1\145\1\155\1\151\1\143\2\60\1\156\1\151\2\145\1\162\1\145\1\165\1\147\1\uffff\1\157\1\171\1\162\1\164\1\141\1\144\1\141\1\uffff\1\162\1\147\1\141\1\162\1\157\1\147\1\164\2\uffff\1\147\1\163\1\60\1\162\1\141\1\162\1\164\1\60\1\154\1\123\1\141\1\60\1\147\1\151\2\60\1\145\1\154\1\156\1\144\3\60\1\164\1\uffff\1\60\1\164\2\60\1\uffff\1\166\1\157\1\123\1\uffff\1\145\1\156\2\uffff\1\60\1\55\1\163\1\145\3\uffff\1\151\1\uffff\1\145\2\uffff\1\145\1\154\1\157\1\60\1\147\2\uffff\1\60\1\154\1\143\1\60\1\162\1\166\1\154\1\uffff\1\60\1\uffff\1\60\1\163\1\uffff\1\60\1\145\1\166\2\uffff\1\60\1\uffff\1\162\1\145\1\uffff\1\60\1\162\1\uffff\1\60\1\uffff"; static final String DFA12_maxS = - "\1\uffff\1\155\1\170\1\151\3\uffff\1\141\1\72\1\uffff\1\145\1\172\2\uffff\2\uffff\1\57\2\uffff\1\160\1\uffff\1\141\1\143\1\141\3\uffff\1\143\2\uffff\1\164\5\uffff\1\157\1\143\1\154\1\164\1\153\1\141\1\162\1\153\1\165\1\162\1\141\1\155\1\164\1\141\1\144\1\141\1\147\1\157\1\172\1\147\1\151\1\172\1\145\1\144\1\uffff\1\145\1\156\1\uffff\1\172\1\145\1\172\1\147\1\uffff\1\154\1\uffff\2\172\2\uffff"; + "\1\uffff\1\uffff\1\156\1\170\1\151\1\157\4\uffff\1\141\1\72\1\145\1\157\1\75\3\uffff\1\142\1\165\1\164\1\145\2\165\1\145\1\157\1\115\1\154\1\151\1\172\2\uffff\2\uffff\1\57\3\uffff\1\160\1\164\1\uffff\1\141\1\143\1\141\2\154\4\uffff\1\164\1\uffff\1\164\1\156\5\uffff\1\152\1\141\1\156\1\162\1\157\1\154\1\156\1\155\1\164\1\142\1\147\1\124\1\154\1\141\5\uffff\1\157\1\172\1\143\1\154\1\164\1\145\1\144\1\153\2\164\1\141\1\146\1\145\1\154\1\163\1\151\1\164\1\160\1\166\1\145\1\142\1\160\1\165\1\172\1\123\1\157\1\164\1\162\1\uffff\1\153\1\165\1\162\1\172\1\145\1\141\1\151\1\145\1\155\1\151\1\143\2\172\1\156\1\151\2\145\1\162\1\145\1\165\1\147\1\uffff\1\157\1\171\1\162\1\164\1\141\1\144\1\141\1\uffff\1\162\1\147\1\141\1\162\1\157\1\147\1\164\2\uffff\1\147\1\163\1\172\1\162\1\141\1\162\1\164\1\172\1\154\1\123\1\141\1\172\1\147\1\151\2\172\1\145\1\154\1\156\1\144\3\172\1\164\1\uffff\1\172\1\164\2\172\1\uffff\1\166\1\157\1\123\1\uffff\1\145\1\156\2\uffff\1\172\1\55\1\163\1\145\3\uffff\1\151\1\uffff\1\145\2\uffff\1\145\1\154\1\157\1\172\1\147\2\uffff\1\172\1\154\1\143\1\172\1\162\1\166\1\154\1\uffff\1\172\1\uffff\1\172\1\163\1\uffff\1\172\1\145\1\166\2\uffff\1\172\1\uffff\1\162\1\145\1\uffff\1\172\1\162\1\uffff\1\172\1\uffff"; static final String DFA12_acceptS = - "\4\uffff\1\4\1\5\1\6\2\uffff\1\12\2\uffff\1\14\1\15\3\uffff\1\21\1\22\1\uffff\1\14\3\uffff\1\4\1\5\1\6\1\uffff\1\11\1\12\1\uffff\1\15\1\16\1\17\1\20\1\21\30\uffff\1\1\2\uffff\1\3\4\uffff\1\7\1\uffff\1\2\2\uffff\1\10\1\13"; + "\1\uffff\1\1\4\uffff\1\6\1\7\1\10\1\11\5\uffff\1\24\1\25\1\26\14\uffff\1\47\1\50\3\uffff\1\54\1\55\1\1\2\uffff\1\47\5\uffff\1\6\1\7\1\10\1\11\1\uffff\1\14\2\uffff\1\23\1\22\1\24\1\25\1\26\16\uffff\1\50\1\51\1\52\1\53\1\54\34\uffff\1\30\25\uffff\1\42\7\uffff\1\5\7\uffff\1\31\1\36\30\uffff\1\33\4\uffff\1\41\3\uffff\1\2\2\uffff\1\4\1\16\4\uffff\1\21\1\27\1\32\1\uffff\1\37\1\uffff\1\35\1\40\5\uffff\1\12\1\17\7\uffff\1\3\1\uffff\1\20\2\uffff\1\34\3\uffff\1\13\1\15\1\uffff\1\44\2\uffff\1\43\2\uffff\1\45\1\uffff\1\46"; static final String DFA12_specialS = - "\1\1\15\uffff\1\0\1\2\73\uffff}>"; + "\1\1\37\uffff\1\2\1\0\u00c5\uffff}>"; static final String[] DFA12_transitionS = { - "\11\22\2\21\2\22\1\21\22\22\1\21\1\22\1\16\4\22\1\17\4\22\1\5\1\22\1\11\1\20\12\15\1\10\6\22\32\14\3\22\1\13\1\14\1\22\4\14\1\2\3\14\1\1\3\14\1\12\2\14\1\7\5\14\1\3\4\14\1\4\1\22\1\6\uff82\22", - "\1\23", - "\1\25\7\uffff\1\26", - "\1\27", + "\11\44\2\43\2\44\1\43\22\44\1\43\1\44\1\40\1\17\3\44\1\41\4\44\1\10\1\44\1\1\1\42\12\37\1\13\1\44\1\16\1\6\3\44\1\33\15\36\1\22\3\36\1\32\2\36\1\34\4\36\1\20\1\44\1\21\1\35\1\36\1\44\2\36\1\15\1\30\1\3\1\5\1\25\1\36\1\2\2\36\1\31\1\14\1\26\1\27\1\12\1\36\1\23\1\24\2\36\1\4\4\36\1\7\1\44\1\11\uff82\44", + "", + "\1\46\1\47", + "\1\51\7\uffff\1\52", + "\1\53", + "\1\54\5\uffff\1\55", + "", + "", + "", + "", + "\1\62", + "\1\63", + "\1\64", + "\1\65", + "\1\66", "", "", "", - "\1\33", - "\1\34", + "\1\73", + "\1\74\17\uffff\1\75", + "\1\77\13\uffff\1\100\4\uffff\1\76", + "\1\101", + "\1\102", + "\1\103", + "\1\104", + "\1\105", + "\1\106", + "\1\107", + "\1\110", + "\32\50\4\uffff\1\50\1\uffff\32\50", "", - "\1\36", - "\32\24\4\uffff\1\24\1\uffff\32\24", "", + "\0\112", + "\0\112", + "\1\113\4\uffff\1\114", "", - "\0\40", - "\0\40", - "\1\41\4\uffff\1\42", "", "", - "\1\44", + "\1\116", + "\1\117", "", - "\1\45", - "\1\46", - "\1\47", + "\1\120", + "\1\121", + "\1\122", + "\1\123", + "\1\124", "", "", "", - "\1\50", "", + "\1\125\16\uffff\1\126\1\uffff\1\127", "", - "\1\51", + "\1\130", + "\1\131", "", "", "", "", "", - "\1\52", - "\1\53", - "\1\54", - "\1\55", - "\1\56", - "\1\57", - "\1\60", - "\1\61", - "\1\62", - "\1\63", - "\1\64", - "\1\65", - "\1\66", - "\1\67", - "\1\70", - "\1\71", - "\1\72", - "\1\73", - "\12\24\7\uffff\32\24\4\uffff\1\24\1\uffff\32\24", - "\1\75", - "\1\76", - "\12\24\7\uffff\32\24\4\uffff\1\24\1\uffff\32\24", - "\1\100", - "\1\101", + "\1\132", + "\1\133", + "\1\134", + "\1\136\20\uffff\1\135", + "\1\137", + "\1\140", + "\1\141", + "\1\142", + "\1\143", + "\1\144", + "\1\145", + "\1\146", + "\1\147", + "\1\150", "", - "\1\102", - "\1\103", "", - "\12\24\7\uffff\32\24\4\uffff\1\24\1\uffff\32\24", - "\1\105", - "\12\24\7\uffff\32\24\4\uffff\1\24\1\uffff\32\24", - "\1\107", "", - "\1\110", "", - "\12\24\7\uffff\32\24\4\uffff\1\24\1\uffff\32\24", - "\12\24\7\uffff\32\24\4\uffff\1\24\1\uffff\32\24", "", + "\1\151", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\153", + "\1\154", + "\1\155", + "\1\156", + "\1\157", + "\1\160", + "\1\161", + "\1\162", + "\1\163", + "\1\164", + "\1\165", + "\1\166", + "\1\167", + "\1\170", + "\1\171", + "\1\172", + "\1\173", + "\1\174", + "\1\175", + "\1\176", + "\1\177", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u0081", + "\1\u0082", + "\1\u0083", + "\1\u0084", + "", + "\1\u0085", + "\1\u0086", + "\1\u0087", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u0089", + "\1\u008a", + "\1\u008b", + "\1\u008c", + "\1\u008d", + "\1\u008e", + "\1\u008f", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u0092", + "\1\u0093", + "\1\u0094", + "\1\u0095", + "\1\u0096", + "\1\u0097", + "\1\u0098", + "\1\u0099", + "", + "\1\u009a", + "\1\u009b", + "\1\u009c", + "\1\u009d", + "\1\u009e", + "\1\u009f", + "\1\u00a0", + "", + "\1\u00a1", + "\1\u00a2", + "\1\u00a3", + "\1\u00a4", + "\1\u00a5", + "\1\u00a6", + "\1\u00a7", + "", + "", + "\1\u00a8", + "\1\u00a9", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00ab", + "\1\u00ac", + "\1\u00ad", + "\1\u00ae", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00b0", + "\1\u00b1", + "\1\u00b2", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00b4", + "\1\u00b5", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00b8", + "\1\u00b9", + "\1\u00ba", + "\1\u00bb", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00bf", + "", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00c1", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "", + "\1\u00c4", + "\1\u00c5", + "\1\u00c6", + "", + "\1\u00c7", + "\1\u00c8", + "", + "", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00ca", + "\1\u00cb", + "\1\u00cc", + "", + "", + "", + "\1\u00cd", + "", + "\1\u00ce", + "", + "", + "\1\u00cf", + "\1\u00d0", + "\1\u00d1", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00d3", + "", + "", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00d5", + "\1\u00d6", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00d8", + "\1\u00d9", + "\1\u00da", + "", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00dd", + "", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00df", + "\1\u00e0", + "", + "", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "", + "\1\u00e2", + "\1\u00e3", + "", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", + "\1\u00e5", + "", + "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50", "" }; @@ -1028,19 +1962,19 @@ public class InternalApplicationConfigurationLexer extends Lexer { this.transition = DFA12_transition; } public String getDescription() { - return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );"; + return "1:1: Tokens : ( T__11 | 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 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | 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 LA12_14 = input.LA(1); + int LA12_33 = input.LA(1); s = -1; - if ( ((LA12_14>='\u0000' && LA12_14<='\uFFFF')) ) {s = 32;} + if ( ((LA12_33>='\u0000' && LA12_33<='\uFFFF')) ) {s = 74;} - else s = 18; + else s = 36; if ( s>=0 ) return s; break; @@ -1048,51 +1982,87 @@ public class InternalApplicationConfigurationLexer extends Lexer { int LA12_0 = input.LA(1); s = -1; - if ( (LA12_0=='i') ) {s = 1;} + if ( (LA12_0=='.') ) {s = 1;} + + else if ( (LA12_0=='i') ) {s = 2;} + + else if ( (LA12_0=='e') ) {s = 3;} + + else if ( (LA12_0=='v') ) {s = 4;} + + else if ( (LA12_0=='f') ) {s = 5;} + + else if ( (LA12_0=='=') ) {s = 6;} + + else if ( (LA12_0=='{') ) {s = 7;} + + else if ( (LA12_0==',') ) {s = 8;} + + else if ( (LA12_0=='}') ) {s = 9;} + + else if ( (LA12_0=='p') ) {s = 10;} + + else if ( (LA12_0==':') ) {s = 11;} + + else if ( (LA12_0=='m') ) {s = 12;} + + else if ( (LA12_0=='c') ) {s = 13;} + + else if ( (LA12_0=='<') ) {s = 14;} + + else if ( (LA12_0=='#') ) {s = 15;} + + else if ( (LA12_0=='[') ) {s = 16;} + + else if ( (LA12_0==']') ) {s = 17;} + + else if ( (LA12_0=='O') ) {s = 18;} + + else if ( (LA12_0=='r') ) {s = 19;} - else if ( (LA12_0=='e') ) {s = 2;} + else if ( (LA12_0=='s') ) {s = 20;} - else if ( (LA12_0=='v') ) {s = 3;} + else if ( (LA12_0=='g') ) {s = 21;} - else if ( (LA12_0=='{') ) {s = 4;} + else if ( (LA12_0=='n') ) {s = 22;} - else if ( (LA12_0==',') ) {s = 5;} + else if ( (LA12_0=='o') ) {s = 23;} - else if ( (LA12_0=='}') ) {s = 6;} + else if ( (LA12_0=='d') ) {s = 24;} - else if ( (LA12_0=='p') ) {s = 7;} + else if ( (LA12_0=='l') ) {s = 25;} - else if ( (LA12_0==':') ) {s = 8;} + else if ( (LA12_0=='S') ) {s = 26;} - else if ( (LA12_0=='.') ) {s = 9;} + else if ( (LA12_0=='A') ) {s = 27;} - else if ( (LA12_0=='m') ) {s = 10;} + else if ( (LA12_0=='V') ) {s = 28;} - else if ( (LA12_0=='^') ) {s = 11;} + else if ( (LA12_0=='^') ) {s = 29;} - else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='d')||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='l')||(LA12_0>='n' && LA12_0<='o')||(LA12_0>='q' && LA12_0<='u')||(LA12_0>='w' && LA12_0<='z')) ) {s = 12;} + else if ( ((LA12_0>='B' && LA12_0<='N')||(LA12_0>='P' && LA12_0<='R')||(LA12_0>='T' && LA12_0<='U')||(LA12_0>='W' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='b')||LA12_0=='h'||(LA12_0>='j' && LA12_0<='k')||LA12_0=='q'||(LA12_0>='t' && LA12_0<='u')||(LA12_0>='w' && LA12_0<='z')) ) {s = 30;} - else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 13;} + else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 31;} - else if ( (LA12_0=='\"') ) {s = 14;} + else if ( (LA12_0=='\"') ) {s = 32;} - else if ( (LA12_0=='\'') ) {s = 15;} + else if ( (LA12_0=='\'') ) {s = 33;} - else if ( (LA12_0=='/') ) {s = 16;} + else if ( (LA12_0=='/') ) {s = 34;} - else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 17;} + else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 35;} - else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='(' && LA12_0<='+')||LA12_0=='-'||(LA12_0>=';' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 18;} + else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='$' && LA12_0<='&')||(LA12_0>='(' && LA12_0<='+')||LA12_0=='-'||LA12_0==';'||(LA12_0>='>' && LA12_0<='@')||LA12_0=='\\'||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 36;} if ( s>=0 ) return s; break; case 2 : - int LA12_15 = input.LA(1); + int LA12_32 = input.LA(1); s = -1; - if ( ((LA12_15>='\u0000' && LA12_15<='\uFFFF')) ) {s = 32;} + if ( ((LA12_32>='\u0000' && LA12_32<='\uFFFF')) ) {s = 74;} - else s = 18; + else s = 36; if ( s>=0 ) return s; break; diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfigurationParser.java b/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfigurationParser.java index 7387e45b..5a083af8 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfigurationParser.java +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src-gen/hu/bme/mit/inf/dslreasoner/application/parser/antlr/internal/InternalApplicationConfigurationParser.java @@ -5,6 +5,7 @@ import org.eclipse.xtext.parser.*; import org.eclipse.xtext.parser.impl.*; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.common.util.Enumerator; import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; import org.eclipse.xtext.parser.antlr.XtextTokenStream; import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; @@ -17,14 +18,13 @@ 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 InternalApplicationConfigurationParser extends AbstractInternalAntlrParser { public static final String[] tokenNames = new String[] { - "", "", "", "", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'import'", "'epackage'", "'viatra'", "'{'", "','", "'}'", "'package'", "'excluding'", "'::'", "'.'", "'metamodel'" + "", "", "", "", "RULE_ID", "RULE_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'.'", "'import'", "'epackage'", "'viatra'", "'file'", "'='", "'{'", "','", "'}'", "'package'", "'excluding'", "'::'", "'metamodel'", "'folder'", "'partial-model'", "'patterns'", "'config'", "'<'", "'<='", "'#'", "'['", "']'", "'Object'", "'int'", "'real'", "'string'", "'scope'", "'generate'", "'number'", "'runs'", "'solver'", "'output'", "'debug'", "'log'", "'statistics'", "'SMTSolver'", "'AlloySolver'", "'ViatraSolver'" }; - public static final int RULE_STRING=4; - public static final int RULE_SL_COMMENT=8; public static final int T__19=19; public static final int T__15=15; public static final int T__16=16; @@ -34,14 +34,43 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl public static final int T__12=12; public static final int T__13=13; public static final int T__14=14; - public static final int EOF=-1; - public static final int RULE_ID=5; - public static final int RULE_WS=9; - public static final int RULE_ANY_OTHER=10; + public static final int RULE_ID=4; + public static final int T__26=26; + public static final int T__27=27; + public static final int T__28=28; public static final int RULE_INT=6; + public static final int T__29=29; + public static final int T__22=22; public static final int RULE_ML_COMMENT=7; + public static final int T__23=23; + public static final int T__24=24; + public static final int T__25=25; public static final int T__20=20; public static final int T__21=21; + public static final int RULE_STRING=5; + public static final int RULE_SL_COMMENT=8; + 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 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 EOF=-1; + 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_WS=9; + public static final int RULE_ANY_OTHER=10; + public static final int T__48=48; + public static final int T__44=44; + public static final int T__45=45; + public static final int T__46=46; + public static final int T__47=47; + public static final int T__40=40; + public static final int T__41=41; + public static final int T__42=42; + public static final int T__43=43; // delegates // delegators @@ -83,7 +112,7 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR start "entryRuleConfigurationScript" - // InternalApplicationConfiguration.g:64:1: entryRuleConfigurationScript returns [EObject current=null] : iv_ruleConfigurationScript= ruleConfigurationScript EOF ; + // InternalApplicationConfiguration.g:65:1: entryRuleConfigurationScript returns [EObject current=null] : iv_ruleConfigurationScript= ruleConfigurationScript EOF ; public final EObject entryRuleConfigurationScript() throws RecognitionException { EObject current = null; @@ -91,17 +120,21 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl try { - // InternalApplicationConfiguration.g:64:60: (iv_ruleConfigurationScript= ruleConfigurationScript EOF ) - // InternalApplicationConfiguration.g:65:2: iv_ruleConfigurationScript= ruleConfigurationScript EOF + // InternalApplicationConfiguration.g:65:60: (iv_ruleConfigurationScript= ruleConfigurationScript EOF ) + // InternalApplicationConfiguration.g:66:2: iv_ruleConfigurationScript= ruleConfigurationScript EOF { - newCompositeNode(grammarAccess.getConfigurationScriptRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getConfigurationScriptRule()); + } pushFollow(FOLLOW_1); iv_ruleConfigurationScript=ruleConfigurationScript(); state._fsp--; - - current =iv_ruleConfigurationScript; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleConfigurationScript; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -119,7 +152,7 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR start "ruleConfigurationScript" - // InternalApplicationConfiguration.g:71:1: ruleConfigurationScript returns [EObject current=null] : ( ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* ) ; + // InternalApplicationConfiguration.g:72:1: ruleConfigurationScript returns [EObject current=null] : ( ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* ) ; public final EObject ruleConfigurationScript() throws RecognitionException { EObject current = null; @@ -132,49 +165,53 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl enterRule(); try { - // InternalApplicationConfiguration.g:77:2: ( ( ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* ) ) - // InternalApplicationConfiguration.g:78:2: ( ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* ) + // InternalApplicationConfiguration.g:78:2: ( ( ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* ) ) + // InternalApplicationConfiguration.g:79:2: ( ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* ) { - // InternalApplicationConfiguration.g:78:2: ( ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* ) - // InternalApplicationConfiguration.g:79:3: ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* + // InternalApplicationConfiguration.g:79:2: ( ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* ) + // InternalApplicationConfiguration.g:80:3: ( (lv_imports_0_0= ruleImport ) )* ( (lv_commands_1_0= ruleCommand ) )* { - // InternalApplicationConfiguration.g:79:3: ( (lv_imports_0_0= ruleImport ) )* + // InternalApplicationConfiguration.g:80:3: ( (lv_imports_0_0= ruleImport ) )* loop1: do { int alt1=2; int LA1_0 = input.LA(1); - if ( (LA1_0==11) ) { + if ( (LA1_0==12) ) { alt1=1; } switch (alt1) { case 1 : - // InternalApplicationConfiguration.g:80:4: (lv_imports_0_0= ruleImport ) + // InternalApplicationConfiguration.g:81:4: (lv_imports_0_0= ruleImport ) { - // InternalApplicationConfiguration.g:80:4: (lv_imports_0_0= ruleImport ) - // InternalApplicationConfiguration.g:81:5: lv_imports_0_0= ruleImport + // InternalApplicationConfiguration.g:81:4: (lv_imports_0_0= ruleImport ) + // InternalApplicationConfiguration.g:82:5: lv_imports_0_0= ruleImport { + if ( state.backtracking==0 ) { - newCompositeNode(grammarAccess.getConfigurationScriptAccess().getImportsImportParserRuleCall_0_0()); - + newCompositeNode(grammarAccess.getConfigurationScriptAccess().getImportsImportParserRuleCall_0_0()); + + } pushFollow(FOLLOW_3); lv_imports_0_0=ruleImport(); state._fsp--; - - - if (current==null) { - current = createModelElementForParent(grammarAccess.getConfigurationScriptRule()); - } - add( - current, - "imports", - lv_imports_0_0, - "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Import"); - afterParserOrEnumRuleCall(); - + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getConfigurationScriptRule()); + } + add( + current, + "imports", + lv_imports_0_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Import"); + afterParserOrEnumRuleCall(); + + } } @@ -187,43 +224,47 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } } while (true); - // InternalApplicationConfiguration.g:98:3: ( (lv_commands_1_0= ruleCommand ) )* + // InternalApplicationConfiguration.g:99:3: ( (lv_commands_1_0= ruleCommand ) )* loop2: do { int alt2=2; int LA2_0 = input.LA(1); - if ( (LA2_0==21) ) { + if ( (LA2_0==15||LA2_0==23||(LA2_0>=25 && LA2_0<=27)||(LA2_0>=37 && LA2_0<=38)) ) { alt2=1; } switch (alt2) { case 1 : - // InternalApplicationConfiguration.g:99:4: (lv_commands_1_0= ruleCommand ) + // InternalApplicationConfiguration.g:100:4: (lv_commands_1_0= ruleCommand ) { - // InternalApplicationConfiguration.g:99:4: (lv_commands_1_0= ruleCommand ) - // InternalApplicationConfiguration.g:100:5: lv_commands_1_0= ruleCommand + // InternalApplicationConfiguration.g:100:4: (lv_commands_1_0= ruleCommand ) + // InternalApplicationConfiguration.g:101:5: lv_commands_1_0= ruleCommand { + if ( state.backtracking==0 ) { - newCompositeNode(grammarAccess.getConfigurationScriptAccess().getCommandsCommandParserRuleCall_1_0()); - + newCompositeNode(grammarAccess.getConfigurationScriptAccess().getCommandsCommandParserRuleCall_1_0()); + + } pushFollow(FOLLOW_4); lv_commands_1_0=ruleCommand(); state._fsp--; - - - if (current==null) { - current = createModelElementForParent(grammarAccess.getConfigurationScriptRule()); - } - add( - current, - "commands", - lv_commands_1_0, - "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Command"); - afterParserOrEnumRuleCall(); - + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getConfigurationScriptRule()); + } + add( + current, + "commands", + lv_commands_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Command"); + afterParserOrEnumRuleCall(); + + } } @@ -242,9 +283,11 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -259,7 +302,7 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR start "entryRuleCommand" - // InternalApplicationConfiguration.g:121:1: entryRuleCommand returns [EObject current=null] : iv_ruleCommand= ruleCommand EOF ; + // InternalApplicationConfiguration.g:122:1: entryRuleCommand returns [EObject current=null] : iv_ruleCommand= ruleCommand EOF ; public final EObject entryRuleCommand() throws RecognitionException { EObject current = null; @@ -267,17 +310,21 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl try { - // InternalApplicationConfiguration.g:121:48: (iv_ruleCommand= ruleCommand EOF ) - // InternalApplicationConfiguration.g:122:2: iv_ruleCommand= ruleCommand EOF + // InternalApplicationConfiguration.g:122:48: (iv_ruleCommand= ruleCommand EOF ) + // InternalApplicationConfiguration.g:123:2: iv_ruleCommand= ruleCommand EOF { - newCompositeNode(grammarAccess.getCommandRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getCommandRule()); + } pushFollow(FOLLOW_1); iv_ruleCommand=ruleCommand(); state._fsp--; - - current =iv_ruleCommand; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleCommand; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -295,38 +342,95 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR start "ruleCommand" - // InternalApplicationConfiguration.g:128:1: ruleCommand returns [EObject current=null] : this_Declaration_0= ruleDeclaration ; + // InternalApplicationConfiguration.g:129:1: ruleCommand returns [EObject current=null] : (this_Declaration_0= ruleDeclaration | this_Task_1= ruleTask ) ; public final EObject ruleCommand() throws RecognitionException { EObject current = null; EObject this_Declaration_0 = null; + EObject this_Task_1 = null; + enterRule(); try { - // InternalApplicationConfiguration.g:134:2: (this_Declaration_0= ruleDeclaration ) - // InternalApplicationConfiguration.g:135:2: this_Declaration_0= ruleDeclaration + // InternalApplicationConfiguration.g:135:2: ( (this_Declaration_0= ruleDeclaration | this_Task_1= ruleTask ) ) + // InternalApplicationConfiguration.g:136:2: (this_Declaration_0= ruleDeclaration | this_Task_1= ruleTask ) { + // InternalApplicationConfiguration.g:136:2: (this_Declaration_0= ruleDeclaration | this_Task_1= ruleTask ) + int alt3=2; + int LA3_0 = input.LA(1); - newCompositeNode(grammarAccess.getCommandAccess().getDeclarationParserRuleCall()); - - pushFollow(FOLLOW_2); - this_Declaration_0=ruleDeclaration(); + if ( (LA3_0==15||LA3_0==23||(LA3_0>=25 && LA3_0<=27)||LA3_0==37) ) { + alt3=1; + } + else if ( (LA3_0==38) ) { + alt3=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 3, 0, input); - state._fsp--; + throw nvae; + } + switch (alt3) { + case 1 : + // InternalApplicationConfiguration.g:137:3: this_Declaration_0= ruleDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getCommandAccess().getDeclarationParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_Declaration_0=ruleDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_Declaration_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:146:3: this_Task_1= ruleTask + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getCommandAccess().getTaskParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_Task_1=ruleTask(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current = this_Task_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } - current = this_Declaration_0; - afterParserOrEnumRuleCall(); - } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -340,26 +444,30 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR end "ruleCommand" - // $ANTLR start "entryRuleDeclaration" - // InternalApplicationConfiguration.g:146:1: entryRuleDeclaration returns [EObject current=null] : iv_ruleDeclaration= ruleDeclaration EOF ; - public final EObject entryRuleDeclaration() throws RecognitionException { - EObject current = null; + // $ANTLR start "entryRuleQualifiedName" + // InternalApplicationConfiguration.g:158:1: entryRuleQualifiedName returns [String current=null] : iv_ruleQualifiedName= ruleQualifiedName EOF ; + public final String entryRuleQualifiedName() throws RecognitionException { + String current = null; - EObject iv_ruleDeclaration = null; + AntlrDatatypeRuleToken iv_ruleQualifiedName = null; try { - // InternalApplicationConfiguration.g:146:52: (iv_ruleDeclaration= ruleDeclaration EOF ) - // InternalApplicationConfiguration.g:147:2: iv_ruleDeclaration= ruleDeclaration EOF + // InternalApplicationConfiguration.g:158:53: (iv_ruleQualifiedName= ruleQualifiedName EOF ) + // InternalApplicationConfiguration.g:159:2: iv_ruleQualifiedName= ruleQualifiedName EOF { - newCompositeNode(grammarAccess.getDeclarationRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getQualifiedNameRule()); + } pushFollow(FOLLOW_1); - iv_ruleDeclaration=ruleDeclaration(); + iv_ruleQualifiedName=ruleQualifiedName(); state._fsp--; - - current =iv_ruleDeclaration; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleQualifiedName.getText(); + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -373,42 +481,98 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "entryRuleDeclaration" + // $ANTLR end "entryRuleQualifiedName" - // $ANTLR start "ruleDeclaration" - // InternalApplicationConfiguration.g:153:1: ruleDeclaration returns [EObject current=null] : this_MetamodelDeclaration_0= ruleMetamodelDeclaration ; - public final EObject ruleDeclaration() throws RecognitionException { - EObject current = null; - - EObject this_MetamodelDeclaration_0 = null; + // $ANTLR start "ruleQualifiedName" + // InternalApplicationConfiguration.g:165:1: ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* ) ; + public final AntlrDatatypeRuleToken ruleQualifiedName() throws RecognitionException { + AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); + Token this_ID_0=null; + Token kw=null; + Token this_ID_2=null; enterRule(); try { - // InternalApplicationConfiguration.g:159:2: (this_MetamodelDeclaration_0= ruleMetamodelDeclaration ) - // InternalApplicationConfiguration.g:160:2: this_MetamodelDeclaration_0= ruleMetamodelDeclaration + // InternalApplicationConfiguration.g:171:2: ( (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* ) ) + // InternalApplicationConfiguration.g:172:2: (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* ) { + // InternalApplicationConfiguration.g:172:2: (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* ) + // InternalApplicationConfiguration.g:173:3: this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* + { + this_ID_0=(Token)match(input,RULE_ID,FOLLOW_5); if (state.failed) return current; + if ( state.backtracking==0 ) { - newCompositeNode(grammarAccess.getDeclarationAccess().getMetamodelDeclarationParserRuleCall()); - - pushFollow(FOLLOW_2); - this_MetamodelDeclaration_0=ruleMetamodelDeclaration(); + current.merge(this_ID_0); + + } + if ( state.backtracking==0 ) { - state._fsp--; + newLeafNode(this_ID_0, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); + + } + // InternalApplicationConfiguration.g:180:3: ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* + loop4: + do { + int alt4=2; + int LA4_0 = input.LA(1); + + if ( (LA4_0==11) && (synpred1_InternalApplicationConfiguration())) { + alt4=1; + } + + + switch (alt4) { + case 1 : + // InternalApplicationConfiguration.g:181:4: ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID + { + // InternalApplicationConfiguration.g:181:4: ( ( '.' )=>kw= '.' ) + // InternalApplicationConfiguration.g:182:5: ( '.' )=>kw= '.' + { + kw=(Token)match(input,11,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current.merge(kw); + newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); + + } + } + + this_ID_2=(Token)match(input,RULE_ID,FOLLOW_5); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current.merge(this_ID_2); + + } + if ( state.backtracking==0 ) { + + newLeafNode(this_ID_2, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); + + } + + } + break; + + default : + break loop4; + } + } while (true); + + + } - current = this_MetamodelDeclaration_0; - afterParserOrEnumRuleCall(); - } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -419,11 +583,11 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "ruleDeclaration" + // $ANTLR end "ruleQualifiedName" // $ANTLR start "entryRuleImport" - // InternalApplicationConfiguration.g:171:1: entryRuleImport returns [EObject current=null] : iv_ruleImport= ruleImport EOF ; + // InternalApplicationConfiguration.g:201:1: entryRuleImport returns [EObject current=null] : iv_ruleImport= ruleImport EOF ; public final EObject entryRuleImport() throws RecognitionException { EObject current = null; @@ -431,17 +595,21 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl try { - // InternalApplicationConfiguration.g:171:47: (iv_ruleImport= ruleImport EOF ) - // InternalApplicationConfiguration.g:172:2: iv_ruleImport= ruleImport EOF + // InternalApplicationConfiguration.g:201:47: (iv_ruleImport= ruleImport EOF ) + // InternalApplicationConfiguration.g:202:2: iv_ruleImport= ruleImport EOF { - newCompositeNode(grammarAccess.getImportRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getImportRule()); + } pushFollow(FOLLOW_1); iv_ruleImport=ruleImport(); state._fsp--; - - current =iv_ruleImport; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleImport; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -459,7 +627,7 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR start "ruleImport" - // InternalApplicationConfiguration.g:178:1: ruleImport returns [EObject current=null] : (this_EPackageImport_0= ruleEPackageImport | this_ViatraImport_1= ruleViatraImport ) ; + // InternalApplicationConfiguration.g:208:1: ruleImport returns [EObject current=null] : (this_EPackageImport_0= ruleEPackageImport | this_ViatraImport_1= ruleViatraImport ) ; public final EObject ruleImport() throws RecognitionException { EObject current = null; @@ -472,69 +640,79 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl enterRule(); try { - // InternalApplicationConfiguration.g:184:2: ( (this_EPackageImport_0= ruleEPackageImport | this_ViatraImport_1= ruleViatraImport ) ) - // InternalApplicationConfiguration.g:185:2: (this_EPackageImport_0= ruleEPackageImport | this_ViatraImport_1= ruleViatraImport ) + // InternalApplicationConfiguration.g:214:2: ( (this_EPackageImport_0= ruleEPackageImport | this_ViatraImport_1= ruleViatraImport ) ) + // InternalApplicationConfiguration.g:215:2: (this_EPackageImport_0= ruleEPackageImport | this_ViatraImport_1= ruleViatraImport ) { - // InternalApplicationConfiguration.g:185:2: (this_EPackageImport_0= ruleEPackageImport | this_ViatraImport_1= ruleViatraImport ) - int alt3=2; - int LA3_0 = input.LA(1); + // InternalApplicationConfiguration.g:215:2: (this_EPackageImport_0= ruleEPackageImport | this_ViatraImport_1= ruleViatraImport ) + int alt5=2; + int LA5_0 = input.LA(1); - if ( (LA3_0==11) ) { - int LA3_1 = input.LA(2); + if ( (LA5_0==12) ) { + int LA5_1 = input.LA(2); - if ( (LA3_1==12) ) { - alt3=1; + if ( (LA5_1==13) ) { + alt5=1; } - else if ( (LA3_1==13) ) { - alt3=2; + else if ( (LA5_1==14) ) { + alt5=2; } else { + if (state.backtracking>0) {state.failed=true; return current;} NoViableAltException nvae = - new NoViableAltException("", 3, 1, input); + new NoViableAltException("", 5, 1, input); throw nvae; } } else { + if (state.backtracking>0) {state.failed=true; return current;} NoViableAltException nvae = - new NoViableAltException("", 3, 0, input); + new NoViableAltException("", 5, 0, input); throw nvae; } - switch (alt3) { + switch (alt5) { case 1 : - // InternalApplicationConfiguration.g:186:3: this_EPackageImport_0= ruleEPackageImport + // InternalApplicationConfiguration.g:216:3: this_EPackageImport_0= ruleEPackageImport { + if ( state.backtracking==0 ) { - newCompositeNode(grammarAccess.getImportAccess().getEPackageImportParserRuleCall_0()); - + newCompositeNode(grammarAccess.getImportAccess().getEPackageImportParserRuleCall_0()); + + } pushFollow(FOLLOW_2); this_EPackageImport_0=ruleEPackageImport(); state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { - - current = this_EPackageImport_0; - afterParserOrEnumRuleCall(); - + current = this_EPackageImport_0; + afterParserOrEnumRuleCall(); + + } } break; case 2 : - // InternalApplicationConfiguration.g:195:3: this_ViatraImport_1= ruleViatraImport + // InternalApplicationConfiguration.g:225:3: this_ViatraImport_1= ruleViatraImport { + if ( state.backtracking==0 ) { - newCompositeNode(grammarAccess.getImportAccess().getViatraImportParserRuleCall_1()); - + newCompositeNode(grammarAccess.getImportAccess().getViatraImportParserRuleCall_1()); + + } pushFollow(FOLLOW_2); this_ViatraImport_1=ruleViatraImport(); state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { - - current = this_ViatraImport_1; - afterParserOrEnumRuleCall(); - + current = this_ViatraImport_1; + afterParserOrEnumRuleCall(); + + } } break; @@ -544,9 +722,11 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -561,7 +741,7 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR start "entryRuleEPackageImport" - // InternalApplicationConfiguration.g:207:1: entryRuleEPackageImport returns [EObject current=null] : iv_ruleEPackageImport= ruleEPackageImport EOF ; + // InternalApplicationConfiguration.g:237:1: entryRuleEPackageImport returns [EObject current=null] : iv_ruleEPackageImport= ruleEPackageImport EOF ; public final EObject entryRuleEPackageImport() throws RecognitionException { EObject current = null; @@ -569,17 +749,21 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl try { - // InternalApplicationConfiguration.g:207:55: (iv_ruleEPackageImport= ruleEPackageImport EOF ) - // InternalApplicationConfiguration.g:208:2: iv_ruleEPackageImport= ruleEPackageImport EOF + // InternalApplicationConfiguration.g:237:55: (iv_ruleEPackageImport= ruleEPackageImport EOF ) + // InternalApplicationConfiguration.g:238:2: iv_ruleEPackageImport= ruleEPackageImport EOF { - newCompositeNode(grammarAccess.getEPackageImportRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getEPackageImportRule()); + } pushFollow(FOLLOW_1); iv_ruleEPackageImport=ruleEPackageImport(); state._fsp--; - - current =iv_ruleEPackageImport; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleEPackageImport; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -597,7 +781,7 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR start "ruleEPackageImport" - // InternalApplicationConfiguration.g:214:1: ruleEPackageImport returns [EObject current=null] : (otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) ) ; + // InternalApplicationConfiguration.g:244:1: ruleEPackageImport returns [EObject current=null] : (otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) ) ; public final EObject ruleEPackageImport() throws RecognitionException { EObject current = null; @@ -609,35 +793,43 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl enterRule(); try { - // InternalApplicationConfiguration.g:220:2: ( (otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) ) ) - // InternalApplicationConfiguration.g:221:2: (otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) ) + // InternalApplicationConfiguration.g:250:2: ( (otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) ) ) + // InternalApplicationConfiguration.g:251:2: (otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) ) { - // InternalApplicationConfiguration.g:221:2: (otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) ) - // InternalApplicationConfiguration.g:222:3: otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) + // InternalApplicationConfiguration.g:251:2: (otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) ) + // InternalApplicationConfiguration.g:252:3: otherlv_0= 'import' otherlv_1= 'epackage' ( (otherlv_2= RULE_STRING ) ) { - otherlv_0=(Token)match(input,11,FOLLOW_5); + otherlv_0=(Token)match(input,12,FOLLOW_7); if (state.failed) return current; + if ( state.backtracking==0 ) { - newLeafNode(otherlv_0, grammarAccess.getEPackageImportAccess().getImportKeyword_0()); - - otherlv_1=(Token)match(input,12,FOLLOW_6); + newLeafNode(otherlv_0, grammarAccess.getEPackageImportAccess().getImportKeyword_0()); + + } + otherlv_1=(Token)match(input,13,FOLLOW_8); if (state.failed) return current; + if ( state.backtracking==0 ) { - newLeafNode(otherlv_1, grammarAccess.getEPackageImportAccess().getEpackageKeyword_1()); - - // InternalApplicationConfiguration.g:230:3: ( (otherlv_2= RULE_STRING ) ) - // InternalApplicationConfiguration.g:231:4: (otherlv_2= RULE_STRING ) + newLeafNode(otherlv_1, grammarAccess.getEPackageImportAccess().getEpackageKeyword_1()); + + } + // InternalApplicationConfiguration.g:260:3: ( (otherlv_2= RULE_STRING ) ) + // InternalApplicationConfiguration.g:261:4: (otherlv_2= RULE_STRING ) { - // InternalApplicationConfiguration.g:231:4: (otherlv_2= RULE_STRING ) - // InternalApplicationConfiguration.g:232:5: otherlv_2= RULE_STRING + // InternalApplicationConfiguration.g:261:4: (otherlv_2= RULE_STRING ) + // InternalApplicationConfiguration.g:262:5: otherlv_2= RULE_STRING { + if ( state.backtracking==0 ) { - if (current==null) { - current = createModelElement(grammarAccess.getEPackageImportRule()); - } - - otherlv_2=(Token)match(input,RULE_STRING,FOLLOW_2); + if (current==null) { + current = createModelElement(grammarAccess.getEPackageImportRule()); + } + + } + otherlv_2=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { - newLeafNode(otherlv_2, grammarAccess.getEPackageImportAccess().getImportedPackageEPackageCrossReference_2_0()); - + newLeafNode(otherlv_2, grammarAccess.getEPackageImportAccess().getImportedPackageEPackageCrossReference_2_0()); + + } } @@ -650,9 +842,11 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -667,7 +861,7 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR start "entryRuleViatraImport" - // InternalApplicationConfiguration.g:247:1: entryRuleViatraImport returns [EObject current=null] : iv_ruleViatraImport= ruleViatraImport EOF ; + // InternalApplicationConfiguration.g:277:1: entryRuleViatraImport returns [EObject current=null] : iv_ruleViatraImport= ruleViatraImport EOF ; public final EObject entryRuleViatraImport() throws RecognitionException { EObject current = null; @@ -675,17 +869,21 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl try { - // InternalApplicationConfiguration.g:247:53: (iv_ruleViatraImport= ruleViatraImport EOF ) - // InternalApplicationConfiguration.g:248:2: iv_ruleViatraImport= ruleViatraImport EOF + // InternalApplicationConfiguration.g:277:53: (iv_ruleViatraImport= ruleViatraImport EOF ) + // InternalApplicationConfiguration.g:278:2: iv_ruleViatraImport= ruleViatraImport EOF { - newCompositeNode(grammarAccess.getViatraImportRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getViatraImportRule()); + } pushFollow(FOLLOW_1); iv_ruleViatraImport=ruleViatraImport(); state._fsp--; - - current =iv_ruleViatraImport; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleViatraImport; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -703,7 +901,7 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR start "ruleViatraImport" - // InternalApplicationConfiguration.g:254:1: ruleViatraImport returns [EObject current=null] : (otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) ) ; + // InternalApplicationConfiguration.g:284:1: ruleViatraImport returns [EObject current=null] : (otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) ) ; public final EObject ruleViatraImport() throws RecognitionException { EObject current = null; @@ -715,35 +913,43 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl enterRule(); try { - // InternalApplicationConfiguration.g:260:2: ( (otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) ) ) - // InternalApplicationConfiguration.g:261:2: (otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) ) + // InternalApplicationConfiguration.g:290:2: ( (otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) ) ) + // InternalApplicationConfiguration.g:291:2: (otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) ) { - // InternalApplicationConfiguration.g:261:2: (otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) ) - // InternalApplicationConfiguration.g:262:3: otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) + // InternalApplicationConfiguration.g:291:2: (otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) ) + // InternalApplicationConfiguration.g:292:3: otherlv_0= 'import' otherlv_1= 'viatra' ( (otherlv_2= RULE_STRING ) ) { - otherlv_0=(Token)match(input,11,FOLLOW_7); + otherlv_0=(Token)match(input,12,FOLLOW_9); if (state.failed) return current; + if ( state.backtracking==0 ) { - newLeafNode(otherlv_0, grammarAccess.getViatraImportAccess().getImportKeyword_0()); - - otherlv_1=(Token)match(input,13,FOLLOW_6); + newLeafNode(otherlv_0, grammarAccess.getViatraImportAccess().getImportKeyword_0()); + + } + otherlv_1=(Token)match(input,14,FOLLOW_8); if (state.failed) return current; + if ( state.backtracking==0 ) { - newLeafNode(otherlv_1, grammarAccess.getViatraImportAccess().getViatraKeyword_1()); - - // InternalApplicationConfiguration.g:270:3: ( (otherlv_2= RULE_STRING ) ) - // InternalApplicationConfiguration.g:271:4: (otherlv_2= RULE_STRING ) + newLeafNode(otherlv_1, grammarAccess.getViatraImportAccess().getViatraKeyword_1()); + + } + // InternalApplicationConfiguration.g:300:3: ( (otherlv_2= RULE_STRING ) ) + // InternalApplicationConfiguration.g:301:4: (otherlv_2= RULE_STRING ) { - // InternalApplicationConfiguration.g:271:4: (otherlv_2= RULE_STRING ) - // InternalApplicationConfiguration.g:272:5: otherlv_2= RULE_STRING + // InternalApplicationConfiguration.g:301:4: (otherlv_2= RULE_STRING ) + // InternalApplicationConfiguration.g:302:5: otherlv_2= RULE_STRING { + if ( state.backtracking==0 ) { - if (current==null) { - current = createModelElement(grammarAccess.getViatraImportRule()); - } - - otherlv_2=(Token)match(input,RULE_STRING,FOLLOW_2); + if (current==null) { + current = createModelElement(grammarAccess.getViatraImportRule()); + } + + } + otherlv_2=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { - newLeafNode(otherlv_2, grammarAccess.getViatraImportAccess().getImportedViatraPatternModelCrossReference_2_0()); - + newLeafNode(otherlv_2, grammarAccess.getViatraImportAccess().getImportedViatraPatternModelCrossReference_2_0()); + + } } @@ -756,9 +962,11 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -772,26 +980,30 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl // $ANTLR end "ruleViatraImport" - // $ANTLR start "entryRuleMetamodelSpecification" - // InternalApplicationConfiguration.g:287:1: entryRuleMetamodelSpecification returns [EObject current=null] : iv_ruleMetamodelSpecification= ruleMetamodelSpecification EOF ; - public final EObject entryRuleMetamodelSpecification() throws RecognitionException { + // $ANTLR start "entryRuleDeclaration" + // InternalApplicationConfiguration.g:317:1: entryRuleDeclaration returns [EObject current=null] : iv_ruleDeclaration= ruleDeclaration EOF ; + public final EObject entryRuleDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleMetamodelSpecification = null; + EObject iv_ruleDeclaration = null; try { - // InternalApplicationConfiguration.g:287:63: (iv_ruleMetamodelSpecification= ruleMetamodelSpecification EOF ) - // InternalApplicationConfiguration.g:288:2: iv_ruleMetamodelSpecification= ruleMetamodelSpecification EOF + // InternalApplicationConfiguration.g:317:52: (iv_ruleDeclaration= ruleDeclaration EOF ) + // InternalApplicationConfiguration.g:318:2: iv_ruleDeclaration= ruleDeclaration EOF { - newCompositeNode(grammarAccess.getMetamodelSpecificationRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getDeclarationRule()); + } pushFollow(FOLLOW_1); - iv_ruleMetamodelSpecification=ruleMetamodelSpecification(); + iv_ruleDeclaration=ruleDeclaration(); state._fsp--; - - current =iv_ruleMetamodelSpecification; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -805,139 +1017,219 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "entryRuleMetamodelSpecification" + // $ANTLR end "entryRuleDeclaration" - // $ANTLR start "ruleMetamodelSpecification" - // InternalApplicationConfiguration.g:294:1: ruleMetamodelSpecification returns [EObject current=null] : (otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' ) ; - public final EObject ruleMetamodelSpecification() throws RecognitionException { + // $ANTLR start "ruleDeclaration" + // InternalApplicationConfiguration.g:324:1: ruleDeclaration returns [EObject current=null] : (this_FileDeclaration_0= ruleFileDeclaration | this_MetamodelDeclaration_1= ruleMetamodelDeclaration | this_PartialModelDeclaration_2= rulePartialModelDeclaration | this_GraphPatternDeclaration_3= ruleGraphPatternDeclaration | this_ConfigDeclaration_4= ruleConfigDeclaration | this_ScopeDeclaration_5= ruleScopeDeclaration ) ; + public final EObject ruleDeclaration() throws RecognitionException { EObject current = null; - Token otherlv_0=null; - Token otherlv_2=null; - Token otherlv_4=null; - EObject lv_entries_1_0 = null; - - EObject lv_entries_3_0 = null; + EObject this_FileDeclaration_0 = null; + EObject this_MetamodelDeclaration_1 = null; + EObject this_PartialModelDeclaration_2 = null; - enterRule(); + EObject this_GraphPatternDeclaration_3 = null; - try { - // InternalApplicationConfiguration.g:300:2: ( (otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' ) ) - // InternalApplicationConfiguration.g:301:2: (otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' ) - { - // InternalApplicationConfiguration.g:301:2: (otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' ) - // InternalApplicationConfiguration.g:302:3: otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' - { - otherlv_0=(Token)match(input,14,FOLLOW_8); + EObject this_ConfigDeclaration_4 = null; - newLeafNode(otherlv_0, grammarAccess.getMetamodelSpecificationAccess().getLeftCurlyBracketKeyword_0()); - - // InternalApplicationConfiguration.g:306:3: ( (lv_entries_1_0= ruleMetamodelEntry ) ) - // InternalApplicationConfiguration.g:307:4: (lv_entries_1_0= ruleMetamodelEntry ) - { - // InternalApplicationConfiguration.g:307:4: (lv_entries_1_0= ruleMetamodelEntry ) - // InternalApplicationConfiguration.g:308:5: lv_entries_1_0= ruleMetamodelEntry - { + EObject this_ScopeDeclaration_5 = null; - newCompositeNode(grammarAccess.getMetamodelSpecificationAccess().getEntriesMetamodelEntryParserRuleCall_1_0()); - - pushFollow(FOLLOW_9); - lv_entries_1_0=ruleMetamodelEntry(); - state._fsp--; + enterRule(); - if (current==null) { - current = createModelElementForParent(grammarAccess.getMetamodelSpecificationRule()); - } - add( - current, - "entries", - lv_entries_1_0, - "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelEntry"); - afterParserOrEnumRuleCall(); - + try { + // InternalApplicationConfiguration.g:330:2: ( (this_FileDeclaration_0= ruleFileDeclaration | this_MetamodelDeclaration_1= ruleMetamodelDeclaration | this_PartialModelDeclaration_2= rulePartialModelDeclaration | this_GraphPatternDeclaration_3= ruleGraphPatternDeclaration | this_ConfigDeclaration_4= ruleConfigDeclaration | this_ScopeDeclaration_5= ruleScopeDeclaration ) ) + // InternalApplicationConfiguration.g:331:2: (this_FileDeclaration_0= ruleFileDeclaration | this_MetamodelDeclaration_1= ruleMetamodelDeclaration | this_PartialModelDeclaration_2= rulePartialModelDeclaration | this_GraphPatternDeclaration_3= ruleGraphPatternDeclaration | this_ConfigDeclaration_4= ruleConfigDeclaration | this_ScopeDeclaration_5= ruleScopeDeclaration ) + { + // InternalApplicationConfiguration.g:331:2: (this_FileDeclaration_0= ruleFileDeclaration | this_MetamodelDeclaration_1= ruleMetamodelDeclaration | this_PartialModelDeclaration_2= rulePartialModelDeclaration | this_GraphPatternDeclaration_3= ruleGraphPatternDeclaration | this_ConfigDeclaration_4= ruleConfigDeclaration | this_ScopeDeclaration_5= ruleScopeDeclaration ) + int alt6=6; + switch ( input.LA(1) ) { + case 15: + { + alt6=1; + } + break; + case 23: + { + alt6=2; + } + break; + case 25: + { + alt6=3; + } + break; + case 26: + { + alt6=4; + } + break; + case 27: + { + alt6=5; + } + break; + case 37: + { + alt6=6; + } + break; + default: + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 6, 0, input); + throw nvae; } + switch (alt6) { + case 1 : + // InternalApplicationConfiguration.g:332:3: this_FileDeclaration_0= ruleFileDeclaration + { + if ( state.backtracking==0 ) { - } + newCompositeNode(grammarAccess.getDeclarationAccess().getFileDeclarationParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_FileDeclaration_0=ruleFileDeclaration(); - // InternalApplicationConfiguration.g:325:3: (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* - loop4: - do { - int alt4=2; - int LA4_0 = input.LA(1); + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { - if ( (LA4_0==15) ) { - alt4=1; - } + current = this_FileDeclaration_0; + afterParserOrEnumRuleCall(); + + } + } + break; + case 2 : + // InternalApplicationConfiguration.g:341:3: this_MetamodelDeclaration_1= ruleMetamodelDeclaration + { + if ( state.backtracking==0 ) { - switch (alt4) { - case 1 : - // InternalApplicationConfiguration.g:326:4: otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) - { - otherlv_2=(Token)match(input,15,FOLLOW_8); + newCompositeNode(grammarAccess.getDeclarationAccess().getMetamodelDeclarationParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_MetamodelDeclaration_1=ruleMetamodelDeclaration(); - newLeafNode(otherlv_2, grammarAccess.getMetamodelSpecificationAccess().getCommaKeyword_2_0()); - - // InternalApplicationConfiguration.g:330:4: ( (lv_entries_3_0= ruleMetamodelEntry ) ) - // InternalApplicationConfiguration.g:331:5: (lv_entries_3_0= ruleMetamodelEntry ) - { - // InternalApplicationConfiguration.g:331:5: (lv_entries_3_0= ruleMetamodelEntry ) - // InternalApplicationConfiguration.g:332:6: lv_entries_3_0= ruleMetamodelEntry - { + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { - newCompositeNode(grammarAccess.getMetamodelSpecificationAccess().getEntriesMetamodelEntryParserRuleCall_2_1_0()); - - pushFollow(FOLLOW_9); - lv_entries_3_0=ruleMetamodelEntry(); + current = this_MetamodelDeclaration_1; + afterParserOrEnumRuleCall(); + + } - state._fsp--; + } + break; + case 3 : + // InternalApplicationConfiguration.g:350:3: this_PartialModelDeclaration_2= rulePartialModelDeclaration + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getDeclarationAccess().getPartialModelDeclarationParserRuleCall_2()); + + } + pushFollow(FOLLOW_2); + this_PartialModelDeclaration_2=rulePartialModelDeclaration(); - if (current==null) { - current = createModelElementForParent(grammarAccess.getMetamodelSpecificationRule()); - } - add( - current, - "entries", - lv_entries_3_0, - "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelEntry"); - afterParserOrEnumRuleCall(); - + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { - } + current = this_PartialModelDeclaration_2; + afterParserOrEnumRuleCall(); + + } + } + break; + case 4 : + // InternalApplicationConfiguration.g:359:3: this_GraphPatternDeclaration_3= ruleGraphPatternDeclaration + { + if ( state.backtracking==0 ) { - } + newCompositeNode(grammarAccess.getDeclarationAccess().getGraphPatternDeclarationParserRuleCall_3()); + + } + pushFollow(FOLLOW_2); + this_GraphPatternDeclaration_3=ruleGraphPatternDeclaration(); + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { - } - break; + current = this_GraphPatternDeclaration_3; + afterParserOrEnumRuleCall(); + + } - default : - break loop4; - } - } while (true); + } + break; + case 5 : + // InternalApplicationConfiguration.g:368:3: this_ConfigDeclaration_4= ruleConfigDeclaration + { + if ( state.backtracking==0 ) { - otherlv_4=(Token)match(input,16,FOLLOW_2); + newCompositeNode(grammarAccess.getDeclarationAccess().getConfigDeclarationParserRuleCall_4()); + + } + pushFollow(FOLLOW_2); + this_ConfigDeclaration_4=ruleConfigDeclaration(); - newLeafNode(otherlv_4, grammarAccess.getMetamodelSpecificationAccess().getRightCurlyBracketKeyword_3()); - + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { - } + current = this_ConfigDeclaration_4; + afterParserOrEnumRuleCall(); + + } + } + break; + case 6 : + // InternalApplicationConfiguration.g:377:3: this_ScopeDeclaration_5= ruleScopeDeclaration + { + if ( state.backtracking==0 ) { - } + newCompositeNode(grammarAccess.getDeclarationAccess().getScopeDeclarationParserRuleCall_5()); + + } + pushFollow(FOLLOW_2); + this_ScopeDeclaration_5=ruleScopeDeclaration(); + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { - leaveRule(); + current = this_ScopeDeclaration_5; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + + } } catch (RecognitionException re) { @@ -948,29 +1240,33 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "ruleMetamodelSpecification" + // $ANTLR end "ruleDeclaration" - // $ANTLR start "entryRuleMetamodelEntry" - // InternalApplicationConfiguration.g:358:1: entryRuleMetamodelEntry returns [EObject current=null] : iv_ruleMetamodelEntry= ruleMetamodelEntry EOF ; - public final EObject entryRuleMetamodelEntry() throws RecognitionException { + // $ANTLR start "entryRuleFileSpecification" + // InternalApplicationConfiguration.g:389:1: entryRuleFileSpecification returns [EObject current=null] : iv_ruleFileSpecification= ruleFileSpecification EOF ; + public final EObject entryRuleFileSpecification() throws RecognitionException { EObject current = null; - EObject iv_ruleMetamodelEntry = null; + EObject iv_ruleFileSpecification = null; try { - // InternalApplicationConfiguration.g:358:55: (iv_ruleMetamodelEntry= ruleMetamodelEntry EOF ) - // InternalApplicationConfiguration.g:359:2: iv_ruleMetamodelEntry= ruleMetamodelEntry EOF + // InternalApplicationConfiguration.g:389:58: (iv_ruleFileSpecification= ruleFileSpecification EOF ) + // InternalApplicationConfiguration.g:390:2: iv_ruleFileSpecification= ruleFileSpecification EOF { - newCompositeNode(grammarAccess.getMetamodelEntryRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getFileSpecificationRule()); + } pushFollow(FOLLOW_1); - iv_ruleMetamodelEntry=ruleMetamodelEntry(); + iv_ruleFileSpecification=ruleFileSpecification(); state._fsp--; - - current =iv_ruleMetamodelEntry; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleFileSpecification; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -984,88 +1280,61 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "entryRuleMetamodelEntry" + // $ANTLR end "entryRuleFileSpecification" - // $ANTLR start "ruleMetamodelEntry" - // InternalApplicationConfiguration.g:365:1: ruleMetamodelEntry returns [EObject current=null] : (this_MetamodelElement_0= ruleMetamodelElement | this_AllPackageEntry_1= ruleAllPackageEntry ) ; - public final EObject ruleMetamodelEntry() throws RecognitionException { + // $ANTLR start "ruleFileSpecification" + // InternalApplicationConfiguration.g:396:1: ruleFileSpecification returns [EObject current=null] : ( (lv_path_0_0= RULE_STRING ) ) ; + public final EObject ruleFileSpecification() throws RecognitionException { EObject current = null; - EObject this_MetamodelElement_0 = null; - - EObject this_AllPackageEntry_1 = null; - + Token lv_path_0_0=null; enterRule(); try { - // InternalApplicationConfiguration.g:371:2: ( (this_MetamodelElement_0= ruleMetamodelElement | this_AllPackageEntry_1= ruleAllPackageEntry ) ) - // InternalApplicationConfiguration.g:372:2: (this_MetamodelElement_0= ruleMetamodelElement | this_AllPackageEntry_1= ruleAllPackageEntry ) + // InternalApplicationConfiguration.g:402:2: ( ( (lv_path_0_0= RULE_STRING ) ) ) + // InternalApplicationConfiguration.g:403:2: ( (lv_path_0_0= RULE_STRING ) ) { - // InternalApplicationConfiguration.g:372:2: (this_MetamodelElement_0= ruleMetamodelElement | this_AllPackageEntry_1= ruleAllPackageEntry ) - int alt5=2; - int LA5_0 = input.LA(1); + // InternalApplicationConfiguration.g:403:2: ( (lv_path_0_0= RULE_STRING ) ) + // InternalApplicationConfiguration.g:404:3: (lv_path_0_0= RULE_STRING ) + { + // InternalApplicationConfiguration.g:404:3: (lv_path_0_0= RULE_STRING ) + // InternalApplicationConfiguration.g:405:4: lv_path_0_0= RULE_STRING + { + lv_path_0_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { - if ( (LA5_0==RULE_ID) ) { - alt5=1; + newLeafNode(lv_path_0_0, grammarAccess.getFileSpecificationAccess().getPathSTRINGTerminalRuleCall_0()); + } - else if ( (LA5_0==17) ) { - alt5=2; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getFileSpecificationRule()); + } + setWithLastConsumed( + current, + "path", + lv_path_0_0, + "org.eclipse.xtext.common.Terminals.STRING"); + } - else { - NoViableAltException nvae = - new NoViableAltException("", 5, 0, input); - throw nvae; } - switch (alt5) { - case 1 : - // InternalApplicationConfiguration.g:373:3: this_MetamodelElement_0= ruleMetamodelElement - { - - newCompositeNode(grammarAccess.getMetamodelEntryAccess().getMetamodelElementParserRuleCall_0()); - - pushFollow(FOLLOW_2); - this_MetamodelElement_0=ruleMetamodelElement(); - - state._fsp--; - - - current = this_MetamodelElement_0; - afterParserOrEnumRuleCall(); - - - } - break; - case 2 : - // InternalApplicationConfiguration.g:382:3: this_AllPackageEntry_1= ruleAllPackageEntry - { - - newCompositeNode(grammarAccess.getMetamodelEntryAccess().getAllPackageEntryParserRuleCall_1()); - - pushFollow(FOLLOW_2); - this_AllPackageEntry_1=ruleAllPackageEntry(); - - state._fsp--; - current = this_AllPackageEntry_1; - afterParserOrEnumRuleCall(); - - - } - break; - } } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -1076,29 +1345,33 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "ruleMetamodelEntry" + // $ANTLR end "ruleFileSpecification" - // $ANTLR start "entryRuleAllPackageEntry" - // InternalApplicationConfiguration.g:394:1: entryRuleAllPackageEntry returns [EObject current=null] : iv_ruleAllPackageEntry= ruleAllPackageEntry EOF ; - public final EObject entryRuleAllPackageEntry() throws RecognitionException { + // $ANTLR start "entryRuleFileDeclaration" + // InternalApplicationConfiguration.g:424:1: entryRuleFileDeclaration returns [EObject current=null] : iv_ruleFileDeclaration= ruleFileDeclaration EOF ; + public final EObject entryRuleFileDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleAllPackageEntry = null; + EObject iv_ruleFileDeclaration = null; try { - // InternalApplicationConfiguration.g:394:56: (iv_ruleAllPackageEntry= ruleAllPackageEntry EOF ) - // InternalApplicationConfiguration.g:395:2: iv_ruleAllPackageEntry= ruleAllPackageEntry EOF + // InternalApplicationConfiguration.g:424:56: (iv_ruleFileDeclaration= ruleFileDeclaration EOF ) + // InternalApplicationConfiguration.g:425:2: iv_ruleFileDeclaration= ruleFileDeclaration EOF { - newCompositeNode(grammarAccess.getAllPackageEntryRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getFileDeclarationRule()); + } pushFollow(FOLLOW_1); - iv_ruleAllPackageEntry=ruleAllPackageEntry(); + iv_ruleFileDeclaration=ruleFileDeclaration(); state._fsp--; - - current =iv_ruleAllPackageEntry; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleFileDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -1112,176 +1385,204 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "entryRuleAllPackageEntry" + // $ANTLR end "entryRuleFileDeclaration" - // $ANTLR start "ruleAllPackageEntry" - // InternalApplicationConfiguration.g:401:1: ruleAllPackageEntry returns [EObject current=null] : (otherlv_0= 'package' ( (otherlv_1= RULE_ID ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? ) ; - public final EObject ruleAllPackageEntry() throws RecognitionException { + // $ANTLR start "ruleFileDeclaration" + // InternalApplicationConfiguration.g:431:1: ruleFileDeclaration returns [EObject current=null] : (otherlv_0= 'file' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '=' ( (lv_specification_3_0= ruleFileSpecification ) ) ) ; + public final EObject ruleFileDeclaration() throws RecognitionException { EObject current = null; Token otherlv_0=null; - Token otherlv_1=null; + Token lv_name_1_0=null; Token otherlv_2=null; - Token otherlv_3=null; - Token otherlv_5=null; - Token otherlv_7=null; - EObject lv_exclusion_4_0 = null; - - EObject lv_exclusion_6_0 = null; + EObject lv_specification_3_0 = null; enterRule(); try { - // InternalApplicationConfiguration.g:407:2: ( (otherlv_0= 'package' ( (otherlv_1= RULE_ID ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? ) ) - // InternalApplicationConfiguration.g:408:2: (otherlv_0= 'package' ( (otherlv_1= RULE_ID ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? ) + // InternalApplicationConfiguration.g:437:2: ( (otherlv_0= 'file' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '=' ( (lv_specification_3_0= ruleFileSpecification ) ) ) ) + // InternalApplicationConfiguration.g:438:2: (otherlv_0= 'file' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '=' ( (lv_specification_3_0= ruleFileSpecification ) ) ) { - // InternalApplicationConfiguration.g:408:2: (otherlv_0= 'package' ( (otherlv_1= RULE_ID ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? ) - // InternalApplicationConfiguration.g:409:3: otherlv_0= 'package' ( (otherlv_1= RULE_ID ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? + // InternalApplicationConfiguration.g:438:2: (otherlv_0= 'file' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '=' ( (lv_specification_3_0= ruleFileSpecification ) ) ) + // InternalApplicationConfiguration.g:439:3: otherlv_0= 'file' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '=' ( (lv_specification_3_0= ruleFileSpecification ) ) { - otherlv_0=(Token)match(input,17,FOLLOW_10); + otherlv_0=(Token)match(input,15,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { - newLeafNode(otherlv_0, grammarAccess.getAllPackageEntryAccess().getPackageKeyword_0()); - - // InternalApplicationConfiguration.g:413:3: ( (otherlv_1= RULE_ID ) ) - // InternalApplicationConfiguration.g:414:4: (otherlv_1= RULE_ID ) + newLeafNode(otherlv_0, grammarAccess.getFileDeclarationAccess().getFileKeyword_0()); + + } + // InternalApplicationConfiguration.g:443:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:444:4: (lv_name_1_0= RULE_ID ) { - // InternalApplicationConfiguration.g:414:4: (otherlv_1= RULE_ID ) - // InternalApplicationConfiguration.g:415:5: otherlv_1= RULE_ID + // InternalApplicationConfiguration.g:444:4: (lv_name_1_0= RULE_ID ) + // InternalApplicationConfiguration.g:445:5: lv_name_1_0= RULE_ID { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_name_1_0, grammarAccess.getFileDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getFileDeclarationRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + + } - if (current==null) { - current = createModelElement(grammarAccess.getAllPackageEntryRule()); - } - - otherlv_1=(Token)match(input,RULE_ID,FOLLOW_11); + } - newLeafNode(otherlv_1, grammarAccess.getAllPackageEntryAccess().getPackageEPackageCrossReference_1_0()); - } + otherlv_2=(Token)match(input,16,FOLLOW_8); if (state.failed) return current; + if ( state.backtracking==0 ) { + newLeafNode(otherlv_2, grammarAccess.getFileDeclarationAccess().getEqualsSignKeyword_2()); + } + // InternalApplicationConfiguration.g:465:3: ( (lv_specification_3_0= ruleFileSpecification ) ) + // InternalApplicationConfiguration.g:466:4: (lv_specification_3_0= ruleFileSpecification ) + { + // InternalApplicationConfiguration.g:466:4: (lv_specification_3_0= ruleFileSpecification ) + // InternalApplicationConfiguration.g:467:5: lv_specification_3_0= ruleFileSpecification + { + if ( state.backtracking==0 ) { - // InternalApplicationConfiguration.g:426:3: (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? - int alt7=2; - int LA7_0 = input.LA(1); + newCompositeNode(grammarAccess.getFileDeclarationAccess().getSpecificationFileSpecificationParserRuleCall_3_0()); + + } + pushFollow(FOLLOW_2); + lv_specification_3_0=ruleFileSpecification(); - if ( (LA7_0==18) ) { - alt7=1; + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getFileDeclarationRule()); + } + set( + current, + "specification", + lv_specification_3_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.FileSpecification"); + afterParserOrEnumRuleCall(); + } - switch (alt7) { - case 1 : - // InternalApplicationConfiguration.g:427:4: otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' - { - otherlv_2=(Token)match(input,18,FOLLOW_12); - newLeafNode(otherlv_2, grammarAccess.getAllPackageEntryAccess().getExcludingKeyword_2_0()); - - otherlv_3=(Token)match(input,14,FOLLOW_10); + } - newLeafNode(otherlv_3, grammarAccess.getAllPackageEntryAccess().getLeftCurlyBracketKeyword_2_1()); - - // InternalApplicationConfiguration.g:435:4: ( (lv_exclusion_4_0= ruleMetamodelElement ) ) - // InternalApplicationConfiguration.g:436:5: (lv_exclusion_4_0= ruleMetamodelElement ) - { - // InternalApplicationConfiguration.g:436:5: (lv_exclusion_4_0= ruleMetamodelElement ) - // InternalApplicationConfiguration.g:437:6: lv_exclusion_4_0= ruleMetamodelElement - { - newCompositeNode(grammarAccess.getAllPackageEntryAccess().getExclusionMetamodelElementParserRuleCall_2_2_0()); - - pushFollow(FOLLOW_9); - lv_exclusion_4_0=ruleMetamodelElement(); + } - state._fsp--; + } - if (current==null) { - current = createModelElementForParent(grammarAccess.getAllPackageEntryRule()); - } - add( - current, - "exclusion", - lv_exclusion_4_0, - "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelElement"); - afterParserOrEnumRuleCall(); - - } + } + if ( state.backtracking==0 ) { - } + leaveRule(); - // InternalApplicationConfiguration.g:454:4: (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* - loop6: - do { - int alt6=2; - int LA6_0 = input.LA(1); + } + } - if ( (LA6_0==15) ) { - alt6=1; - } + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleFileDeclaration" - switch (alt6) { - case 1 : - // InternalApplicationConfiguration.g:455:5: otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) - { - otherlv_5=(Token)match(input,15,FOLLOW_10); + // $ANTLR start "entryRuleFileReference" + // InternalApplicationConfiguration.g:488:1: entryRuleFileReference returns [EObject current=null] : iv_ruleFileReference= ruleFileReference EOF ; + public final EObject entryRuleFileReference() throws RecognitionException { + EObject current = null; - newLeafNode(otherlv_5, grammarAccess.getAllPackageEntryAccess().getCommaKeyword_2_3_0()); - - // InternalApplicationConfiguration.g:459:5: ( (lv_exclusion_6_0= ruleMetamodelElement ) ) - // InternalApplicationConfiguration.g:460:6: (lv_exclusion_6_0= ruleMetamodelElement ) - { - // InternalApplicationConfiguration.g:460:6: (lv_exclusion_6_0= ruleMetamodelElement ) - // InternalApplicationConfiguration.g:461:7: lv_exclusion_6_0= ruleMetamodelElement - { + EObject iv_ruleFileReference = null; - newCompositeNode(grammarAccess.getAllPackageEntryAccess().getExclusionMetamodelElementParserRuleCall_2_3_1_0()); - - pushFollow(FOLLOW_9); - lv_exclusion_6_0=ruleMetamodelElement(); - state._fsp--; + try { + // InternalApplicationConfiguration.g:488:54: (iv_ruleFileReference= ruleFileReference EOF ) + // InternalApplicationConfiguration.g:489:2: iv_ruleFileReference= ruleFileReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getFileReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleFileReference=ruleFileReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleFileReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + } - if (current==null) { - current = createModelElementForParent(grammarAccess.getAllPackageEntryRule()); - } - add( - current, - "exclusion", - lv_exclusion_6_0, - "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelElement"); - afterParserOrEnumRuleCall(); - + } - } + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleFileReference" - } + // $ANTLR start "ruleFileReference" + // InternalApplicationConfiguration.g:495:1: ruleFileReference returns [EObject current=null] : ( (otherlv_0= RULE_ID ) ) ; + public final EObject ruleFileReference() throws RecognitionException { + EObject current = null; + Token otherlv_0=null; - } - break; - default : - break loop6; - } - } while (true); + enterRule(); - otherlv_7=(Token)match(input,16,FOLLOW_2); + try { + // InternalApplicationConfiguration.g:501:2: ( ( (otherlv_0= RULE_ID ) ) ) + // InternalApplicationConfiguration.g:502:2: ( (otherlv_0= RULE_ID ) ) + { + // InternalApplicationConfiguration.g:502:2: ( (otherlv_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:503:3: (otherlv_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:503:3: (otherlv_0= RULE_ID ) + // InternalApplicationConfiguration.g:504:4: otherlv_0= RULE_ID + { + if ( state.backtracking==0 ) { - newLeafNode(otherlv_7, grammarAccess.getAllPackageEntryAccess().getRightCurlyBracketKeyword_2_4()); - + if (current==null) { + current = createModelElement(grammarAccess.getFileReferenceRule()); + } + + } + otherlv_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { - } - break; + newLeafNode(otherlv_0, grammarAccess.getFileReferenceAccess().getReferredFileDeclarationCrossReference_0()); + + } } @@ -1291,9 +1592,11 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -1304,29 +1607,33 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "ruleAllPackageEntry" + // $ANTLR end "ruleFileReference" - // $ANTLR start "entryRuleMetamodelElement" - // InternalApplicationConfiguration.g:488:1: entryRuleMetamodelElement returns [EObject current=null] : iv_ruleMetamodelElement= ruleMetamodelElement EOF ; - public final EObject entryRuleMetamodelElement() throws RecognitionException { + // $ANTLR start "entryRuleFile" + // InternalApplicationConfiguration.g:518:1: entryRuleFile returns [EObject current=null] : iv_ruleFile= ruleFile EOF ; + public final EObject entryRuleFile() throws RecognitionException { EObject current = null; - EObject iv_ruleMetamodelElement = null; + EObject iv_ruleFile = null; try { - // InternalApplicationConfiguration.g:488:57: (iv_ruleMetamodelElement= ruleMetamodelElement EOF ) - // InternalApplicationConfiguration.g:489:2: iv_ruleMetamodelElement= ruleMetamodelElement EOF + // InternalApplicationConfiguration.g:518:45: (iv_ruleFile= ruleFile EOF ) + // InternalApplicationConfiguration.g:519:2: iv_ruleFile= ruleFile EOF { - newCompositeNode(grammarAccess.getMetamodelElementRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getFileRule()); + } pushFollow(FOLLOW_1); - iv_ruleMetamodelElement=ruleMetamodelElement(); + iv_ruleFile=ruleFile(); state._fsp--; - - current =iv_ruleMetamodelElement; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleFile; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -1340,134 +1647,86 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "entryRuleMetamodelElement" + // $ANTLR end "entryRuleFile" - // $ANTLR start "ruleMetamodelElement" - // InternalApplicationConfiguration.g:495:1: ruleMetamodelElement returns [EObject current=null] : ( ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? ) ; - public final EObject ruleMetamodelElement() throws RecognitionException { + // $ANTLR start "ruleFile" + // InternalApplicationConfiguration.g:525:1: ruleFile returns [EObject current=null] : (this_FileSpecification_0= ruleFileSpecification | this_FileReference_1= ruleFileReference ) ; + public final EObject ruleFile() throws RecognitionException { EObject current = null; - Token otherlv_0=null; - Token otherlv_1=null; - Token otherlv_2=null; - Token otherlv_3=null; - Token otherlv_4=null; + EObject this_FileSpecification_0 = null; + + EObject this_FileReference_1 = null; + enterRule(); try { - // InternalApplicationConfiguration.g:501:2: ( ( ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? ) ) - // InternalApplicationConfiguration.g:502:2: ( ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? ) - { - // InternalApplicationConfiguration.g:502:2: ( ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? ) - // InternalApplicationConfiguration.g:503:3: ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? + // InternalApplicationConfiguration.g:531:2: ( (this_FileSpecification_0= ruleFileSpecification | this_FileReference_1= ruleFileReference ) ) + // InternalApplicationConfiguration.g:532:2: (this_FileSpecification_0= ruleFileSpecification | this_FileReference_1= ruleFileReference ) { - // InternalApplicationConfiguration.g:503:3: ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '::' )? - int alt8=2; - int LA8_0 = input.LA(1); + // InternalApplicationConfiguration.g:532:2: (this_FileSpecification_0= ruleFileSpecification | this_FileReference_1= ruleFileReference ) + int alt7=2; + int LA7_0 = input.LA(1); - if ( (LA8_0==RULE_ID) ) { - int LA8_1 = input.LA(2); + if ( (LA7_0==RULE_STRING) ) { + alt7=1; + } + else if ( (LA7_0==RULE_ID) ) { + alt7=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 7, 0, input); - if ( (LA8_1==19) ) { - alt8=1; - } + throw nvae; } - switch (alt8) { + switch (alt7) { case 1 : - // InternalApplicationConfiguration.g:504:4: ( (otherlv_0= RULE_ID ) ) otherlv_1= '::' - { - // InternalApplicationConfiguration.g:504:4: ( (otherlv_0= RULE_ID ) ) - // InternalApplicationConfiguration.g:505:5: (otherlv_0= RULE_ID ) + // InternalApplicationConfiguration.g:533:3: this_FileSpecification_0= ruleFileSpecification { - // InternalApplicationConfiguration.g:505:5: (otherlv_0= RULE_ID ) - // InternalApplicationConfiguration.g:506:6: otherlv_0= RULE_ID - { - - if (current==null) { - current = createModelElement(grammarAccess.getMetamodelElementRule()); - } - - otherlv_0=(Token)match(input,RULE_ID,FOLLOW_13); - - newLeafNode(otherlv_0, grammarAccess.getMetamodelElementAccess().getPackageEPackageCrossReference_0_0_0()); - + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getFileAccess().getFileSpecificationParserRuleCall_0()); + } + pushFollow(FOLLOW_2); + this_FileSpecification_0=ruleFileSpecification(); + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current = this_FileSpecification_0; + afterParserOrEnumRuleCall(); + } - otherlv_1=(Token)match(input,19,FOLLOW_10); - - newLeafNode(otherlv_1, grammarAccess.getMetamodelElementAccess().getColonColonKeyword_0_1()); - - } break; - - } - - // InternalApplicationConfiguration.g:522:3: ( (otherlv_2= RULE_ID ) ) - // InternalApplicationConfiguration.g:523:4: (otherlv_2= RULE_ID ) - { - // InternalApplicationConfiguration.g:523:4: (otherlv_2= RULE_ID ) - // InternalApplicationConfiguration.g:524:5: otherlv_2= RULE_ID - { - - if (current==null) { - current = createModelElement(grammarAccess.getMetamodelElementRule()); - } - - otherlv_2=(Token)match(input,RULE_ID,FOLLOW_14); - - newLeafNode(otherlv_2, grammarAccess.getMetamodelElementAccess().getClassifierEClassifierCrossReference_1_0()); - - - } - - - } - - // InternalApplicationConfiguration.g:535:3: (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? - int alt9=2; - int LA9_0 = input.LA(1); - - if ( (LA9_0==20) ) { - alt9=1; - } - switch (alt9) { - case 1 : - // InternalApplicationConfiguration.g:536:4: otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) - { - otherlv_3=(Token)match(input,20,FOLLOW_10); - - newLeafNode(otherlv_3, grammarAccess.getMetamodelElementAccess().getFullStopKeyword_2_0()); - - // InternalApplicationConfiguration.g:540:4: ( (otherlv_4= RULE_ID ) ) - // InternalApplicationConfiguration.g:541:5: (otherlv_4= RULE_ID ) - { - // InternalApplicationConfiguration.g:541:5: (otherlv_4= RULE_ID ) - // InternalApplicationConfiguration.g:542:6: otherlv_4= RULE_ID + case 2 : + // InternalApplicationConfiguration.g:542:3: this_FileReference_1= ruleFileReference { + if ( state.backtracking==0 ) { - if (current==null) { - current = createModelElement(grammarAccess.getMetamodelElementRule()); - } - - otherlv_4=(Token)match(input,RULE_ID,FOLLOW_2); - - newLeafNode(otherlv_4, grammarAccess.getMetamodelElementAccess().getFeatureENamedElementCrossReference_2_1_0()); - - + newCompositeNode(grammarAccess.getFileAccess().getFileReferenceParserRuleCall_1()); + } + pushFollow(FOLLOW_2); + this_FileReference_1=ruleFileReference(); + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current = this_FileReference_1; + afterParserOrEnumRuleCall(); + } - } break; @@ -1476,12 +1735,11 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } + if ( state.backtracking==0 ) { - } - - - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -1492,29 +1750,33 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "ruleMetamodelElement" + // $ANTLR end "ruleFile" - // $ANTLR start "entryRuleMetamodelDeclaration" - // InternalApplicationConfiguration.g:558:1: entryRuleMetamodelDeclaration returns [EObject current=null] : iv_ruleMetamodelDeclaration= ruleMetamodelDeclaration EOF ; - public final EObject entryRuleMetamodelDeclaration() throws RecognitionException { + // $ANTLR start "entryRuleMetamodelSpecification" + // InternalApplicationConfiguration.g:554:1: entryRuleMetamodelSpecification returns [EObject current=null] : iv_ruleMetamodelSpecification= ruleMetamodelSpecification EOF ; + public final EObject entryRuleMetamodelSpecification() throws RecognitionException { EObject current = null; - EObject iv_ruleMetamodelDeclaration = null; + EObject iv_ruleMetamodelSpecification = null; try { - // InternalApplicationConfiguration.g:558:61: (iv_ruleMetamodelDeclaration= ruleMetamodelDeclaration EOF ) - // InternalApplicationConfiguration.g:559:2: iv_ruleMetamodelDeclaration= ruleMetamodelDeclaration EOF + // InternalApplicationConfiguration.g:554:63: (iv_ruleMetamodelSpecification= ruleMetamodelSpecification EOF ) + // InternalApplicationConfiguration.g:555:2: iv_ruleMetamodelSpecification= ruleMetamodelSpecification EOF { - newCompositeNode(grammarAccess.getMetamodelDeclarationRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getMetamodelSpecificationRule()); + } pushFollow(FOLLOW_1); - iv_ruleMetamodelDeclaration=ruleMetamodelDeclaration(); + iv_ruleMetamodelSpecification=ruleMetamodelSpecification(); state._fsp--; - - current =iv_ruleMetamodelDeclaration; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleMetamodelSpecification; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -1528,99 +1790,298 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "entryRuleMetamodelDeclaration" + // $ANTLR end "entryRuleMetamodelSpecification" - // $ANTLR start "ruleMetamodelDeclaration" - // InternalApplicationConfiguration.g:565:1: ruleMetamodelDeclaration returns [EObject current=null] : (otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) ) ; - public final EObject ruleMetamodelDeclaration() throws RecognitionException { + // $ANTLR start "ruleMetamodelSpecification" + // InternalApplicationConfiguration.g:561:1: ruleMetamodelSpecification returns [EObject current=null] : (otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' ) ; + public final EObject ruleMetamodelSpecification() throws RecognitionException { EObject current = null; Token otherlv_0=null; - Token lv_name_1_0=null; - EObject lv_specification_2_0 = null; + Token otherlv_2=null; + Token otherlv_4=null; + EObject lv_entries_1_0 = null; + + EObject lv_entries_3_0 = null; enterRule(); try { - // InternalApplicationConfiguration.g:571:2: ( (otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) ) ) - // InternalApplicationConfiguration.g:572:2: (otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) ) + // InternalApplicationConfiguration.g:567:2: ( (otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' ) ) + // InternalApplicationConfiguration.g:568:2: (otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' ) { - // InternalApplicationConfiguration.g:572:2: (otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) ) - // InternalApplicationConfiguration.g:573:3: otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) + // InternalApplicationConfiguration.g:568:2: (otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' ) + // InternalApplicationConfiguration.g:569:3: otherlv_0= '{' ( (lv_entries_1_0= ruleMetamodelEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* otherlv_4= '}' { - otherlv_0=(Token)match(input,21,FOLLOW_10); + otherlv_0=(Token)match(input,17,FOLLOW_11); if (state.failed) return current; + if ( state.backtracking==0 ) { - newLeafNode(otherlv_0, grammarAccess.getMetamodelDeclarationAccess().getMetamodelKeyword_0()); - - // InternalApplicationConfiguration.g:577:3: ( (lv_name_1_0= RULE_ID ) ) - // InternalApplicationConfiguration.g:578:4: (lv_name_1_0= RULE_ID ) + newLeafNode(otherlv_0, grammarAccess.getMetamodelSpecificationAccess().getLeftCurlyBracketKeyword_0()); + + } + // InternalApplicationConfiguration.g:573:3: ( (lv_entries_1_0= ruleMetamodelEntry ) ) + // InternalApplicationConfiguration.g:574:4: (lv_entries_1_0= ruleMetamodelEntry ) { - // InternalApplicationConfiguration.g:578:4: (lv_name_1_0= RULE_ID ) - // InternalApplicationConfiguration.g:579:5: lv_name_1_0= RULE_ID + // InternalApplicationConfiguration.g:574:4: (lv_entries_1_0= ruleMetamodelEntry ) + // InternalApplicationConfiguration.g:575:5: lv_entries_1_0= ruleMetamodelEntry { - lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_12); + if ( state.backtracking==0 ) { - newLeafNode(lv_name_1_0, grammarAccess.getMetamodelDeclarationAccess().getNameIDTerminalRuleCall_1_0()); - + newCompositeNode(grammarAccess.getMetamodelSpecificationAccess().getEntriesMetamodelEntryParserRuleCall_1_0()); + + } + pushFollow(FOLLOW_12); + lv_entries_1_0=ruleMetamodelEntry(); - if (current==null) { - current = createModelElement(grammarAccess.getMetamodelDeclarationRule()); - } - setWithLastConsumed( - current, - "name", - lv_name_1_0, - "org.eclipse.xtext.common.Terminals.ID"); - + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getMetamodelSpecificationRule()); + } + add( + current, + "entries", + lv_entries_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelEntry"); + afterParserOrEnumRuleCall(); + + } } } - // InternalApplicationConfiguration.g:595:3: ( (lv_specification_2_0= ruleMetamodelSpecification ) ) - // InternalApplicationConfiguration.g:596:4: (lv_specification_2_0= ruleMetamodelSpecification ) - { - // InternalApplicationConfiguration.g:596:4: (lv_specification_2_0= ruleMetamodelSpecification ) - // InternalApplicationConfiguration.g:597:5: lv_specification_2_0= ruleMetamodelSpecification - { + // InternalApplicationConfiguration.g:592:3: (otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) )* + loop8: + do { + int alt8=2; + int LA8_0 = input.LA(1); + + if ( (LA8_0==18) ) { + alt8=1; + } + + + switch (alt8) { + case 1 : + // InternalApplicationConfiguration.g:593:4: otherlv_2= ',' ( (lv_entries_3_0= ruleMetamodelEntry ) ) + { + otherlv_2=(Token)match(input,18,FOLLOW_11); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getMetamodelSpecificationAccess().getCommaKeyword_2_0()); + + } + // InternalApplicationConfiguration.g:597:4: ( (lv_entries_3_0= ruleMetamodelEntry ) ) + // InternalApplicationConfiguration.g:598:5: (lv_entries_3_0= ruleMetamodelEntry ) + { + // InternalApplicationConfiguration.g:598:5: (lv_entries_3_0= ruleMetamodelEntry ) + // InternalApplicationConfiguration.g:599:6: lv_entries_3_0= ruleMetamodelEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getMetamodelSpecificationAccess().getEntriesMetamodelEntryParserRuleCall_2_1_0()); + + } + pushFollow(FOLLOW_12); + lv_entries_3_0=ruleMetamodelEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getMetamodelSpecificationRule()); + } + add( + current, + "entries", + lv_entries_3_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelEntry"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop8; + } + } while (true); + + otherlv_4=(Token)match(input,19,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getMetamodelSpecificationAccess().getRightCurlyBracketKeyword_3()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleMetamodelSpecification" - newCompositeNode(grammarAccess.getMetamodelDeclarationAccess().getSpecificationMetamodelSpecificationParserRuleCall_2_0()); - - pushFollow(FOLLOW_2); - lv_specification_2_0=ruleMetamodelSpecification(); + + // $ANTLR start "entryRuleMetamodelEntry" + // InternalApplicationConfiguration.g:625:1: entryRuleMetamodelEntry returns [EObject current=null] : iv_ruleMetamodelEntry= ruleMetamodelEntry EOF ; + public final EObject entryRuleMetamodelEntry() throws RecognitionException { + EObject current = null; + + EObject iv_ruleMetamodelEntry = null; + + + try { + // InternalApplicationConfiguration.g:625:55: (iv_ruleMetamodelEntry= ruleMetamodelEntry EOF ) + // InternalApplicationConfiguration.g:626:2: iv_ruleMetamodelEntry= ruleMetamodelEntry EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getMetamodelEntryRule()); + } + pushFollow(FOLLOW_1); + iv_ruleMetamodelEntry=ruleMetamodelEntry(); state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleMetamodelEntry; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + } - if (current==null) { - current = createModelElementForParent(grammarAccess.getMetamodelDeclarationRule()); - } - set( - current, - "specification", - lv_specification_2_0, - "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelSpecification"); - afterParserOrEnumRuleCall(); - + } + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); } + finally { + } + return current; + } + // $ANTLR end "entryRuleMetamodelEntry" + + + // $ANTLR start "ruleMetamodelEntry" + // InternalApplicationConfiguration.g:632:1: ruleMetamodelEntry returns [EObject current=null] : (this_MetamodelElement_0= ruleMetamodelElement | this_AllPackageEntry_1= ruleAllPackageEntry ) ; + public final EObject ruleMetamodelEntry() throws RecognitionException { + EObject current = null; + + EObject this_MetamodelElement_0 = null; + + EObject this_AllPackageEntry_1 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:638:2: ( (this_MetamodelElement_0= ruleMetamodelElement | this_AllPackageEntry_1= ruleAllPackageEntry ) ) + // InternalApplicationConfiguration.g:639:2: (this_MetamodelElement_0= ruleMetamodelElement | this_AllPackageEntry_1= ruleAllPackageEntry ) + { + // InternalApplicationConfiguration.g:639:2: (this_MetamodelElement_0= ruleMetamodelElement | this_AllPackageEntry_1= ruleAllPackageEntry ) + int alt9=2; + int LA9_0 = input.LA(1); + if ( (LA9_0==RULE_ID) ) { + alt9=1; + } + else if ( (LA9_0==20) ) { + alt9=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 9, 0, input); + throw nvae; } + switch (alt9) { + case 1 : + // InternalApplicationConfiguration.g:640:3: this_MetamodelElement_0= ruleMetamodelElement + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getMetamodelEntryAccess().getMetamodelElementParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_MetamodelElement_0=ruleMetamodelElement(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_MetamodelElement_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:649:3: this_AllPackageEntry_1= ruleAllPackageEntry + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getMetamodelEntryAccess().getAllPackageEntryParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_AllPackageEntry_1=ruleAllPackageEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_AllPackageEntry_1; + afterParserOrEnumRuleCall(); + + } + + } + break; } } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -1631,29 +2092,33 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "ruleMetamodelDeclaration" + // $ANTLR end "ruleMetamodelEntry" - // $ANTLR start "entryRuleMetamodelReference" - // InternalApplicationConfiguration.g:618:1: entryRuleMetamodelReference returns [EObject current=null] : iv_ruleMetamodelReference= ruleMetamodelReference EOF ; - public final EObject entryRuleMetamodelReference() throws RecognitionException { + // $ANTLR start "entryRuleAllPackageEntry" + // InternalApplicationConfiguration.g:661:1: entryRuleAllPackageEntry returns [EObject current=null] : iv_ruleAllPackageEntry= ruleAllPackageEntry EOF ; + public final EObject entryRuleAllPackageEntry() throws RecognitionException { EObject current = null; - EObject iv_ruleMetamodelReference = null; + EObject iv_ruleAllPackageEntry = null; try { - // InternalApplicationConfiguration.g:618:59: (iv_ruleMetamodelReference= ruleMetamodelReference EOF ) - // InternalApplicationConfiguration.g:619:2: iv_ruleMetamodelReference= ruleMetamodelReference EOF + // InternalApplicationConfiguration.g:661:56: (iv_ruleAllPackageEntry= ruleAllPackageEntry EOF ) + // InternalApplicationConfiguration.g:662:2: iv_ruleAllPackageEntry= ruleAllPackageEntry EOF { - newCompositeNode(grammarAccess.getMetamodelReferenceRule()); + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getAllPackageEntryRule()); + } pushFollow(FOLLOW_1); - iv_ruleMetamodelReference=ruleMetamodelReference(); + iv_ruleAllPackageEntry=ruleAllPackageEntry(); state._fsp--; - - current =iv_ruleMetamodelReference; - match(input,EOF,FOLLOW_2); + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleAllPackageEntry; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; } @@ -1667,38 +2132,206 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "entryRuleMetamodelReference" + // $ANTLR end "entryRuleAllPackageEntry" - // $ANTLR start "ruleMetamodelReference" - // InternalApplicationConfiguration.g:625:1: ruleMetamodelReference returns [EObject current=null] : ( (otherlv_0= RULE_ID ) ) ; - public final EObject ruleMetamodelReference() throws RecognitionException { + // $ANTLR start "ruleAllPackageEntry" + // InternalApplicationConfiguration.g:668:1: ruleAllPackageEntry returns [EObject current=null] : (otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? ) ; + public final EObject ruleAllPackageEntry() throws RecognitionException { EObject current = null; Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_3=null; + Token otherlv_5=null; + Token otherlv_7=null; + EObject lv_exclusion_4_0 = null; + + EObject lv_exclusion_6_0 = null; + enterRule(); try { - // InternalApplicationConfiguration.g:631:2: ( ( (otherlv_0= RULE_ID ) ) ) - // InternalApplicationConfiguration.g:632:2: ( (otherlv_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:674:2: ( (otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? ) ) + // InternalApplicationConfiguration.g:675:2: (otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? ) { - // InternalApplicationConfiguration.g:632:2: ( (otherlv_0= RULE_ID ) ) - // InternalApplicationConfiguration.g:633:3: (otherlv_0= RULE_ID ) + // InternalApplicationConfiguration.g:675:2: (otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? ) + // InternalApplicationConfiguration.g:676:3: otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? + { + otherlv_0=(Token)match(input,20,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getAllPackageEntryAccess().getPackageKeyword_0()); + + } + // InternalApplicationConfiguration.g:680:3: ( ( ruleQualifiedName ) ) + // InternalApplicationConfiguration.g:681:4: ( ruleQualifiedName ) { - // InternalApplicationConfiguration.g:633:3: (otherlv_0= RULE_ID ) - // InternalApplicationConfiguration.g:634:4: otherlv_0= RULE_ID + // InternalApplicationConfiguration.g:681:4: ( ruleQualifiedName ) + // InternalApplicationConfiguration.g:682:5: ruleQualifiedName { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getAllPackageEntryRule()); + } + + } + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getAllPackageEntryAccess().getPackageEPackageCrossReference_1_0()); + + } + pushFollow(FOLLOW_13); + ruleQualifiedName(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:696:3: (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' )? + int alt11=2; + int LA11_0 = input.LA(1); + + if ( (LA11_0==21) ) { + alt11=1; + } + switch (alt11) { + case 1 : + // InternalApplicationConfiguration.g:697:4: otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleMetamodelElement ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* otherlv_7= '}' + { + otherlv_2=(Token)match(input,21,FOLLOW_14); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getAllPackageEntryAccess().getExcludingKeyword_2_0()); + + } + otherlv_3=(Token)match(input,17,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getAllPackageEntryAccess().getLeftCurlyBracketKeyword_2_1()); + + } + // InternalApplicationConfiguration.g:705:4: ( (lv_exclusion_4_0= ruleMetamodelElement ) ) + // InternalApplicationConfiguration.g:706:5: (lv_exclusion_4_0= ruleMetamodelElement ) + { + // InternalApplicationConfiguration.g:706:5: (lv_exclusion_4_0= ruleMetamodelElement ) + // InternalApplicationConfiguration.g:707:6: lv_exclusion_4_0= ruleMetamodelElement + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getAllPackageEntryAccess().getExclusionMetamodelElementParserRuleCall_2_2_0()); + + } + pushFollow(FOLLOW_12); + lv_exclusion_4_0=ruleMetamodelElement(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAllPackageEntryRule()); + } + add( + current, + "exclusion", + lv_exclusion_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelElement"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:724:4: (otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) )* + loop10: + do { + int alt10=2; + int LA10_0 = input.LA(1); + + if ( (LA10_0==18) ) { + alt10=1; + } + + + switch (alt10) { + case 1 : + // InternalApplicationConfiguration.g:725:5: otherlv_5= ',' ( (lv_exclusion_6_0= ruleMetamodelElement ) ) + { + otherlv_5=(Token)match(input,18,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getAllPackageEntryAccess().getCommaKeyword_2_3_0()); + + } + // InternalApplicationConfiguration.g:729:5: ( (lv_exclusion_6_0= ruleMetamodelElement ) ) + // InternalApplicationConfiguration.g:730:6: (lv_exclusion_6_0= ruleMetamodelElement ) + { + // InternalApplicationConfiguration.g:730:6: (lv_exclusion_6_0= ruleMetamodelElement ) + // InternalApplicationConfiguration.g:731:7: lv_exclusion_6_0= ruleMetamodelElement + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getAllPackageEntryAccess().getExclusionMetamodelElementParserRuleCall_2_3_1_0()); + + } + pushFollow(FOLLOW_12); + lv_exclusion_6_0=ruleMetamodelElement(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAllPackageEntryRule()); + } + add( + current, + "exclusion", + lv_exclusion_6_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelElement"); + afterParserOrEnumRuleCall(); + + } + + } - if (current==null) { - current = createModelElement(grammarAccess.getMetamodelReferenceRule()); - } - - otherlv_0=(Token)match(input,RULE_ID,FOLLOW_2); - newLeafNode(otherlv_0, grammarAccess.getMetamodelReferenceAccess().getReferredMetamodelDeclarationCrossReference_0()); - + } + + + } + break; + + default : + break loop10; + } + } while (true); + + otherlv_7=(Token)match(input,19,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_7, grammarAccess.getAllPackageEntryAccess().getRightCurlyBracketKeyword_2_4()); + + } + + } + break; } @@ -1708,9 +2341,11 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } + if ( state.backtracking==0 ) { - leaveRule(); + leaveRule(); + } } catch (RecognitionException re) { @@ -1721,26 +2356,7077 @@ public class InternalApplicationConfigurationParser extends AbstractInternalAntl } return current; } - // $ANTLR end "ruleMetamodelReference" + // $ANTLR end "ruleAllPackageEntry" + + + // $ANTLR start "entryRuleMetamodelElement" + // InternalApplicationConfiguration.g:758:1: entryRuleMetamodelElement returns [EObject current=null] : iv_ruleMetamodelElement= ruleMetamodelElement EOF ; + public final EObject entryRuleMetamodelElement() throws RecognitionException { + EObject current = null; + + EObject iv_ruleMetamodelElement = null; - // Delegated rules + try { + // InternalApplicationConfiguration.g:758:57: (iv_ruleMetamodelElement= ruleMetamodelElement EOF ) + // InternalApplicationConfiguration.g:759:2: iv_ruleMetamodelElement= ruleMetamodelElement EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getMetamodelElementRule()); + } + pushFollow(FOLLOW_1); + iv_ruleMetamodelElement=ruleMetamodelElement(); + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleMetamodelElement; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleMetamodelElement" + + + // $ANTLR start "ruleMetamodelElement" + // InternalApplicationConfiguration.g:765:1: ruleMetamodelElement returns [EObject current=null] : ( ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? ) ; + public final EObject ruleMetamodelElement() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_2=null; + Token otherlv_3=null; + Token otherlv_4=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:771:2: ( ( ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? ) ) + // InternalApplicationConfiguration.g:772:2: ( ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? ) + { + // InternalApplicationConfiguration.g:772:2: ( ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? ) + // InternalApplicationConfiguration.g:773:3: ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? + { + // InternalApplicationConfiguration.g:773:3: ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? + int alt12=2; + int LA12_0 = input.LA(1); + + if ( (LA12_0==RULE_ID) ) { + int LA12_1 = input.LA(2); + + if ( (LA12_1==11) ) { + int LA12_2 = input.LA(3); + + if ( (LA12_2==RULE_ID) ) { + int LA12_5 = input.LA(4); + + if ( (LA12_5==11||LA12_5==22) ) { + alt12=1; + } + } + } + else if ( (LA12_1==22) ) { + alt12=1; + } + } + switch (alt12) { + case 1 : + // InternalApplicationConfiguration.g:774:4: ( ( ruleQualifiedName ) ) otherlv_1= '::' + { + // InternalApplicationConfiguration.g:774:4: ( ( ruleQualifiedName ) ) + // InternalApplicationConfiguration.g:775:5: ( ruleQualifiedName ) + { + // InternalApplicationConfiguration.g:775:5: ( ruleQualifiedName ) + // InternalApplicationConfiguration.g:776:6: ruleQualifiedName + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getMetamodelElementRule()); + } + + } + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getMetamodelElementAccess().getPackageEPackageCrossReference_0_0_0()); + + } + pushFollow(FOLLOW_15); + ruleQualifiedName(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_1=(Token)match(input,22,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getMetamodelElementAccess().getColonColonKeyword_0_1()); + + } + + } + break; + + } + + // InternalApplicationConfiguration.g:795:3: ( (otherlv_2= RULE_ID ) ) + // InternalApplicationConfiguration.g:796:4: (otherlv_2= RULE_ID ) + { + // InternalApplicationConfiguration.g:796:4: (otherlv_2= RULE_ID ) + // InternalApplicationConfiguration.g:797:5: otherlv_2= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getMetamodelElementRule()); + } + + } + otherlv_2=(Token)match(input,RULE_ID,FOLLOW_5); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getMetamodelElementAccess().getClassifierEClassifierCrossReference_1_0()); + + } + + } + + + } + + // InternalApplicationConfiguration.g:808:3: (otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) )? + int alt13=2; + int LA13_0 = input.LA(1); + + if ( (LA13_0==11) ) { + alt13=1; + } + switch (alt13) { + case 1 : + // InternalApplicationConfiguration.g:809:4: otherlv_3= '.' ( (otherlv_4= RULE_ID ) ) + { + otherlv_3=(Token)match(input,11,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getMetamodelElementAccess().getFullStopKeyword_2_0()); + + } + // InternalApplicationConfiguration.g:813:4: ( (otherlv_4= RULE_ID ) ) + // InternalApplicationConfiguration.g:814:5: (otherlv_4= RULE_ID ) + { + // InternalApplicationConfiguration.g:814:5: (otherlv_4= RULE_ID ) + // InternalApplicationConfiguration.g:815:6: otherlv_4= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getMetamodelElementRule()); + } + + } + otherlv_4=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getMetamodelElementAccess().getFeatureENamedElementCrossReference_2_1_0()); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleMetamodelElement" + + + // $ANTLR start "entryRuleMetamodelDeclaration" + // InternalApplicationConfiguration.g:831:1: entryRuleMetamodelDeclaration returns [EObject current=null] : iv_ruleMetamodelDeclaration= ruleMetamodelDeclaration EOF ; + public final EObject entryRuleMetamodelDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleMetamodelDeclaration = null; + + + try { + // InternalApplicationConfiguration.g:831:61: (iv_ruleMetamodelDeclaration= ruleMetamodelDeclaration EOF ) + // InternalApplicationConfiguration.g:832:2: iv_ruleMetamodelDeclaration= ruleMetamodelDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getMetamodelDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleMetamodelDeclaration=ruleMetamodelDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleMetamodelDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleMetamodelDeclaration" + + + // $ANTLR start "ruleMetamodelDeclaration" + // InternalApplicationConfiguration.g:838:1: ruleMetamodelDeclaration returns [EObject current=null] : (otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) ) ; + public final EObject ruleMetamodelDeclaration() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_name_1_0=null; + EObject lv_specification_2_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:844:2: ( (otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) ) ) + // InternalApplicationConfiguration.g:845:2: (otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) ) + { + // InternalApplicationConfiguration.g:845:2: (otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) ) + // InternalApplicationConfiguration.g:846:3: otherlv_0= 'metamodel' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleMetamodelSpecification ) ) + { + otherlv_0=(Token)match(input,23,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getMetamodelDeclarationAccess().getMetamodelKeyword_0()); + + } + // InternalApplicationConfiguration.g:850:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:851:4: (lv_name_1_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:851:4: (lv_name_1_0= RULE_ID ) + // InternalApplicationConfiguration.g:852:5: lv_name_1_0= RULE_ID + { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_14); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_name_1_0, grammarAccess.getMetamodelDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getMetamodelDeclarationRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + + } + + } + + + } + + // InternalApplicationConfiguration.g:868:3: ( (lv_specification_2_0= ruleMetamodelSpecification ) ) + // InternalApplicationConfiguration.g:869:4: (lv_specification_2_0= ruleMetamodelSpecification ) + { + // InternalApplicationConfiguration.g:869:4: (lv_specification_2_0= ruleMetamodelSpecification ) + // InternalApplicationConfiguration.g:870:5: lv_specification_2_0= ruleMetamodelSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getMetamodelDeclarationAccess().getSpecificationMetamodelSpecificationParserRuleCall_2_0()); + + } + pushFollow(FOLLOW_2); + lv_specification_2_0=ruleMetamodelSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getMetamodelDeclarationRule()); + } + set( + current, + "specification", + lv_specification_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelSpecification"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleMetamodelDeclaration" + + + // $ANTLR start "entryRuleMetamodelReference" + // InternalApplicationConfiguration.g:891:1: entryRuleMetamodelReference returns [EObject current=null] : iv_ruleMetamodelReference= ruleMetamodelReference EOF ; + public final EObject entryRuleMetamodelReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleMetamodelReference = null; + + + try { + // InternalApplicationConfiguration.g:891:59: (iv_ruleMetamodelReference= ruleMetamodelReference EOF ) + // InternalApplicationConfiguration.g:892:2: iv_ruleMetamodelReference= ruleMetamodelReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getMetamodelReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleMetamodelReference=ruleMetamodelReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleMetamodelReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleMetamodelReference" + + + // $ANTLR start "ruleMetamodelReference" + // InternalApplicationConfiguration.g:898:1: ruleMetamodelReference returns [EObject current=null] : ( (otherlv_0= RULE_ID ) ) ; + public final EObject ruleMetamodelReference() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:904:2: ( ( (otherlv_0= RULE_ID ) ) ) + // InternalApplicationConfiguration.g:905:2: ( (otherlv_0= RULE_ID ) ) + { + // InternalApplicationConfiguration.g:905:2: ( (otherlv_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:906:3: (otherlv_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:906:3: (otherlv_0= RULE_ID ) + // InternalApplicationConfiguration.g:907:4: otherlv_0= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getMetamodelReferenceRule()); + } + + } + otherlv_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getMetamodelReferenceAccess().getReferredMetamodelDeclarationCrossReference_0()); + + } + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleMetamodelReference" + + + // $ANTLR start "entryRuleMetamodel" + // InternalApplicationConfiguration.g:921:1: entryRuleMetamodel returns [EObject current=null] : iv_ruleMetamodel= ruleMetamodel EOF ; + public final EObject entryRuleMetamodel() throws RecognitionException { + EObject current = null; + + EObject iv_ruleMetamodel = null; + + + try { + // InternalApplicationConfiguration.g:921:50: (iv_ruleMetamodel= ruleMetamodel EOF ) + // InternalApplicationConfiguration.g:922:2: iv_ruleMetamodel= ruleMetamodel EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getMetamodelRule()); + } + pushFollow(FOLLOW_1); + iv_ruleMetamodel=ruleMetamodel(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleMetamodel; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleMetamodel" + + + // $ANTLR start "ruleMetamodel" + // InternalApplicationConfiguration.g:928:1: ruleMetamodel returns [EObject current=null] : (this_MetamodelReference_0= ruleMetamodelReference | this_MetamodelSpecification_1= ruleMetamodelSpecification ) ; + public final EObject ruleMetamodel() throws RecognitionException { + EObject current = null; + + EObject this_MetamodelReference_0 = null; + + EObject this_MetamodelSpecification_1 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:934:2: ( (this_MetamodelReference_0= ruleMetamodelReference | this_MetamodelSpecification_1= ruleMetamodelSpecification ) ) + // InternalApplicationConfiguration.g:935:2: (this_MetamodelReference_0= ruleMetamodelReference | this_MetamodelSpecification_1= ruleMetamodelSpecification ) + { + // InternalApplicationConfiguration.g:935:2: (this_MetamodelReference_0= ruleMetamodelReference | this_MetamodelSpecification_1= ruleMetamodelSpecification ) + int alt14=2; + int LA14_0 = input.LA(1); + + if ( (LA14_0==RULE_ID) ) { + alt14=1; + } + else if ( (LA14_0==17) ) { + alt14=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 14, 0, input); + + throw nvae; + } + switch (alt14) { + case 1 : + // InternalApplicationConfiguration.g:936:3: this_MetamodelReference_0= ruleMetamodelReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getMetamodelAccess().getMetamodelReferenceParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_MetamodelReference_0=ruleMetamodelReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_MetamodelReference_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:945:3: this_MetamodelSpecification_1= ruleMetamodelSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getMetamodelAccess().getMetamodelSpecificationParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_MetamodelSpecification_1=ruleMetamodelSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_MetamodelSpecification_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleMetamodel" + + + // $ANTLR start "entryRulePartialModelSpecification" + // InternalApplicationConfiguration.g:957:1: entryRulePartialModelSpecification returns [EObject current=null] : iv_rulePartialModelSpecification= rulePartialModelSpecification EOF ; + public final EObject entryRulePartialModelSpecification() throws RecognitionException { + EObject current = null; + + EObject iv_rulePartialModelSpecification = null; + + + try { + // InternalApplicationConfiguration.g:957:66: (iv_rulePartialModelSpecification= rulePartialModelSpecification EOF ) + // InternalApplicationConfiguration.g:958:2: iv_rulePartialModelSpecification= rulePartialModelSpecification EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getPartialModelSpecificationRule()); + } + pushFollow(FOLLOW_1); + iv_rulePartialModelSpecification=rulePartialModelSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_rulePartialModelSpecification; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePartialModelSpecification" + + + // $ANTLR start "rulePartialModelSpecification" + // InternalApplicationConfiguration.g:964:1: rulePartialModelSpecification returns [EObject current=null] : (otherlv_0= '{' ( (lv_entry_1_0= rulePartialModelEntry ) ) (otherlv_2= ',' ( (lv_entry_3_0= rulePartialModelEntry ) ) )? otherlv_4= '}' ) ; + public final EObject rulePartialModelSpecification() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + EObject lv_entry_1_0 = null; + + EObject lv_entry_3_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:970:2: ( (otherlv_0= '{' ( (lv_entry_1_0= rulePartialModelEntry ) ) (otherlv_2= ',' ( (lv_entry_3_0= rulePartialModelEntry ) ) )? otherlv_4= '}' ) ) + // InternalApplicationConfiguration.g:971:2: (otherlv_0= '{' ( (lv_entry_1_0= rulePartialModelEntry ) ) (otherlv_2= ',' ( (lv_entry_3_0= rulePartialModelEntry ) ) )? otherlv_4= '}' ) + { + // InternalApplicationConfiguration.g:971:2: (otherlv_0= '{' ( (lv_entry_1_0= rulePartialModelEntry ) ) (otherlv_2= ',' ( (lv_entry_3_0= rulePartialModelEntry ) ) )? otherlv_4= '}' ) + // InternalApplicationConfiguration.g:972:3: otherlv_0= '{' ( (lv_entry_1_0= rulePartialModelEntry ) ) (otherlv_2= ',' ( (lv_entry_3_0= rulePartialModelEntry ) ) )? otherlv_4= '}' + { + otherlv_0=(Token)match(input,17,FOLLOW_16); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getPartialModelSpecificationAccess().getLeftCurlyBracketKeyword_0()); + + } + // InternalApplicationConfiguration.g:976:3: ( (lv_entry_1_0= rulePartialModelEntry ) ) + // InternalApplicationConfiguration.g:977:4: (lv_entry_1_0= rulePartialModelEntry ) + { + // InternalApplicationConfiguration.g:977:4: (lv_entry_1_0= rulePartialModelEntry ) + // InternalApplicationConfiguration.g:978:5: lv_entry_1_0= rulePartialModelEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPartialModelSpecificationAccess().getEntryPartialModelEntryParserRuleCall_1_0()); + + } + pushFollow(FOLLOW_12); + lv_entry_1_0=rulePartialModelEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPartialModelSpecificationRule()); + } + add( + current, + "entry", + lv_entry_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PartialModelEntry"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:995:3: (otherlv_2= ',' ( (lv_entry_3_0= rulePartialModelEntry ) ) )? + int alt15=2; + int LA15_0 = input.LA(1); + + if ( (LA15_0==18) ) { + alt15=1; + } + switch (alt15) { + case 1 : + // InternalApplicationConfiguration.g:996:4: otherlv_2= ',' ( (lv_entry_3_0= rulePartialModelEntry ) ) + { + otherlv_2=(Token)match(input,18,FOLLOW_16); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getPartialModelSpecificationAccess().getCommaKeyword_2_0()); + + } + // InternalApplicationConfiguration.g:1000:4: ( (lv_entry_3_0= rulePartialModelEntry ) ) + // InternalApplicationConfiguration.g:1001:5: (lv_entry_3_0= rulePartialModelEntry ) + { + // InternalApplicationConfiguration.g:1001:5: (lv_entry_3_0= rulePartialModelEntry ) + // InternalApplicationConfiguration.g:1002:6: lv_entry_3_0= rulePartialModelEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPartialModelSpecificationAccess().getEntryPartialModelEntryParserRuleCall_2_1_0()); + + } + pushFollow(FOLLOW_17); + lv_entry_3_0=rulePartialModelEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPartialModelSpecificationRule()); + } + add( + current, + "entry", + lv_entry_3_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PartialModelEntry"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + otherlv_4=(Token)match(input,19,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getPartialModelSpecificationAccess().getRightCurlyBracketKeyword_3()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePartialModelSpecification" + + + // $ANTLR start "entryRulePartialModelEntry" + // InternalApplicationConfiguration.g:1028:1: entryRulePartialModelEntry returns [EObject current=null] : iv_rulePartialModelEntry= rulePartialModelEntry EOF ; + public final EObject entryRulePartialModelEntry() throws RecognitionException { + EObject current = null; + + EObject iv_rulePartialModelEntry = null; + + + try { + // InternalApplicationConfiguration.g:1028:58: (iv_rulePartialModelEntry= rulePartialModelEntry EOF ) + // InternalApplicationConfiguration.g:1029:2: iv_rulePartialModelEntry= rulePartialModelEntry EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getPartialModelEntryRule()); + } + pushFollow(FOLLOW_1); + iv_rulePartialModelEntry=rulePartialModelEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_rulePartialModelEntry; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePartialModelEntry" + + + // $ANTLR start "rulePartialModelEntry" + // InternalApplicationConfiguration.g:1035:1: rulePartialModelEntry returns [EObject current=null] : (this_ModelEntry_0= ruleModelEntry | this_FolderEntry_1= ruleFolderEntry ) ; + public final EObject rulePartialModelEntry() throws RecognitionException { + EObject current = null; + + EObject this_ModelEntry_0 = null; + + EObject this_FolderEntry_1 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1041:2: ( (this_ModelEntry_0= ruleModelEntry | this_FolderEntry_1= ruleFolderEntry ) ) + // InternalApplicationConfiguration.g:1042:2: (this_ModelEntry_0= ruleModelEntry | this_FolderEntry_1= ruleFolderEntry ) + { + // InternalApplicationConfiguration.g:1042:2: (this_ModelEntry_0= ruleModelEntry | this_FolderEntry_1= ruleFolderEntry ) + int alt16=2; + int LA16_0 = input.LA(1); + + if ( ((LA16_0>=RULE_ID && LA16_0<=RULE_STRING)) ) { + alt16=1; + } + else if ( (LA16_0==24) ) { + alt16=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 16, 0, input); + + throw nvae; + } + switch (alt16) { + case 1 : + // InternalApplicationConfiguration.g:1043:3: this_ModelEntry_0= ruleModelEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPartialModelEntryAccess().getModelEntryParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_ModelEntry_0=ruleModelEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ModelEntry_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:1052:3: this_FolderEntry_1= ruleFolderEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPartialModelEntryAccess().getFolderEntryParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_FolderEntry_1=ruleFolderEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_FolderEntry_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePartialModelEntry" + + + // $ANTLR start "entryRuleModelEntry" + // InternalApplicationConfiguration.g:1064:1: entryRuleModelEntry returns [EObject current=null] : iv_ruleModelEntry= ruleModelEntry EOF ; + public final EObject entryRuleModelEntry() throws RecognitionException { + EObject current = null; + + EObject iv_ruleModelEntry = null; + + + try { + // InternalApplicationConfiguration.g:1064:51: (iv_ruleModelEntry= ruleModelEntry EOF ) + // InternalApplicationConfiguration.g:1065:2: iv_ruleModelEntry= ruleModelEntry EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getModelEntryRule()); + } + pushFollow(FOLLOW_1); + iv_ruleModelEntry=ruleModelEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleModelEntry; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleModelEntry" + + + // $ANTLR start "ruleModelEntry" + // InternalApplicationConfiguration.g:1071:1: ruleModelEntry returns [EObject current=null] : ( (lv_path_0_0= ruleFile ) ) ; + public final EObject ruleModelEntry() throws RecognitionException { + EObject current = null; + + EObject lv_path_0_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1077:2: ( ( (lv_path_0_0= ruleFile ) ) ) + // InternalApplicationConfiguration.g:1078:2: ( (lv_path_0_0= ruleFile ) ) + { + // InternalApplicationConfiguration.g:1078:2: ( (lv_path_0_0= ruleFile ) ) + // InternalApplicationConfiguration.g:1079:3: (lv_path_0_0= ruleFile ) + { + // InternalApplicationConfiguration.g:1079:3: (lv_path_0_0= ruleFile ) + // InternalApplicationConfiguration.g:1080:4: lv_path_0_0= ruleFile + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getModelEntryAccess().getPathFileParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + lv_path_0_0=ruleFile(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getModelEntryRule()); + } + set( + current, + "path", + lv_path_0_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleModelEntry" + + + // $ANTLR start "entryRuleFolderEntry" + // InternalApplicationConfiguration.g:1100:1: entryRuleFolderEntry returns [EObject current=null] : iv_ruleFolderEntry= ruleFolderEntry EOF ; + public final EObject entryRuleFolderEntry() throws RecognitionException { + EObject current = null; + + EObject iv_ruleFolderEntry = null; + + + try { + // InternalApplicationConfiguration.g:1100:52: (iv_ruleFolderEntry= ruleFolderEntry EOF ) + // InternalApplicationConfiguration.g:1101:2: iv_ruleFolderEntry= ruleFolderEntry EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getFolderEntryRule()); + } + pushFollow(FOLLOW_1); + iv_ruleFolderEntry=ruleFolderEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleFolderEntry; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleFolderEntry" + + + // $ANTLR start "ruleFolderEntry" + // InternalApplicationConfiguration.g:1107:1: ruleFolderEntry returns [EObject current=null] : (otherlv_0= 'folder' ( (lv_path_1_0= ruleFile ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleModelEntry ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleModelEntry ) ) )* otherlv_7= '}' )? ) ; + public final EObject ruleFolderEntry() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_3=null; + Token otherlv_5=null; + Token otherlv_7=null; + EObject lv_path_1_0 = null; + + EObject lv_exclusion_4_0 = null; + + EObject lv_exclusion_6_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1113:2: ( (otherlv_0= 'folder' ( (lv_path_1_0= ruleFile ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleModelEntry ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleModelEntry ) ) )* otherlv_7= '}' )? ) ) + // InternalApplicationConfiguration.g:1114:2: (otherlv_0= 'folder' ( (lv_path_1_0= ruleFile ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleModelEntry ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleModelEntry ) ) )* otherlv_7= '}' )? ) + { + // InternalApplicationConfiguration.g:1114:2: (otherlv_0= 'folder' ( (lv_path_1_0= ruleFile ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleModelEntry ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleModelEntry ) ) )* otherlv_7= '}' )? ) + // InternalApplicationConfiguration.g:1115:3: otherlv_0= 'folder' ( (lv_path_1_0= ruleFile ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleModelEntry ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleModelEntry ) ) )* otherlv_7= '}' )? + { + otherlv_0=(Token)match(input,24,FOLLOW_18); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getFolderEntryAccess().getFolderKeyword_0()); + + } + // InternalApplicationConfiguration.g:1119:3: ( (lv_path_1_0= ruleFile ) ) + // InternalApplicationConfiguration.g:1120:4: (lv_path_1_0= ruleFile ) + { + // InternalApplicationConfiguration.g:1120:4: (lv_path_1_0= ruleFile ) + // InternalApplicationConfiguration.g:1121:5: lv_path_1_0= ruleFile + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getFolderEntryAccess().getPathFileParserRuleCall_1_0()); + + } + pushFollow(FOLLOW_13); + lv_path_1_0=ruleFile(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getFolderEntryRule()); + } + set( + current, + "path", + lv_path_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:1138:3: (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleModelEntry ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleModelEntry ) ) )* otherlv_7= '}' )? + int alt18=2; + int LA18_0 = input.LA(1); + + if ( (LA18_0==21) ) { + alt18=1; + } + switch (alt18) { + case 1 : + // InternalApplicationConfiguration.g:1139:4: otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusion_4_0= ruleModelEntry ) ) (otherlv_5= ',' ( (lv_exclusion_6_0= ruleModelEntry ) ) )* otherlv_7= '}' + { + otherlv_2=(Token)match(input,21,FOLLOW_14); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getFolderEntryAccess().getExcludingKeyword_2_0()); + + } + otherlv_3=(Token)match(input,17,FOLLOW_18); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getFolderEntryAccess().getLeftCurlyBracketKeyword_2_1()); + + } + // InternalApplicationConfiguration.g:1147:4: ( (lv_exclusion_4_0= ruleModelEntry ) ) + // InternalApplicationConfiguration.g:1148:5: (lv_exclusion_4_0= ruleModelEntry ) + { + // InternalApplicationConfiguration.g:1148:5: (lv_exclusion_4_0= ruleModelEntry ) + // InternalApplicationConfiguration.g:1149:6: lv_exclusion_4_0= ruleModelEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getFolderEntryAccess().getExclusionModelEntryParserRuleCall_2_2_0()); + + } + pushFollow(FOLLOW_12); + lv_exclusion_4_0=ruleModelEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getFolderEntryRule()); + } + add( + current, + "exclusion", + lv_exclusion_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ModelEntry"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:1166:4: (otherlv_5= ',' ( (lv_exclusion_6_0= ruleModelEntry ) ) )* + loop17: + do { + int alt17=2; + int LA17_0 = input.LA(1); + + if ( (LA17_0==18) ) { + alt17=1; + } + + + switch (alt17) { + case 1 : + // InternalApplicationConfiguration.g:1167:5: otherlv_5= ',' ( (lv_exclusion_6_0= ruleModelEntry ) ) + { + otherlv_5=(Token)match(input,18,FOLLOW_18); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getFolderEntryAccess().getCommaKeyword_2_3_0()); + + } + // InternalApplicationConfiguration.g:1171:5: ( (lv_exclusion_6_0= ruleModelEntry ) ) + // InternalApplicationConfiguration.g:1172:6: (lv_exclusion_6_0= ruleModelEntry ) + { + // InternalApplicationConfiguration.g:1172:6: (lv_exclusion_6_0= ruleModelEntry ) + // InternalApplicationConfiguration.g:1173:7: lv_exclusion_6_0= ruleModelEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getFolderEntryAccess().getExclusionModelEntryParserRuleCall_2_3_1_0()); + + } + pushFollow(FOLLOW_12); + lv_exclusion_6_0=ruleModelEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getFolderEntryRule()); + } + add( + current, + "exclusion", + lv_exclusion_6_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ModelEntry"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop17; + } + } while (true); + + otherlv_7=(Token)match(input,19,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_7, grammarAccess.getFolderEntryAccess().getRightCurlyBracketKeyword_2_4()); + + } + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleFolderEntry" + + + // $ANTLR start "entryRulePartialModelDeclaration" + // InternalApplicationConfiguration.g:1200:1: entryRulePartialModelDeclaration returns [EObject current=null] : iv_rulePartialModelDeclaration= rulePartialModelDeclaration EOF ; + public final EObject entryRulePartialModelDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_rulePartialModelDeclaration = null; + + + try { + // InternalApplicationConfiguration.g:1200:64: (iv_rulePartialModelDeclaration= rulePartialModelDeclaration EOF ) + // InternalApplicationConfiguration.g:1201:2: iv_rulePartialModelDeclaration= rulePartialModelDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getPartialModelDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_rulePartialModelDeclaration=rulePartialModelDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_rulePartialModelDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePartialModelDeclaration" + + + // $ANTLR start "rulePartialModelDeclaration" + // InternalApplicationConfiguration.g:1207:1: rulePartialModelDeclaration returns [EObject current=null] : (otherlv_0= 'partial-model' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePartialModelSpecification ) ) ) ; + public final EObject rulePartialModelDeclaration() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_name_1_0=null; + EObject lv_specification_2_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1213:2: ( (otherlv_0= 'partial-model' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePartialModelSpecification ) ) ) ) + // InternalApplicationConfiguration.g:1214:2: (otherlv_0= 'partial-model' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePartialModelSpecification ) ) ) + { + // InternalApplicationConfiguration.g:1214:2: (otherlv_0= 'partial-model' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePartialModelSpecification ) ) ) + // InternalApplicationConfiguration.g:1215:3: otherlv_0= 'partial-model' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePartialModelSpecification ) ) + { + otherlv_0=(Token)match(input,25,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getPartialModelDeclarationAccess().getPartialModelKeyword_0()); + + } + // InternalApplicationConfiguration.g:1219:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:1220:4: (lv_name_1_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:1220:4: (lv_name_1_0= RULE_ID ) + // InternalApplicationConfiguration.g:1221:5: lv_name_1_0= RULE_ID + { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_14); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_name_1_0, grammarAccess.getPartialModelDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getPartialModelDeclarationRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + + } + + } + + + } + + // InternalApplicationConfiguration.g:1237:3: ( (lv_specification_2_0= rulePartialModelSpecification ) ) + // InternalApplicationConfiguration.g:1238:4: (lv_specification_2_0= rulePartialModelSpecification ) + { + // InternalApplicationConfiguration.g:1238:4: (lv_specification_2_0= rulePartialModelSpecification ) + // InternalApplicationConfiguration.g:1239:5: lv_specification_2_0= rulePartialModelSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPartialModelDeclarationAccess().getSpecificationPartialModelSpecificationParserRuleCall_2_0()); + + } + pushFollow(FOLLOW_2); + lv_specification_2_0=rulePartialModelSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPartialModelDeclarationRule()); + } + set( + current, + "specification", + lv_specification_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PartialModelSpecification"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePartialModelDeclaration" + + + // $ANTLR start "entryRulePartialModelReference" + // InternalApplicationConfiguration.g:1260:1: entryRulePartialModelReference returns [EObject current=null] : iv_rulePartialModelReference= rulePartialModelReference EOF ; + public final EObject entryRulePartialModelReference() throws RecognitionException { + EObject current = null; + + EObject iv_rulePartialModelReference = null; + + + try { + // InternalApplicationConfiguration.g:1260:62: (iv_rulePartialModelReference= rulePartialModelReference EOF ) + // InternalApplicationConfiguration.g:1261:2: iv_rulePartialModelReference= rulePartialModelReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getPartialModelReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_rulePartialModelReference=rulePartialModelReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_rulePartialModelReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePartialModelReference" + + + // $ANTLR start "rulePartialModelReference" + // InternalApplicationConfiguration.g:1267:1: rulePartialModelReference returns [EObject current=null] : ( (otherlv_0= RULE_ID ) ) ; + public final EObject rulePartialModelReference() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1273:2: ( ( (otherlv_0= RULE_ID ) ) ) + // InternalApplicationConfiguration.g:1274:2: ( (otherlv_0= RULE_ID ) ) + { + // InternalApplicationConfiguration.g:1274:2: ( (otherlv_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:1275:3: (otherlv_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:1275:3: (otherlv_0= RULE_ID ) + // InternalApplicationConfiguration.g:1276:4: otherlv_0= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getPartialModelReferenceRule()); + } + + } + otherlv_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getPartialModelReferenceAccess().getReferredPartialModelDeclarationCrossReference_0()); + + } + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePartialModelReference" + + + // $ANTLR start "entryRulePartialModel" + // InternalApplicationConfiguration.g:1290:1: entryRulePartialModel returns [EObject current=null] : iv_rulePartialModel= rulePartialModel EOF ; + public final EObject entryRulePartialModel() throws RecognitionException { + EObject current = null; + + EObject iv_rulePartialModel = null; + + + try { + // InternalApplicationConfiguration.g:1290:53: (iv_rulePartialModel= rulePartialModel EOF ) + // InternalApplicationConfiguration.g:1291:2: iv_rulePartialModel= rulePartialModel EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getPartialModelRule()); + } + pushFollow(FOLLOW_1); + iv_rulePartialModel=rulePartialModel(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_rulePartialModel; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePartialModel" + + + // $ANTLR start "rulePartialModel" + // InternalApplicationConfiguration.g:1297:1: rulePartialModel returns [EObject current=null] : (this_PartialModelSpecification_0= rulePartialModelSpecification | this_PartialModelReference_1= rulePartialModelReference ) ; + public final EObject rulePartialModel() throws RecognitionException { + EObject current = null; + + EObject this_PartialModelSpecification_0 = null; + + EObject this_PartialModelReference_1 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1303:2: ( (this_PartialModelSpecification_0= rulePartialModelSpecification | this_PartialModelReference_1= rulePartialModelReference ) ) + // InternalApplicationConfiguration.g:1304:2: (this_PartialModelSpecification_0= rulePartialModelSpecification | this_PartialModelReference_1= rulePartialModelReference ) + { + // InternalApplicationConfiguration.g:1304:2: (this_PartialModelSpecification_0= rulePartialModelSpecification | this_PartialModelReference_1= rulePartialModelReference ) + int alt19=2; + int LA19_0 = input.LA(1); + + if ( (LA19_0==17) ) { + alt19=1; + } + else if ( (LA19_0==RULE_ID) ) { + alt19=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 19, 0, input); + + throw nvae; + } + switch (alt19) { + case 1 : + // InternalApplicationConfiguration.g:1305:3: this_PartialModelSpecification_0= rulePartialModelSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPartialModelAccess().getPartialModelSpecificationParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_PartialModelSpecification_0=rulePartialModelSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_PartialModelSpecification_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:1314:3: this_PartialModelReference_1= rulePartialModelReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPartialModelAccess().getPartialModelReferenceParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_PartialModelReference_1=rulePartialModelReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_PartialModelReference_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePartialModel" + + + // $ANTLR start "entryRulePatternSpecification" + // InternalApplicationConfiguration.g:1326:1: entryRulePatternSpecification returns [EObject current=null] : iv_rulePatternSpecification= rulePatternSpecification EOF ; + public final EObject entryRulePatternSpecification() throws RecognitionException { + EObject current = null; + + EObject iv_rulePatternSpecification = null; + + + try { + // InternalApplicationConfiguration.g:1326:61: (iv_rulePatternSpecification= rulePatternSpecification EOF ) + // InternalApplicationConfiguration.g:1327:2: iv_rulePatternSpecification= rulePatternSpecification EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getPatternSpecificationRule()); + } + pushFollow(FOLLOW_1); + iv_rulePatternSpecification=rulePatternSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_rulePatternSpecification; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePatternSpecification" + + + // $ANTLR start "rulePatternSpecification" + // InternalApplicationConfiguration.g:1333:1: rulePatternSpecification returns [EObject current=null] : (otherlv_0= '{' ( (lv_entries_1_0= rulePatternEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= rulePatternEntry ) ) )* otherlv_4= '}' ) ; + public final EObject rulePatternSpecification() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + EObject lv_entries_1_0 = null; + + EObject lv_entries_3_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1339:2: ( (otherlv_0= '{' ( (lv_entries_1_0= rulePatternEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= rulePatternEntry ) ) )* otherlv_4= '}' ) ) + // InternalApplicationConfiguration.g:1340:2: (otherlv_0= '{' ( (lv_entries_1_0= rulePatternEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= rulePatternEntry ) ) )* otherlv_4= '}' ) + { + // InternalApplicationConfiguration.g:1340:2: (otherlv_0= '{' ( (lv_entries_1_0= rulePatternEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= rulePatternEntry ) ) )* otherlv_4= '}' ) + // InternalApplicationConfiguration.g:1341:3: otherlv_0= '{' ( (lv_entries_1_0= rulePatternEntry ) ) (otherlv_2= ',' ( (lv_entries_3_0= rulePatternEntry ) ) )* otherlv_4= '}' + { + otherlv_0=(Token)match(input,17,FOLLOW_11); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getPatternSpecificationAccess().getLeftCurlyBracketKeyword_0()); + + } + // InternalApplicationConfiguration.g:1345:3: ( (lv_entries_1_0= rulePatternEntry ) ) + // InternalApplicationConfiguration.g:1346:4: (lv_entries_1_0= rulePatternEntry ) + { + // InternalApplicationConfiguration.g:1346:4: (lv_entries_1_0= rulePatternEntry ) + // InternalApplicationConfiguration.g:1347:5: lv_entries_1_0= rulePatternEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPatternSpecificationAccess().getEntriesPatternEntryParserRuleCall_1_0()); + + } + pushFollow(FOLLOW_12); + lv_entries_1_0=rulePatternEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPatternSpecificationRule()); + } + add( + current, + "entries", + lv_entries_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternEntry"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:1364:3: (otherlv_2= ',' ( (lv_entries_3_0= rulePatternEntry ) ) )* + loop20: + do { + int alt20=2; + int LA20_0 = input.LA(1); + + if ( (LA20_0==18) ) { + alt20=1; + } + + + switch (alt20) { + case 1 : + // InternalApplicationConfiguration.g:1365:4: otherlv_2= ',' ( (lv_entries_3_0= rulePatternEntry ) ) + { + otherlv_2=(Token)match(input,18,FOLLOW_11); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getPatternSpecificationAccess().getCommaKeyword_2_0()); + + } + // InternalApplicationConfiguration.g:1369:4: ( (lv_entries_3_0= rulePatternEntry ) ) + // InternalApplicationConfiguration.g:1370:5: (lv_entries_3_0= rulePatternEntry ) + { + // InternalApplicationConfiguration.g:1370:5: (lv_entries_3_0= rulePatternEntry ) + // InternalApplicationConfiguration.g:1371:6: lv_entries_3_0= rulePatternEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPatternSpecificationAccess().getEntriesPatternEntryParserRuleCall_2_1_0()); + + } + pushFollow(FOLLOW_12); + lv_entries_3_0=rulePatternEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPatternSpecificationRule()); + } + add( + current, + "entries", + lv_entries_3_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternEntry"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop20; + } + } while (true); + + otherlv_4=(Token)match(input,19,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getPatternSpecificationAccess().getRightCurlyBracketKeyword_3()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePatternSpecification" + + + // $ANTLR start "entryRulePatternEntry" + // InternalApplicationConfiguration.g:1397:1: entryRulePatternEntry returns [EObject current=null] : iv_rulePatternEntry= rulePatternEntry EOF ; + public final EObject entryRulePatternEntry() throws RecognitionException { + EObject current = null; + + EObject iv_rulePatternEntry = null; + + + try { + // InternalApplicationConfiguration.g:1397:53: (iv_rulePatternEntry= rulePatternEntry EOF ) + // InternalApplicationConfiguration.g:1398:2: iv_rulePatternEntry= rulePatternEntry EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getPatternEntryRule()); + } + pushFollow(FOLLOW_1); + iv_rulePatternEntry=rulePatternEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_rulePatternEntry; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePatternEntry" + + + // $ANTLR start "rulePatternEntry" + // InternalApplicationConfiguration.g:1404:1: rulePatternEntry returns [EObject current=null] : (this_PatternElement_0= rulePatternElement | this_AllPatternEntry_1= ruleAllPatternEntry ) ; + public final EObject rulePatternEntry() throws RecognitionException { + EObject current = null; + + EObject this_PatternElement_0 = null; + + EObject this_AllPatternEntry_1 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1410:2: ( (this_PatternElement_0= rulePatternElement | this_AllPatternEntry_1= ruleAllPatternEntry ) ) + // InternalApplicationConfiguration.g:1411:2: (this_PatternElement_0= rulePatternElement | this_AllPatternEntry_1= ruleAllPatternEntry ) + { + // InternalApplicationConfiguration.g:1411:2: (this_PatternElement_0= rulePatternElement | this_AllPatternEntry_1= ruleAllPatternEntry ) + int alt21=2; + int LA21_0 = input.LA(1); + + if ( (LA21_0==RULE_ID) ) { + alt21=1; + } + else if ( (LA21_0==20) ) { + alt21=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 21, 0, input); + + throw nvae; + } + switch (alt21) { + case 1 : + // InternalApplicationConfiguration.g:1412:3: this_PatternElement_0= rulePatternElement + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPatternEntryAccess().getPatternElementParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_PatternElement_0=rulePatternElement(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_PatternElement_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:1421:3: this_AllPatternEntry_1= ruleAllPatternEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPatternEntryAccess().getAllPatternEntryParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_AllPatternEntry_1=ruleAllPatternEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_AllPatternEntry_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePatternEntry" + + + // $ANTLR start "entryRuleAllPatternEntry" + // InternalApplicationConfiguration.g:1433:1: entryRuleAllPatternEntry returns [EObject current=null] : iv_ruleAllPatternEntry= ruleAllPatternEntry EOF ; + public final EObject entryRuleAllPatternEntry() throws RecognitionException { + EObject current = null; + + EObject iv_ruleAllPatternEntry = null; + + + try { + // InternalApplicationConfiguration.g:1433:56: (iv_ruleAllPatternEntry= ruleAllPatternEntry EOF ) + // InternalApplicationConfiguration.g:1434:2: iv_ruleAllPatternEntry= ruleAllPatternEntry EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getAllPatternEntryRule()); + } + pushFollow(FOLLOW_1); + iv_ruleAllPatternEntry=ruleAllPatternEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleAllPatternEntry; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleAllPatternEntry" + + + // $ANTLR start "ruleAllPatternEntry" + // InternalApplicationConfiguration.g:1440:1: ruleAllPatternEntry returns [EObject current=null] : (otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusuion_4_0= rulePatternElement ) ) (otherlv_5= ',' ( (lv_exclusuion_6_0= rulePatternElement ) ) )* otherlv_7= '}' )? ) ; + public final EObject ruleAllPatternEntry() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_3=null; + Token otherlv_5=null; + Token otherlv_7=null; + EObject lv_exclusuion_4_0 = null; + + EObject lv_exclusuion_6_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1446:2: ( (otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusuion_4_0= rulePatternElement ) ) (otherlv_5= ',' ( (lv_exclusuion_6_0= rulePatternElement ) ) )* otherlv_7= '}' )? ) ) + // InternalApplicationConfiguration.g:1447:2: (otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusuion_4_0= rulePatternElement ) ) (otherlv_5= ',' ( (lv_exclusuion_6_0= rulePatternElement ) ) )* otherlv_7= '}' )? ) + { + // InternalApplicationConfiguration.g:1447:2: (otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusuion_4_0= rulePatternElement ) ) (otherlv_5= ',' ( (lv_exclusuion_6_0= rulePatternElement ) ) )* otherlv_7= '}' )? ) + // InternalApplicationConfiguration.g:1448:3: otherlv_0= 'package' ( ( ruleQualifiedName ) ) (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusuion_4_0= rulePatternElement ) ) (otherlv_5= ',' ( (lv_exclusuion_6_0= rulePatternElement ) ) )* otherlv_7= '}' )? + { + otherlv_0=(Token)match(input,20,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getAllPatternEntryAccess().getPackageKeyword_0()); + + } + // InternalApplicationConfiguration.g:1452:3: ( ( ruleQualifiedName ) ) + // InternalApplicationConfiguration.g:1453:4: ( ruleQualifiedName ) + { + // InternalApplicationConfiguration.g:1453:4: ( ruleQualifiedName ) + // InternalApplicationConfiguration.g:1454:5: ruleQualifiedName + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getAllPatternEntryRule()); + } + + } + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getAllPatternEntryAccess().getPackagePatternModelCrossReference_1_0()); + + } + pushFollow(FOLLOW_13); + ruleQualifiedName(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:1468:3: (otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusuion_4_0= rulePatternElement ) ) (otherlv_5= ',' ( (lv_exclusuion_6_0= rulePatternElement ) ) )* otherlv_7= '}' )? + int alt23=2; + int LA23_0 = input.LA(1); + + if ( (LA23_0==21) ) { + alt23=1; + } + switch (alt23) { + case 1 : + // InternalApplicationConfiguration.g:1469:4: otherlv_2= 'excluding' otherlv_3= '{' ( (lv_exclusuion_4_0= rulePatternElement ) ) (otherlv_5= ',' ( (lv_exclusuion_6_0= rulePatternElement ) ) )* otherlv_7= '}' + { + otherlv_2=(Token)match(input,21,FOLLOW_14); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getAllPatternEntryAccess().getExcludingKeyword_2_0()); + + } + otherlv_3=(Token)match(input,17,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getAllPatternEntryAccess().getLeftCurlyBracketKeyword_2_1()); + + } + // InternalApplicationConfiguration.g:1477:4: ( (lv_exclusuion_4_0= rulePatternElement ) ) + // InternalApplicationConfiguration.g:1478:5: (lv_exclusuion_4_0= rulePatternElement ) + { + // InternalApplicationConfiguration.g:1478:5: (lv_exclusuion_4_0= rulePatternElement ) + // InternalApplicationConfiguration.g:1479:6: lv_exclusuion_4_0= rulePatternElement + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getAllPatternEntryAccess().getExclusuionPatternElementParserRuleCall_2_2_0()); + + } + pushFollow(FOLLOW_12); + lv_exclusuion_4_0=rulePatternElement(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAllPatternEntryRule()); + } + add( + current, + "exclusuion", + lv_exclusuion_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternElement"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:1496:4: (otherlv_5= ',' ( (lv_exclusuion_6_0= rulePatternElement ) ) )* + loop22: + do { + int alt22=2; + int LA22_0 = input.LA(1); + + if ( (LA22_0==18) ) { + alt22=1; + } + + + switch (alt22) { + case 1 : + // InternalApplicationConfiguration.g:1497:5: otherlv_5= ',' ( (lv_exclusuion_6_0= rulePatternElement ) ) + { + otherlv_5=(Token)match(input,18,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getAllPatternEntryAccess().getCommaKeyword_2_3_0()); + + } + // InternalApplicationConfiguration.g:1501:5: ( (lv_exclusuion_6_0= rulePatternElement ) ) + // InternalApplicationConfiguration.g:1502:6: (lv_exclusuion_6_0= rulePatternElement ) + { + // InternalApplicationConfiguration.g:1502:6: (lv_exclusuion_6_0= rulePatternElement ) + // InternalApplicationConfiguration.g:1503:7: lv_exclusuion_6_0= rulePatternElement + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getAllPatternEntryAccess().getExclusuionPatternElementParserRuleCall_2_3_1_0()); + + } + pushFollow(FOLLOW_12); + lv_exclusuion_6_0=rulePatternElement(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAllPatternEntryRule()); + } + add( + current, + "exclusuion", + lv_exclusuion_6_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternElement"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop22; + } + } while (true); + + otherlv_7=(Token)match(input,19,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_7, grammarAccess.getAllPatternEntryAccess().getRightCurlyBracketKeyword_2_4()); + + } + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleAllPatternEntry" + + + // $ANTLR start "entryRulePatternElement" + // InternalApplicationConfiguration.g:1530:1: entryRulePatternElement returns [EObject current=null] : iv_rulePatternElement= rulePatternElement EOF ; + public final EObject entryRulePatternElement() throws RecognitionException { + EObject current = null; + + EObject iv_rulePatternElement = null; + + + try { + // InternalApplicationConfiguration.g:1530:55: (iv_rulePatternElement= rulePatternElement EOF ) + // InternalApplicationConfiguration.g:1531:2: iv_rulePatternElement= rulePatternElement EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getPatternElementRule()); + } + pushFollow(FOLLOW_1); + iv_rulePatternElement=rulePatternElement(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_rulePatternElement; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePatternElement" + + + // $ANTLR start "rulePatternElement" + // InternalApplicationConfiguration.g:1537:1: rulePatternElement returns [EObject current=null] : ( ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) ) ; + public final EObject rulePatternElement() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_2=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1543:2: ( ( ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) ) ) + // InternalApplicationConfiguration.g:1544:2: ( ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) ) + { + // InternalApplicationConfiguration.g:1544:2: ( ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) ) + // InternalApplicationConfiguration.g:1545:3: ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? ( (otherlv_2= RULE_ID ) ) + { + // InternalApplicationConfiguration.g:1545:3: ( ( ( ruleQualifiedName ) ) otherlv_1= '::' )? + int alt24=2; + int LA24_0 = input.LA(1); + + if ( (LA24_0==RULE_ID) ) { + int LA24_1 = input.LA(2); + + if ( (LA24_1==11||LA24_1==22) ) { + alt24=1; + } + } + switch (alt24) { + case 1 : + // InternalApplicationConfiguration.g:1546:4: ( ( ruleQualifiedName ) ) otherlv_1= '::' + { + // InternalApplicationConfiguration.g:1546:4: ( ( ruleQualifiedName ) ) + // InternalApplicationConfiguration.g:1547:5: ( ruleQualifiedName ) + { + // InternalApplicationConfiguration.g:1547:5: ( ruleQualifiedName ) + // InternalApplicationConfiguration.g:1548:6: ruleQualifiedName + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getPatternElementRule()); + } + + } + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getPatternElementAccess().getPackagePatternModelCrossReference_0_0_0()); + + } + pushFollow(FOLLOW_15); + ruleQualifiedName(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_1=(Token)match(input,22,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getPatternElementAccess().getColonColonKeyword_0_1()); + + } + + } + break; + + } + + // InternalApplicationConfiguration.g:1567:3: ( (otherlv_2= RULE_ID ) ) + // InternalApplicationConfiguration.g:1568:4: (otherlv_2= RULE_ID ) + { + // InternalApplicationConfiguration.g:1568:4: (otherlv_2= RULE_ID ) + // InternalApplicationConfiguration.g:1569:5: otherlv_2= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getPatternElementRule()); + } + + } + otherlv_2=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getPatternElementAccess().getPatternPatternCrossReference_1_0()); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePatternElement" + + + // $ANTLR start "entryRuleGraphPatternDeclaration" + // InternalApplicationConfiguration.g:1584:1: entryRuleGraphPatternDeclaration returns [EObject current=null] : iv_ruleGraphPatternDeclaration= ruleGraphPatternDeclaration EOF ; + public final EObject entryRuleGraphPatternDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleGraphPatternDeclaration = null; + + + try { + // InternalApplicationConfiguration.g:1584:64: (iv_ruleGraphPatternDeclaration= ruleGraphPatternDeclaration EOF ) + // InternalApplicationConfiguration.g:1585:2: iv_ruleGraphPatternDeclaration= ruleGraphPatternDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getGraphPatternDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleGraphPatternDeclaration=ruleGraphPatternDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleGraphPatternDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleGraphPatternDeclaration" + + + // $ANTLR start "ruleGraphPatternDeclaration" + // InternalApplicationConfiguration.g:1591:1: ruleGraphPatternDeclaration returns [EObject current=null] : (otherlv_0= 'patterns' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePatternSpecification ) ) ) ; + public final EObject ruleGraphPatternDeclaration() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_name_1_0=null; + EObject lv_specification_2_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1597:2: ( (otherlv_0= 'patterns' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePatternSpecification ) ) ) ) + // InternalApplicationConfiguration.g:1598:2: (otherlv_0= 'patterns' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePatternSpecification ) ) ) + { + // InternalApplicationConfiguration.g:1598:2: (otherlv_0= 'patterns' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePatternSpecification ) ) ) + // InternalApplicationConfiguration.g:1599:3: otherlv_0= 'patterns' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= rulePatternSpecification ) ) + { + otherlv_0=(Token)match(input,26,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getGraphPatternDeclarationAccess().getPatternsKeyword_0()); + + } + // InternalApplicationConfiguration.g:1603:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:1604:4: (lv_name_1_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:1604:4: (lv_name_1_0= RULE_ID ) + // InternalApplicationConfiguration.g:1605:5: lv_name_1_0= RULE_ID + { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_14); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_name_1_0, grammarAccess.getGraphPatternDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getGraphPatternDeclarationRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + + } + + } + + + } + + // InternalApplicationConfiguration.g:1621:3: ( (lv_specification_2_0= rulePatternSpecification ) ) + // InternalApplicationConfiguration.g:1622:4: (lv_specification_2_0= rulePatternSpecification ) + { + // InternalApplicationConfiguration.g:1622:4: (lv_specification_2_0= rulePatternSpecification ) + // InternalApplicationConfiguration.g:1623:5: lv_specification_2_0= rulePatternSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGraphPatternDeclarationAccess().getSpecificationPatternSpecificationParserRuleCall_2_0()); + + } + pushFollow(FOLLOW_2); + lv_specification_2_0=rulePatternSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGraphPatternDeclarationRule()); + } + set( + current, + "specification", + lv_specification_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PatternSpecification"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleGraphPatternDeclaration" + + + // $ANTLR start "entryRuleGraphPatternReference" + // InternalApplicationConfiguration.g:1644:1: entryRuleGraphPatternReference returns [EObject current=null] : iv_ruleGraphPatternReference= ruleGraphPatternReference EOF ; + public final EObject entryRuleGraphPatternReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleGraphPatternReference = null; + + + try { + // InternalApplicationConfiguration.g:1644:62: (iv_ruleGraphPatternReference= ruleGraphPatternReference EOF ) + // InternalApplicationConfiguration.g:1645:2: iv_ruleGraphPatternReference= ruleGraphPatternReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getGraphPatternReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleGraphPatternReference=ruleGraphPatternReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleGraphPatternReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleGraphPatternReference" + + + // $ANTLR start "ruleGraphPatternReference" + // InternalApplicationConfiguration.g:1651:1: ruleGraphPatternReference returns [EObject current=null] : ( (otherlv_0= RULE_ID ) ) ; + public final EObject ruleGraphPatternReference() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1657:2: ( ( (otherlv_0= RULE_ID ) ) ) + // InternalApplicationConfiguration.g:1658:2: ( (otherlv_0= RULE_ID ) ) + { + // InternalApplicationConfiguration.g:1658:2: ( (otherlv_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:1659:3: (otherlv_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:1659:3: (otherlv_0= RULE_ID ) + // InternalApplicationConfiguration.g:1660:4: otherlv_0= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getGraphPatternReferenceRule()); + } + + } + otherlv_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getGraphPatternReferenceAccess().getReferredGraphPatternDeclarationCrossReference_0()); + + } + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleGraphPatternReference" + + + // $ANTLR start "entryRuleGraphPattern" + // InternalApplicationConfiguration.g:1674:1: entryRuleGraphPattern returns [EObject current=null] : iv_ruleGraphPattern= ruleGraphPattern EOF ; + public final EObject entryRuleGraphPattern() throws RecognitionException { + EObject current = null; + + EObject iv_ruleGraphPattern = null; + + + try { + // InternalApplicationConfiguration.g:1674:53: (iv_ruleGraphPattern= ruleGraphPattern EOF ) + // InternalApplicationConfiguration.g:1675:2: iv_ruleGraphPattern= ruleGraphPattern EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getGraphPatternRule()); + } + pushFollow(FOLLOW_1); + iv_ruleGraphPattern=ruleGraphPattern(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleGraphPattern; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleGraphPattern" + + + // $ANTLR start "ruleGraphPattern" + // InternalApplicationConfiguration.g:1681:1: ruleGraphPattern returns [EObject current=null] : (this_GraphPatternReference_0= ruleGraphPatternReference | this_PatternSpecification_1= rulePatternSpecification ) ; + public final EObject ruleGraphPattern() throws RecognitionException { + EObject current = null; + + EObject this_GraphPatternReference_0 = null; + + EObject this_PatternSpecification_1 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1687:2: ( (this_GraphPatternReference_0= ruleGraphPatternReference | this_PatternSpecification_1= rulePatternSpecification ) ) + // InternalApplicationConfiguration.g:1688:2: (this_GraphPatternReference_0= ruleGraphPatternReference | this_PatternSpecification_1= rulePatternSpecification ) + { + // InternalApplicationConfiguration.g:1688:2: (this_GraphPatternReference_0= ruleGraphPatternReference | this_PatternSpecification_1= rulePatternSpecification ) + int alt25=2; + int LA25_0 = input.LA(1); + + if ( (LA25_0==RULE_ID) ) { + alt25=1; + } + else if ( (LA25_0==17) ) { + alt25=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 25, 0, input); + + throw nvae; + } + switch (alt25) { + case 1 : + // InternalApplicationConfiguration.g:1689:3: this_GraphPatternReference_0= ruleGraphPatternReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGraphPatternAccess().getGraphPatternReferenceParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_GraphPatternReference_0=ruleGraphPatternReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_GraphPatternReference_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:1698:3: this_PatternSpecification_1= rulePatternSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGraphPatternAccess().getPatternSpecificationParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_PatternSpecification_1=rulePatternSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_PatternSpecification_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleGraphPattern" + + + // $ANTLR start "entryRuleConfigSpecification" + // InternalApplicationConfiguration.g:1710:1: entryRuleConfigSpecification returns [EObject current=null] : iv_ruleConfigSpecification= ruleConfigSpecification EOF ; + public final EObject entryRuleConfigSpecification() throws RecognitionException { + EObject current = null; + + EObject iv_ruleConfigSpecification = null; + + + try { + // InternalApplicationConfiguration.g:1710:60: (iv_ruleConfigSpecification= ruleConfigSpecification EOF ) + // InternalApplicationConfiguration.g:1711:2: iv_ruleConfigSpecification= ruleConfigSpecification EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getConfigSpecificationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleConfigSpecification=ruleConfigSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleConfigSpecification; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleConfigSpecification" + + + // $ANTLR start "ruleConfigSpecification" + // InternalApplicationConfiguration.g:1717:1: ruleConfigSpecification returns [EObject current=null] : ( () otherlv_1= '{' ( ( (lv_entries_2_0= ruleConfigEntry ) ) (otherlv_3= ',' ( (lv_entries_4_0= ruleConfigEntry ) ) )* )? otherlv_5= '}' ) ; + public final EObject ruleConfigSpecification() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_3=null; + Token otherlv_5=null; + EObject lv_entries_2_0 = null; + + EObject lv_entries_4_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1723:2: ( ( () otherlv_1= '{' ( ( (lv_entries_2_0= ruleConfigEntry ) ) (otherlv_3= ',' ( (lv_entries_4_0= ruleConfigEntry ) ) )* )? otherlv_5= '}' ) ) + // InternalApplicationConfiguration.g:1724:2: ( () otherlv_1= '{' ( ( (lv_entries_2_0= ruleConfigEntry ) ) (otherlv_3= ',' ( (lv_entries_4_0= ruleConfigEntry ) ) )* )? otherlv_5= '}' ) + { + // InternalApplicationConfiguration.g:1724:2: ( () otherlv_1= '{' ( ( (lv_entries_2_0= ruleConfigEntry ) ) (otherlv_3= ',' ( (lv_entries_4_0= ruleConfigEntry ) ) )* )? otherlv_5= '}' ) + // InternalApplicationConfiguration.g:1725:3: () otherlv_1= '{' ( ( (lv_entries_2_0= ruleConfigEntry ) ) (otherlv_3= ',' ( (lv_entries_4_0= ruleConfigEntry ) ) )* )? otherlv_5= '}' + { + // InternalApplicationConfiguration.g:1725:3: () + // InternalApplicationConfiguration.g:1726:4: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getConfigSpecificationAccess().getConfigSpecificationAction_0(), + current); + + } + + } + + otherlv_1=(Token)match(input,17,FOLLOW_19); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getConfigSpecificationAccess().getLeftCurlyBracketKeyword_1()); + + } + // InternalApplicationConfiguration.g:1736:3: ( ( (lv_entries_2_0= ruleConfigEntry ) ) (otherlv_3= ',' ( (lv_entries_4_0= ruleConfigEntry ) ) )* )? + int alt27=2; + int LA27_0 = input.LA(1); + + if ( (LA27_0==RULE_STRING) ) { + alt27=1; + } + switch (alt27) { + case 1 : + // InternalApplicationConfiguration.g:1737:4: ( (lv_entries_2_0= ruleConfigEntry ) ) (otherlv_3= ',' ( (lv_entries_4_0= ruleConfigEntry ) ) )* + { + // InternalApplicationConfiguration.g:1737:4: ( (lv_entries_2_0= ruleConfigEntry ) ) + // InternalApplicationConfiguration.g:1738:5: (lv_entries_2_0= ruleConfigEntry ) + { + // InternalApplicationConfiguration.g:1738:5: (lv_entries_2_0= ruleConfigEntry ) + // InternalApplicationConfiguration.g:1739:6: lv_entries_2_0= ruleConfigEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getConfigSpecificationAccess().getEntriesConfigEntryParserRuleCall_2_0_0()); + + } + pushFollow(FOLLOW_12); + lv_entries_2_0=ruleConfigEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getConfigSpecificationRule()); + } + add( + current, + "entries", + lv_entries_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ConfigEntry"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:1756:4: (otherlv_3= ',' ( (lv_entries_4_0= ruleConfigEntry ) ) )* + loop26: + do { + int alt26=2; + int LA26_0 = input.LA(1); + + if ( (LA26_0==18) ) { + alt26=1; + } + + + switch (alt26) { + case 1 : + // InternalApplicationConfiguration.g:1757:5: otherlv_3= ',' ( (lv_entries_4_0= ruleConfigEntry ) ) + { + otherlv_3=(Token)match(input,18,FOLLOW_8); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getConfigSpecificationAccess().getCommaKeyword_2_1_0()); + + } + // InternalApplicationConfiguration.g:1761:5: ( (lv_entries_4_0= ruleConfigEntry ) ) + // InternalApplicationConfiguration.g:1762:6: (lv_entries_4_0= ruleConfigEntry ) + { + // InternalApplicationConfiguration.g:1762:6: (lv_entries_4_0= ruleConfigEntry ) + // InternalApplicationConfiguration.g:1763:7: lv_entries_4_0= ruleConfigEntry + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getConfigSpecificationAccess().getEntriesConfigEntryParserRuleCall_2_1_1_0()); + + } + pushFollow(FOLLOW_12); + lv_entries_4_0=ruleConfigEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getConfigSpecificationRule()); + } + add( + current, + "entries", + lv_entries_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ConfigEntry"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop26; + } + } while (true); + + + } + break; + + } + + otherlv_5=(Token)match(input,19,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getConfigSpecificationAccess().getRightCurlyBracketKeyword_3()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleConfigSpecification" + + + // $ANTLR start "entryRuleConfigDeclaration" + // InternalApplicationConfiguration.g:1790:1: entryRuleConfigDeclaration returns [EObject current=null] : iv_ruleConfigDeclaration= ruleConfigDeclaration EOF ; + public final EObject entryRuleConfigDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleConfigDeclaration = null; + + + try { + // InternalApplicationConfiguration.g:1790:58: (iv_ruleConfigDeclaration= ruleConfigDeclaration EOF ) + // InternalApplicationConfiguration.g:1791:2: iv_ruleConfigDeclaration= ruleConfigDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getConfigDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleConfigDeclaration=ruleConfigDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleConfigDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleConfigDeclaration" + + + // $ANTLR start "ruleConfigDeclaration" + // InternalApplicationConfiguration.g:1797:1: ruleConfigDeclaration returns [EObject current=null] : (otherlv_0= 'config' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleConfigSpecification ) ) ) ; + public final EObject ruleConfigDeclaration() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_name_1_0=null; + EObject lv_specification_2_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1803:2: ( (otherlv_0= 'config' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleConfigSpecification ) ) ) ) + // InternalApplicationConfiguration.g:1804:2: (otherlv_0= 'config' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleConfigSpecification ) ) ) + { + // InternalApplicationConfiguration.g:1804:2: (otherlv_0= 'config' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleConfigSpecification ) ) ) + // InternalApplicationConfiguration.g:1805:3: otherlv_0= 'config' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleConfigSpecification ) ) + { + otherlv_0=(Token)match(input,27,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getConfigDeclarationAccess().getConfigKeyword_0()); + + } + // InternalApplicationConfiguration.g:1809:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:1810:4: (lv_name_1_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:1810:4: (lv_name_1_0= RULE_ID ) + // InternalApplicationConfiguration.g:1811:5: lv_name_1_0= RULE_ID + { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_14); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_name_1_0, grammarAccess.getConfigDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getConfigDeclarationRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + + } + + } + + + } + + // InternalApplicationConfiguration.g:1827:3: ( (lv_specification_2_0= ruleConfigSpecification ) ) + // InternalApplicationConfiguration.g:1828:4: (lv_specification_2_0= ruleConfigSpecification ) + { + // InternalApplicationConfiguration.g:1828:4: (lv_specification_2_0= ruleConfigSpecification ) + // InternalApplicationConfiguration.g:1829:5: lv_specification_2_0= ruleConfigSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getConfigDeclarationAccess().getSpecificationConfigSpecificationParserRuleCall_2_0()); + + } + pushFollow(FOLLOW_2); + lv_specification_2_0=ruleConfigSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getConfigDeclarationRule()); + } + set( + current, + "specification", + lv_specification_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ConfigSpecification"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleConfigDeclaration" + + + // $ANTLR start "entryRuleConfigEntry" + // InternalApplicationConfiguration.g:1850:1: entryRuleConfigEntry returns [EObject current=null] : iv_ruleConfigEntry= ruleConfigEntry EOF ; + public final EObject entryRuleConfigEntry() throws RecognitionException { + EObject current = null; + + EObject iv_ruleConfigEntry = null; + + + try { + // InternalApplicationConfiguration.g:1850:52: (iv_ruleConfigEntry= ruleConfigEntry EOF ) + // InternalApplicationConfiguration.g:1851:2: iv_ruleConfigEntry= ruleConfigEntry EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getConfigEntryRule()); + } + pushFollow(FOLLOW_1); + iv_ruleConfigEntry=ruleConfigEntry(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleConfigEntry; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleConfigEntry" + + + // $ANTLR start "ruleConfigEntry" + // InternalApplicationConfiguration.g:1857:1: ruleConfigEntry returns [EObject current=null] : ( ( (lv_key_0_0= RULE_STRING ) ) otherlv_1= '=' ( (lv_value_2_0= RULE_STRING ) ) ) ; + public final EObject ruleConfigEntry() throws RecognitionException { + EObject current = null; + + Token lv_key_0_0=null; + Token otherlv_1=null; + Token lv_value_2_0=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1863:2: ( ( ( (lv_key_0_0= RULE_STRING ) ) otherlv_1= '=' ( (lv_value_2_0= RULE_STRING ) ) ) ) + // InternalApplicationConfiguration.g:1864:2: ( ( (lv_key_0_0= RULE_STRING ) ) otherlv_1= '=' ( (lv_value_2_0= RULE_STRING ) ) ) + { + // InternalApplicationConfiguration.g:1864:2: ( ( (lv_key_0_0= RULE_STRING ) ) otherlv_1= '=' ( (lv_value_2_0= RULE_STRING ) ) ) + // InternalApplicationConfiguration.g:1865:3: ( (lv_key_0_0= RULE_STRING ) ) otherlv_1= '=' ( (lv_value_2_0= RULE_STRING ) ) + { + // InternalApplicationConfiguration.g:1865:3: ( (lv_key_0_0= RULE_STRING ) ) + // InternalApplicationConfiguration.g:1866:4: (lv_key_0_0= RULE_STRING ) + { + // InternalApplicationConfiguration.g:1866:4: (lv_key_0_0= RULE_STRING ) + // InternalApplicationConfiguration.g:1867:5: lv_key_0_0= RULE_STRING + { + lv_key_0_0=(Token)match(input,RULE_STRING,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_key_0_0, grammarAccess.getConfigEntryAccess().getKeySTRINGTerminalRuleCall_0_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getConfigEntryRule()); + } + setWithLastConsumed( + current, + "key", + lv_key_0_0, + "org.eclipse.xtext.common.Terminals.STRING"); + + } + + } + + + } + + otherlv_1=(Token)match(input,16,FOLLOW_8); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getConfigEntryAccess().getEqualsSignKeyword_1()); + + } + // InternalApplicationConfiguration.g:1887:3: ( (lv_value_2_0= RULE_STRING ) ) + // InternalApplicationConfiguration.g:1888:4: (lv_value_2_0= RULE_STRING ) + { + // InternalApplicationConfiguration.g:1888:4: (lv_value_2_0= RULE_STRING ) + // InternalApplicationConfiguration.g:1889:5: lv_value_2_0= RULE_STRING + { + lv_value_2_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_value_2_0, grammarAccess.getConfigEntryAccess().getValueSTRINGTerminalRuleCall_2_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getConfigEntryRule()); + } + setWithLastConsumed( + current, + "value", + lv_value_2_0, + "org.eclipse.xtext.common.Terminals.STRING"); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleConfigEntry" + + + // $ANTLR start "entryRuleConfigReference" + // InternalApplicationConfiguration.g:1909:1: entryRuleConfigReference returns [EObject current=null] : iv_ruleConfigReference= ruleConfigReference EOF ; + public final EObject entryRuleConfigReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleConfigReference = null; + + + try { + // InternalApplicationConfiguration.g:1909:56: (iv_ruleConfigReference= ruleConfigReference EOF ) + // InternalApplicationConfiguration.g:1910:2: iv_ruleConfigReference= ruleConfigReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getConfigReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleConfigReference=ruleConfigReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleConfigReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleConfigReference" + + + // $ANTLR start "ruleConfigReference" + // InternalApplicationConfiguration.g:1916:1: ruleConfigReference returns [EObject current=null] : ( (otherlv_0= RULE_ID ) ) ; + public final EObject ruleConfigReference() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1922:2: ( ( (otherlv_0= RULE_ID ) ) ) + // InternalApplicationConfiguration.g:1923:2: ( (otherlv_0= RULE_ID ) ) + { + // InternalApplicationConfiguration.g:1923:2: ( (otherlv_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:1924:3: (otherlv_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:1924:3: (otherlv_0= RULE_ID ) + // InternalApplicationConfiguration.g:1925:4: otherlv_0= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getConfigReferenceRule()); + } + + } + otherlv_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getConfigReferenceAccess().getConfigConfigDeclarationCrossReference_0()); + + } + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleConfigReference" + + + // $ANTLR start "entryRuleConfig" + // InternalApplicationConfiguration.g:1939:1: entryRuleConfig returns [EObject current=null] : iv_ruleConfig= ruleConfig EOF ; + public final EObject entryRuleConfig() throws RecognitionException { + EObject current = null; + + EObject iv_ruleConfig = null; + + + try { + // InternalApplicationConfiguration.g:1939:47: (iv_ruleConfig= ruleConfig EOF ) + // InternalApplicationConfiguration.g:1940:2: iv_ruleConfig= ruleConfig EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getConfigRule()); + } + pushFollow(FOLLOW_1); + iv_ruleConfig=ruleConfig(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleConfig; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleConfig" + + + // $ANTLR start "ruleConfig" + // InternalApplicationConfiguration.g:1946:1: ruleConfig returns [EObject current=null] : (this_ConfigSpecification_0= ruleConfigSpecification | this_ConfigReference_1= ruleConfigReference ) ; + public final EObject ruleConfig() throws RecognitionException { + EObject current = null; + + EObject this_ConfigSpecification_0 = null; + + EObject this_ConfigReference_1 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1952:2: ( (this_ConfigSpecification_0= ruleConfigSpecification | this_ConfigReference_1= ruleConfigReference ) ) + // InternalApplicationConfiguration.g:1953:2: (this_ConfigSpecification_0= ruleConfigSpecification | this_ConfigReference_1= ruleConfigReference ) + { + // InternalApplicationConfiguration.g:1953:2: (this_ConfigSpecification_0= ruleConfigSpecification | this_ConfigReference_1= ruleConfigReference ) + int alt28=2; + int LA28_0 = input.LA(1); + + if ( (LA28_0==17) ) { + alt28=1; + } + else if ( (LA28_0==RULE_ID) ) { + alt28=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 28, 0, input); + + throw nvae; + } + switch (alt28) { + case 1 : + // InternalApplicationConfiguration.g:1954:3: this_ConfigSpecification_0= ruleConfigSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getConfigAccess().getConfigSpecificationParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_ConfigSpecification_0=ruleConfigSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ConfigSpecification_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:1963:3: this_ConfigReference_1= ruleConfigReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getConfigAccess().getConfigReferenceParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_ConfigReference_1=ruleConfigReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ConfigReference_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleConfig" + + + // $ANTLR start "entryRuleScopeSpecification" + // InternalApplicationConfiguration.g:1975:1: entryRuleScopeSpecification returns [EObject current=null] : iv_ruleScopeSpecification= ruleScopeSpecification EOF ; + public final EObject entryRuleScopeSpecification() throws RecognitionException { + EObject current = null; + + EObject iv_ruleScopeSpecification = null; + + + try { + // InternalApplicationConfiguration.g:1975:59: (iv_ruleScopeSpecification= ruleScopeSpecification EOF ) + // InternalApplicationConfiguration.g:1976:2: iv_ruleScopeSpecification= ruleScopeSpecification EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getScopeSpecificationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleScopeSpecification=ruleScopeSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleScopeSpecification; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleScopeSpecification" + + + // $ANTLR start "ruleScopeSpecification" + // InternalApplicationConfiguration.g:1982:1: ruleScopeSpecification returns [EObject current=null] : ( () otherlv_1= '{' ( ( (lv_scopes_2_0= ruleTypeScope ) ) (otherlv_3= ',' ( (lv_scopes_4_0= ruleTypeScope ) ) )* )? otherlv_5= '}' ) ; + public final EObject ruleScopeSpecification() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_3=null; + Token otherlv_5=null; + EObject lv_scopes_2_0 = null; + + EObject lv_scopes_4_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:1988:2: ( ( () otherlv_1= '{' ( ( (lv_scopes_2_0= ruleTypeScope ) ) (otherlv_3= ',' ( (lv_scopes_4_0= ruleTypeScope ) ) )* )? otherlv_5= '}' ) ) + // InternalApplicationConfiguration.g:1989:2: ( () otherlv_1= '{' ( ( (lv_scopes_2_0= ruleTypeScope ) ) (otherlv_3= ',' ( (lv_scopes_4_0= ruleTypeScope ) ) )* )? otherlv_5= '}' ) + { + // InternalApplicationConfiguration.g:1989:2: ( () otherlv_1= '{' ( ( (lv_scopes_2_0= ruleTypeScope ) ) (otherlv_3= ',' ( (lv_scopes_4_0= ruleTypeScope ) ) )* )? otherlv_5= '}' ) + // InternalApplicationConfiguration.g:1990:3: () otherlv_1= '{' ( ( (lv_scopes_2_0= ruleTypeScope ) ) (otherlv_3= ',' ( (lv_scopes_4_0= ruleTypeScope ) ) )* )? otherlv_5= '}' + { + // InternalApplicationConfiguration.g:1990:3: () + // InternalApplicationConfiguration.g:1991:4: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getScopeSpecificationAccess().getScopeSpecificationAction_0(), + current); + + } + + } + + otherlv_1=(Token)match(input,17,FOLLOW_20); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getScopeSpecificationAccess().getLeftCurlyBracketKeyword_1()); + + } + // InternalApplicationConfiguration.g:2001:3: ( ( (lv_scopes_2_0= ruleTypeScope ) ) (otherlv_3= ',' ( (lv_scopes_4_0= ruleTypeScope ) ) )* )? + int alt30=2; + int LA30_0 = input.LA(1); + + if ( (LA30_0==RULE_INT||LA30_0==30) ) { + alt30=1; + } + switch (alt30) { + case 1 : + // InternalApplicationConfiguration.g:2002:4: ( (lv_scopes_2_0= ruleTypeScope ) ) (otherlv_3= ',' ( (lv_scopes_4_0= ruleTypeScope ) ) )* + { + // InternalApplicationConfiguration.g:2002:4: ( (lv_scopes_2_0= ruleTypeScope ) ) + // InternalApplicationConfiguration.g:2003:5: (lv_scopes_2_0= ruleTypeScope ) + { + // InternalApplicationConfiguration.g:2003:5: (lv_scopes_2_0= ruleTypeScope ) + // InternalApplicationConfiguration.g:2004:6: lv_scopes_2_0= ruleTypeScope + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getScopeSpecificationAccess().getScopesTypeScopeParserRuleCall_2_0_0()); + + } + pushFollow(FOLLOW_12); + lv_scopes_2_0=ruleTypeScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getScopeSpecificationRule()); + } + add( + current, + "scopes", + lv_scopes_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.TypeScope"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:2021:4: (otherlv_3= ',' ( (lv_scopes_4_0= ruleTypeScope ) ) )* + loop29: + do { + int alt29=2; + int LA29_0 = input.LA(1); + + if ( (LA29_0==18) ) { + alt29=1; + } + + + switch (alt29) { + case 1 : + // InternalApplicationConfiguration.g:2022:5: otherlv_3= ',' ( (lv_scopes_4_0= ruleTypeScope ) ) + { + otherlv_3=(Token)match(input,18,FOLLOW_21); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getScopeSpecificationAccess().getCommaKeyword_2_1_0()); + + } + // InternalApplicationConfiguration.g:2026:5: ( (lv_scopes_4_0= ruleTypeScope ) ) + // InternalApplicationConfiguration.g:2027:6: (lv_scopes_4_0= ruleTypeScope ) + { + // InternalApplicationConfiguration.g:2027:6: (lv_scopes_4_0= ruleTypeScope ) + // InternalApplicationConfiguration.g:2028:7: lv_scopes_4_0= ruleTypeScope + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getScopeSpecificationAccess().getScopesTypeScopeParserRuleCall_2_1_1_0()); + + } + pushFollow(FOLLOW_12); + lv_scopes_4_0=ruleTypeScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getScopeSpecificationRule()); + } + add( + current, + "scopes", + lv_scopes_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.TypeScope"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop29; + } + } while (true); + + + } + break; + + } + + otherlv_5=(Token)match(input,19,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getScopeSpecificationAccess().getRightCurlyBracketKeyword_3()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleScopeSpecification" + + + // $ANTLR start "entryRuleTypeScope" + // InternalApplicationConfiguration.g:2055:1: entryRuleTypeScope returns [EObject current=null] : iv_ruleTypeScope= ruleTypeScope EOF ; + public final EObject entryRuleTypeScope() throws RecognitionException { + EObject current = null; + + EObject iv_ruleTypeScope = null; + + + try { + // InternalApplicationConfiguration.g:2055:50: (iv_ruleTypeScope= ruleTypeScope EOF ) + // InternalApplicationConfiguration.g:2056:2: iv_ruleTypeScope= ruleTypeScope EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getTypeScopeRule()); + } + pushFollow(FOLLOW_1); + iv_ruleTypeScope=ruleTypeScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleTypeScope; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleTypeScope" + + + // $ANTLR start "ruleTypeScope" + // InternalApplicationConfiguration.g:2062:1: ruleTypeScope returns [EObject current=null] : ( ( ( (lv_min_0_0= RULE_INT ) ) ( ( (lv_greather_1_0= '<' ) ) | ( (lv_greaterOrEqual_2_0= '<=' ) ) ) )? otherlv_3= '#' ( (lv_type_4_0= ruleTypeReference ) ) ( ( ( (lv_less_5_0= '<' ) ) | ( (lv_lessOrEqual_6_0= '<=' ) ) ) ( (lv_max_7_0= RULE_INT ) ) )? ) ; + public final EObject ruleTypeScope() throws RecognitionException { + EObject current = null; + + Token lv_min_0_0=null; + Token lv_greather_1_0=null; + Token lv_greaterOrEqual_2_0=null; + Token otherlv_3=null; + Token lv_less_5_0=null; + Token lv_lessOrEqual_6_0=null; + Token lv_max_7_0=null; + EObject lv_type_4_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2068:2: ( ( ( ( (lv_min_0_0= RULE_INT ) ) ( ( (lv_greather_1_0= '<' ) ) | ( (lv_greaterOrEqual_2_0= '<=' ) ) ) )? otherlv_3= '#' ( (lv_type_4_0= ruleTypeReference ) ) ( ( ( (lv_less_5_0= '<' ) ) | ( (lv_lessOrEqual_6_0= '<=' ) ) ) ( (lv_max_7_0= RULE_INT ) ) )? ) ) + // InternalApplicationConfiguration.g:2069:2: ( ( ( (lv_min_0_0= RULE_INT ) ) ( ( (lv_greather_1_0= '<' ) ) | ( (lv_greaterOrEqual_2_0= '<=' ) ) ) )? otherlv_3= '#' ( (lv_type_4_0= ruleTypeReference ) ) ( ( ( (lv_less_5_0= '<' ) ) | ( (lv_lessOrEqual_6_0= '<=' ) ) ) ( (lv_max_7_0= RULE_INT ) ) )? ) + { + // InternalApplicationConfiguration.g:2069:2: ( ( ( (lv_min_0_0= RULE_INT ) ) ( ( (lv_greather_1_0= '<' ) ) | ( (lv_greaterOrEqual_2_0= '<=' ) ) ) )? otherlv_3= '#' ( (lv_type_4_0= ruleTypeReference ) ) ( ( ( (lv_less_5_0= '<' ) ) | ( (lv_lessOrEqual_6_0= '<=' ) ) ) ( (lv_max_7_0= RULE_INT ) ) )? ) + // InternalApplicationConfiguration.g:2070:3: ( ( (lv_min_0_0= RULE_INT ) ) ( ( (lv_greather_1_0= '<' ) ) | ( (lv_greaterOrEqual_2_0= '<=' ) ) ) )? otherlv_3= '#' ( (lv_type_4_0= ruleTypeReference ) ) ( ( ( (lv_less_5_0= '<' ) ) | ( (lv_lessOrEqual_6_0= '<=' ) ) ) ( (lv_max_7_0= RULE_INT ) ) )? + { + // InternalApplicationConfiguration.g:2070:3: ( ( (lv_min_0_0= RULE_INT ) ) ( ( (lv_greather_1_0= '<' ) ) | ( (lv_greaterOrEqual_2_0= '<=' ) ) ) )? + int alt32=2; + int LA32_0 = input.LA(1); + + if ( (LA32_0==RULE_INT) ) { + alt32=1; + } + switch (alt32) { + case 1 : + // InternalApplicationConfiguration.g:2071:4: ( (lv_min_0_0= RULE_INT ) ) ( ( (lv_greather_1_0= '<' ) ) | ( (lv_greaterOrEqual_2_0= '<=' ) ) ) + { + // InternalApplicationConfiguration.g:2071:4: ( (lv_min_0_0= RULE_INT ) ) + // InternalApplicationConfiguration.g:2072:5: (lv_min_0_0= RULE_INT ) + { + // InternalApplicationConfiguration.g:2072:5: (lv_min_0_0= RULE_INT ) + // InternalApplicationConfiguration.g:2073:6: lv_min_0_0= RULE_INT + { + lv_min_0_0=(Token)match(input,RULE_INT,FOLLOW_22); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_min_0_0, grammarAccess.getTypeScopeAccess().getMinINTTerminalRuleCall_0_0_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed( + current, + "min", + lv_min_0_0, + "org.eclipse.xtext.common.Terminals.INT"); + + } + + } + + + } + + // InternalApplicationConfiguration.g:2089:4: ( ( (lv_greather_1_0= '<' ) ) | ( (lv_greaterOrEqual_2_0= '<=' ) ) ) + int alt31=2; + int LA31_0 = input.LA(1); + + if ( (LA31_0==28) ) { + alt31=1; + } + else if ( (LA31_0==29) ) { + alt31=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 31, 0, input); + + throw nvae; + } + switch (alt31) { + case 1 : + // InternalApplicationConfiguration.g:2090:5: ( (lv_greather_1_0= '<' ) ) + { + // InternalApplicationConfiguration.g:2090:5: ( (lv_greather_1_0= '<' ) ) + // InternalApplicationConfiguration.g:2091:6: (lv_greather_1_0= '<' ) + { + // InternalApplicationConfiguration.g:2091:6: (lv_greather_1_0= '<' ) + // InternalApplicationConfiguration.g:2092:7: lv_greather_1_0= '<' + { + lv_greather_1_0=(Token)match(input,28,FOLLOW_23); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_greather_1_0, grammarAccess.getTypeScopeAccess().getGreatherLessThanSignKeyword_0_1_0_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed(current, "greather", true, "<"); + + } + + } + + + } + + + } + break; + case 2 : + // InternalApplicationConfiguration.g:2105:5: ( (lv_greaterOrEqual_2_0= '<=' ) ) + { + // InternalApplicationConfiguration.g:2105:5: ( (lv_greaterOrEqual_2_0= '<=' ) ) + // InternalApplicationConfiguration.g:2106:6: (lv_greaterOrEqual_2_0= '<=' ) + { + // InternalApplicationConfiguration.g:2106:6: (lv_greaterOrEqual_2_0= '<=' ) + // InternalApplicationConfiguration.g:2107:7: lv_greaterOrEqual_2_0= '<=' + { + lv_greaterOrEqual_2_0=(Token)match(input,29,FOLLOW_23); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_greaterOrEqual_2_0, grammarAccess.getTypeScopeAccess().getGreaterOrEqualLessThanSignEqualsSignKeyword_0_1_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed(current, "greaterOrEqual", true, "<="); + + } + + } + + + } + + + } + break; + + } + + + } + break; + + } + + otherlv_3=(Token)match(input,30,FOLLOW_24); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getTypeScopeAccess().getNumberSignKeyword_1()); + + } + // InternalApplicationConfiguration.g:2125:3: ( (lv_type_4_0= ruleTypeReference ) ) + // InternalApplicationConfiguration.g:2126:4: (lv_type_4_0= ruleTypeReference ) + { + // InternalApplicationConfiguration.g:2126:4: (lv_type_4_0= ruleTypeReference ) + // InternalApplicationConfiguration.g:2127:5: lv_type_4_0= ruleTypeReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getTypeScopeAccess().getTypeTypeReferenceParserRuleCall_2_0()); + + } + pushFollow(FOLLOW_25); + lv_type_4_0=ruleTypeReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getTypeScopeRule()); + } + set( + current, + "type", + lv_type_4_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.TypeReference"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalApplicationConfiguration.g:2144:3: ( ( ( (lv_less_5_0= '<' ) ) | ( (lv_lessOrEqual_6_0= '<=' ) ) ) ( (lv_max_7_0= RULE_INT ) ) )? + int alt34=2; + int LA34_0 = input.LA(1); + + if ( ((LA34_0>=28 && LA34_0<=29)) ) { + alt34=1; + } + switch (alt34) { + case 1 : + // InternalApplicationConfiguration.g:2145:4: ( ( (lv_less_5_0= '<' ) ) | ( (lv_lessOrEqual_6_0= '<=' ) ) ) ( (lv_max_7_0= RULE_INT ) ) + { + // InternalApplicationConfiguration.g:2145:4: ( ( (lv_less_5_0= '<' ) ) | ( (lv_lessOrEqual_6_0= '<=' ) ) ) + int alt33=2; + int LA33_0 = input.LA(1); + + if ( (LA33_0==28) ) { + alt33=1; + } + else if ( (LA33_0==29) ) { + alt33=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 33, 0, input); + + throw nvae; + } + switch (alt33) { + case 1 : + // InternalApplicationConfiguration.g:2146:5: ( (lv_less_5_0= '<' ) ) + { + // InternalApplicationConfiguration.g:2146:5: ( (lv_less_5_0= '<' ) ) + // InternalApplicationConfiguration.g:2147:6: (lv_less_5_0= '<' ) + { + // InternalApplicationConfiguration.g:2147:6: (lv_less_5_0= '<' ) + // InternalApplicationConfiguration.g:2148:7: lv_less_5_0= '<' + { + lv_less_5_0=(Token)match(input,28,FOLLOW_26); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_less_5_0, grammarAccess.getTypeScopeAccess().getLessLessThanSignKeyword_3_0_0_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed(current, "less", true, "<"); + + } + + } + + + } + + + } + break; + case 2 : + // InternalApplicationConfiguration.g:2161:5: ( (lv_lessOrEqual_6_0= '<=' ) ) + { + // InternalApplicationConfiguration.g:2161:5: ( (lv_lessOrEqual_6_0= '<=' ) ) + // InternalApplicationConfiguration.g:2162:6: (lv_lessOrEqual_6_0= '<=' ) + { + // InternalApplicationConfiguration.g:2162:6: (lv_lessOrEqual_6_0= '<=' ) + // InternalApplicationConfiguration.g:2163:7: lv_lessOrEqual_6_0= '<=' + { + lv_lessOrEqual_6_0=(Token)match(input,29,FOLLOW_26); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_lessOrEqual_6_0, grammarAccess.getTypeScopeAccess().getLessOrEqualLessThanSignEqualsSignKeyword_3_0_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed(current, "lessOrEqual", true, "<="); + + } + + } + + + } + + + } + break; + + } + + // InternalApplicationConfiguration.g:2176:4: ( (lv_max_7_0= RULE_INT ) ) + // InternalApplicationConfiguration.g:2177:5: (lv_max_7_0= RULE_INT ) + { + // InternalApplicationConfiguration.g:2177:5: (lv_max_7_0= RULE_INT ) + // InternalApplicationConfiguration.g:2178:6: lv_max_7_0= RULE_INT + { + lv_max_7_0=(Token)match(input,RULE_INT,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_max_7_0, grammarAccess.getTypeScopeAccess().getMaxINTTerminalRuleCall_3_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getTypeScopeRule()); + } + setWithLastConsumed( + current, + "max", + lv_max_7_0, + "org.eclipse.xtext.common.Terminals.INT"); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleTypeScope" + + + // $ANTLR start "entryRuleTypeReference" + // InternalApplicationConfiguration.g:2199:1: entryRuleTypeReference returns [EObject current=null] : iv_ruleTypeReference= ruleTypeReference EOF ; + public final EObject entryRuleTypeReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleTypeReference = null; + + + try { + // InternalApplicationConfiguration.g:2199:54: (iv_ruleTypeReference= ruleTypeReference EOF ) + // InternalApplicationConfiguration.g:2200:2: iv_ruleTypeReference= ruleTypeReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getTypeReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleTypeReference=ruleTypeReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleTypeReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleTypeReference" + + + // $ANTLR start "ruleTypeReference" + // InternalApplicationConfiguration.g:2206:1: ruleTypeReference returns [EObject current=null] : (this_ClassReference_0= ruleClassReference | this_ObjectReference_1= ruleObjectReference | this_IntegerReference_2= ruleIntegerReference | this_RealReference_3= ruleRealReference | this_StringReference_4= ruleStringReference ) ; + public final EObject ruleTypeReference() throws RecognitionException { + EObject current = null; + + EObject this_ClassReference_0 = null; + + EObject this_ObjectReference_1 = null; + + EObject this_IntegerReference_2 = null; + + EObject this_RealReference_3 = null; + + EObject this_StringReference_4 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2212:2: ( (this_ClassReference_0= ruleClassReference | this_ObjectReference_1= ruleObjectReference | this_IntegerReference_2= ruleIntegerReference | this_RealReference_3= ruleRealReference | this_StringReference_4= ruleStringReference ) ) + // InternalApplicationConfiguration.g:2213:2: (this_ClassReference_0= ruleClassReference | this_ObjectReference_1= ruleObjectReference | this_IntegerReference_2= ruleIntegerReference | this_RealReference_3= ruleRealReference | this_StringReference_4= ruleStringReference ) + { + // InternalApplicationConfiguration.g:2213:2: (this_ClassReference_0= ruleClassReference | this_ObjectReference_1= ruleObjectReference | this_IntegerReference_2= ruleIntegerReference | this_RealReference_3= ruleRealReference | this_StringReference_4= ruleStringReference ) + int alt35=5; + switch ( input.LA(1) ) { + case 31: + { + alt35=1; + } + break; + case 33: + { + alt35=2; + } + break; + case 34: + { + alt35=3; + } + break; + case 35: + { + alt35=4; + } + break; + case 36: + { + alt35=5; + } + break; + default: + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 35, 0, input); + + throw nvae; + } + + switch (alt35) { + case 1 : + // InternalApplicationConfiguration.g:2214:3: this_ClassReference_0= ruleClassReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getTypeReferenceAccess().getClassReferenceParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_ClassReference_0=ruleClassReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ClassReference_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:2223:3: this_ObjectReference_1= ruleObjectReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getTypeReferenceAccess().getObjectReferenceParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_ObjectReference_1=ruleObjectReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ObjectReference_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 3 : + // InternalApplicationConfiguration.g:2232:3: this_IntegerReference_2= ruleIntegerReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getTypeReferenceAccess().getIntegerReferenceParserRuleCall_2()); + + } + pushFollow(FOLLOW_2); + this_IntegerReference_2=ruleIntegerReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_IntegerReference_2; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 4 : + // InternalApplicationConfiguration.g:2241:3: this_RealReference_3= ruleRealReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getTypeReferenceAccess().getRealReferenceParserRuleCall_3()); + + } + pushFollow(FOLLOW_2); + this_RealReference_3=ruleRealReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_RealReference_3; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 5 : + // InternalApplicationConfiguration.g:2250:3: this_StringReference_4= ruleStringReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getTypeReferenceAccess().getStringReferenceParserRuleCall_4()); + + } + pushFollow(FOLLOW_2); + this_StringReference_4=ruleStringReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_StringReference_4; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleTypeReference" + + + // $ANTLR start "entryRuleClassReference" + // InternalApplicationConfiguration.g:2262:1: entryRuleClassReference returns [EObject current=null] : iv_ruleClassReference= ruleClassReference EOF ; + public final EObject entryRuleClassReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleClassReference = null; + + + try { + // InternalApplicationConfiguration.g:2262:55: (iv_ruleClassReference= ruleClassReference EOF ) + // InternalApplicationConfiguration.g:2263:2: iv_ruleClassReference= ruleClassReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getClassReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleClassReference=ruleClassReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleClassReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleClassReference" + + + // $ANTLR start "ruleClassReference" + // InternalApplicationConfiguration.g:2269:1: ruleClassReference returns [EObject current=null] : (otherlv_0= '[' ( (lv_element_1_0= ruleMetamodelElement ) ) otherlv_2= ']' ) ; + public final EObject ruleClassReference() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + EObject lv_element_1_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2275:2: ( (otherlv_0= '[' ( (lv_element_1_0= ruleMetamodelElement ) ) otherlv_2= ']' ) ) + // InternalApplicationConfiguration.g:2276:2: (otherlv_0= '[' ( (lv_element_1_0= ruleMetamodelElement ) ) otherlv_2= ']' ) + { + // InternalApplicationConfiguration.g:2276:2: (otherlv_0= '[' ( (lv_element_1_0= ruleMetamodelElement ) ) otherlv_2= ']' ) + // InternalApplicationConfiguration.g:2277:3: otherlv_0= '[' ( (lv_element_1_0= ruleMetamodelElement ) ) otherlv_2= ']' + { + otherlv_0=(Token)match(input,31,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getClassReferenceAccess().getLeftSquareBracketKeyword_0()); + + } + // InternalApplicationConfiguration.g:2281:3: ( (lv_element_1_0= ruleMetamodelElement ) ) + // InternalApplicationConfiguration.g:2282:4: (lv_element_1_0= ruleMetamodelElement ) + { + // InternalApplicationConfiguration.g:2282:4: (lv_element_1_0= ruleMetamodelElement ) + // InternalApplicationConfiguration.g:2283:5: lv_element_1_0= ruleMetamodelElement + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getClassReferenceAccess().getElementMetamodelElementParserRuleCall_1_0()); + + } + pushFollow(FOLLOW_27); + lv_element_1_0=ruleMetamodelElement(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getClassReferenceRule()); + } + set( + current, + "element", + lv_element_1_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.MetamodelElement"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_2=(Token)match(input,32,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getClassReferenceAccess().getRightSquareBracketKeyword_2()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleClassReference" + + + // $ANTLR start "entryRuleObjectReference" + // InternalApplicationConfiguration.g:2308:1: entryRuleObjectReference returns [EObject current=null] : iv_ruleObjectReference= ruleObjectReference EOF ; + public final EObject entryRuleObjectReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleObjectReference = null; + + + try { + // InternalApplicationConfiguration.g:2308:56: (iv_ruleObjectReference= ruleObjectReference EOF ) + // InternalApplicationConfiguration.g:2309:2: iv_ruleObjectReference= ruleObjectReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getObjectReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleObjectReference=ruleObjectReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleObjectReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleObjectReference" + + + // $ANTLR start "ruleObjectReference" + // InternalApplicationConfiguration.g:2315:1: ruleObjectReference returns [EObject current=null] : ( () otherlv_1= 'Object' ) ; + public final EObject ruleObjectReference() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2321:2: ( ( () otherlv_1= 'Object' ) ) + // InternalApplicationConfiguration.g:2322:2: ( () otherlv_1= 'Object' ) + { + // InternalApplicationConfiguration.g:2322:2: ( () otherlv_1= 'Object' ) + // InternalApplicationConfiguration.g:2323:3: () otherlv_1= 'Object' + { + // InternalApplicationConfiguration.g:2323:3: () + // InternalApplicationConfiguration.g:2324:4: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getObjectReferenceAccess().getObjectReferenceAction_0(), + current); + + } + + } + + otherlv_1=(Token)match(input,33,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getObjectReferenceAccess().getObjectKeyword_1()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleObjectReference" + + + // $ANTLR start "entryRuleIntegerReference" + // InternalApplicationConfiguration.g:2338:1: entryRuleIntegerReference returns [EObject current=null] : iv_ruleIntegerReference= ruleIntegerReference EOF ; + public final EObject entryRuleIntegerReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleIntegerReference = null; + + + try { + // InternalApplicationConfiguration.g:2338:57: (iv_ruleIntegerReference= ruleIntegerReference EOF ) + // InternalApplicationConfiguration.g:2339:2: iv_ruleIntegerReference= ruleIntegerReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getIntegerReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleIntegerReference=ruleIntegerReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleIntegerReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleIntegerReference" + + + // $ANTLR start "ruleIntegerReference" + // InternalApplicationConfiguration.g:2345:1: ruleIntegerReference returns [EObject current=null] : ( () otherlv_1= 'int' ) ; + public final EObject ruleIntegerReference() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2351:2: ( ( () otherlv_1= 'int' ) ) + // InternalApplicationConfiguration.g:2352:2: ( () otherlv_1= 'int' ) + { + // InternalApplicationConfiguration.g:2352:2: ( () otherlv_1= 'int' ) + // InternalApplicationConfiguration.g:2353:3: () otherlv_1= 'int' + { + // InternalApplicationConfiguration.g:2353:3: () + // InternalApplicationConfiguration.g:2354:4: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getIntegerReferenceAccess().getIntegerScopeAction_0(), + current); + + } + + } + + otherlv_1=(Token)match(input,34,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getIntegerReferenceAccess().getIntKeyword_1()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleIntegerReference" + + + // $ANTLR start "entryRuleRealReference" + // InternalApplicationConfiguration.g:2368:1: entryRuleRealReference returns [EObject current=null] : iv_ruleRealReference= ruleRealReference EOF ; + public final EObject entryRuleRealReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleRealReference = null; + + + try { + // InternalApplicationConfiguration.g:2368:54: (iv_ruleRealReference= ruleRealReference EOF ) + // InternalApplicationConfiguration.g:2369:2: iv_ruleRealReference= ruleRealReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getRealReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleRealReference=ruleRealReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleRealReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleRealReference" + + + // $ANTLR start "ruleRealReference" + // InternalApplicationConfiguration.g:2375:1: ruleRealReference returns [EObject current=null] : ( () otherlv_1= 'real' ) ; + public final EObject ruleRealReference() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2381:2: ( ( () otherlv_1= 'real' ) ) + // InternalApplicationConfiguration.g:2382:2: ( () otherlv_1= 'real' ) + { + // InternalApplicationConfiguration.g:2382:2: ( () otherlv_1= 'real' ) + // InternalApplicationConfiguration.g:2383:3: () otherlv_1= 'real' + { + // InternalApplicationConfiguration.g:2383:3: () + // InternalApplicationConfiguration.g:2384:4: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getRealReferenceAccess().getRealScopeAction_0(), + current); + + } + + } + + otherlv_1=(Token)match(input,35,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getRealReferenceAccess().getRealKeyword_1()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleRealReference" + + + // $ANTLR start "entryRuleStringReference" + // InternalApplicationConfiguration.g:2398:1: entryRuleStringReference returns [EObject current=null] : iv_ruleStringReference= ruleStringReference EOF ; + public final EObject entryRuleStringReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleStringReference = null; + + + try { + // InternalApplicationConfiguration.g:2398:56: (iv_ruleStringReference= ruleStringReference EOF ) + // InternalApplicationConfiguration.g:2399:2: iv_ruleStringReference= ruleStringReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getStringReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleStringReference=ruleStringReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleStringReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleStringReference" + + + // $ANTLR start "ruleStringReference" + // InternalApplicationConfiguration.g:2405:1: ruleStringReference returns [EObject current=null] : ( () otherlv_1= 'string' ) ; + public final EObject ruleStringReference() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2411:2: ( ( () otherlv_1= 'string' ) ) + // InternalApplicationConfiguration.g:2412:2: ( () otherlv_1= 'string' ) + { + // InternalApplicationConfiguration.g:2412:2: ( () otherlv_1= 'string' ) + // InternalApplicationConfiguration.g:2413:3: () otherlv_1= 'string' + { + // InternalApplicationConfiguration.g:2413:3: () + // InternalApplicationConfiguration.g:2414:4: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getStringReferenceAccess().getStringScopeAction_0(), + current); + + } + + } + + otherlv_1=(Token)match(input,36,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getStringReferenceAccess().getStringKeyword_1()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleStringReference" + + + // $ANTLR start "entryRuleScopeDeclaration" + // InternalApplicationConfiguration.g:2428:1: entryRuleScopeDeclaration returns [EObject current=null] : iv_ruleScopeDeclaration= ruleScopeDeclaration EOF ; + public final EObject entryRuleScopeDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleScopeDeclaration = null; + + + try { + // InternalApplicationConfiguration.g:2428:57: (iv_ruleScopeDeclaration= ruleScopeDeclaration EOF ) + // InternalApplicationConfiguration.g:2429:2: iv_ruleScopeDeclaration= ruleScopeDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getScopeDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleScopeDeclaration=ruleScopeDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleScopeDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleScopeDeclaration" + + + // $ANTLR start "ruleScopeDeclaration" + // InternalApplicationConfiguration.g:2435:1: ruleScopeDeclaration returns [EObject current=null] : (otherlv_0= 'scope' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleScopeSpecification ) ) ) ; + public final EObject ruleScopeDeclaration() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_name_1_0=null; + EObject lv_specification_2_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2441:2: ( (otherlv_0= 'scope' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleScopeSpecification ) ) ) ) + // InternalApplicationConfiguration.g:2442:2: (otherlv_0= 'scope' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleScopeSpecification ) ) ) + { + // InternalApplicationConfiguration.g:2442:2: (otherlv_0= 'scope' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleScopeSpecification ) ) ) + // InternalApplicationConfiguration.g:2443:3: otherlv_0= 'scope' ( (lv_name_1_0= RULE_ID ) ) ( (lv_specification_2_0= ruleScopeSpecification ) ) + { + otherlv_0=(Token)match(input,37,FOLLOW_6); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0()); + + } + // InternalApplicationConfiguration.g:2447:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:2448:4: (lv_name_1_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:2448:4: (lv_name_1_0= RULE_ID ) + // InternalApplicationConfiguration.g:2449:5: lv_name_1_0= RULE_ID + { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_14); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_name_1_0, grammarAccess.getScopeDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getScopeDeclarationRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + + } + + } + + + } + + // InternalApplicationConfiguration.g:2465:3: ( (lv_specification_2_0= ruleScopeSpecification ) ) + // InternalApplicationConfiguration.g:2466:4: (lv_specification_2_0= ruleScopeSpecification ) + { + // InternalApplicationConfiguration.g:2466:4: (lv_specification_2_0= ruleScopeSpecification ) + // InternalApplicationConfiguration.g:2467:5: lv_specification_2_0= ruleScopeSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getScopeDeclarationAccess().getSpecificationScopeSpecificationParserRuleCall_2_0()); + + } + pushFollow(FOLLOW_2); + lv_specification_2_0=ruleScopeSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getScopeDeclarationRule()); + } + set( + current, + "specification", + lv_specification_2_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.ScopeSpecification"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleScopeDeclaration" + + + // $ANTLR start "entryRuleScopeReference" + // InternalApplicationConfiguration.g:2488:1: entryRuleScopeReference returns [EObject current=null] : iv_ruleScopeReference= ruleScopeReference EOF ; + public final EObject entryRuleScopeReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleScopeReference = null; + + + try { + // InternalApplicationConfiguration.g:2488:55: (iv_ruleScopeReference= ruleScopeReference EOF ) + // InternalApplicationConfiguration.g:2489:2: iv_ruleScopeReference= ruleScopeReference EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getScopeReferenceRule()); + } + pushFollow(FOLLOW_1); + iv_ruleScopeReference=ruleScopeReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleScopeReference; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleScopeReference" + + + // $ANTLR start "ruleScopeReference" + // InternalApplicationConfiguration.g:2495:1: ruleScopeReference returns [EObject current=null] : ( (otherlv_0= RULE_ID ) ) ; + public final EObject ruleScopeReference() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2501:2: ( ( (otherlv_0= RULE_ID ) ) ) + // InternalApplicationConfiguration.g:2502:2: ( (otherlv_0= RULE_ID ) ) + { + // InternalApplicationConfiguration.g:2502:2: ( (otherlv_0= RULE_ID ) ) + // InternalApplicationConfiguration.g:2503:3: (otherlv_0= RULE_ID ) + { + // InternalApplicationConfiguration.g:2503:3: (otherlv_0= RULE_ID ) + // InternalApplicationConfiguration.g:2504:4: otherlv_0= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getScopeReferenceRule()); + } + + } + otherlv_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getScopeReferenceAccess().getReferredScopeDeclarationCrossReference_0()); + + } + + } + + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleScopeReference" + + + // $ANTLR start "entryRuleScope" + // InternalApplicationConfiguration.g:2518:1: entryRuleScope returns [EObject current=null] : iv_ruleScope= ruleScope EOF ; + public final EObject entryRuleScope() throws RecognitionException { + EObject current = null; + + EObject iv_ruleScope = null; + + + try { + // InternalApplicationConfiguration.g:2518:46: (iv_ruleScope= ruleScope EOF ) + // InternalApplicationConfiguration.g:2519:2: iv_ruleScope= ruleScope EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getScopeRule()); + } + pushFollow(FOLLOW_1); + iv_ruleScope=ruleScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleScope; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleScope" + + + // $ANTLR start "ruleScope" + // InternalApplicationConfiguration.g:2525:1: ruleScope returns [EObject current=null] : (this_ScopeSpecification_0= ruleScopeSpecification | this_ScopeReference_1= ruleScopeReference ) ; + public final EObject ruleScope() throws RecognitionException { + EObject current = null; + + EObject this_ScopeSpecification_0 = null; + + EObject this_ScopeReference_1 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2531:2: ( (this_ScopeSpecification_0= ruleScopeSpecification | this_ScopeReference_1= ruleScopeReference ) ) + // InternalApplicationConfiguration.g:2532:2: (this_ScopeSpecification_0= ruleScopeSpecification | this_ScopeReference_1= ruleScopeReference ) + { + // InternalApplicationConfiguration.g:2532:2: (this_ScopeSpecification_0= ruleScopeSpecification | this_ScopeReference_1= ruleScopeReference ) + int alt36=2; + int LA36_0 = input.LA(1); + + if ( (LA36_0==17) ) { + alt36=1; + } + else if ( (LA36_0==RULE_ID) ) { + alt36=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 36, 0, input); + + throw nvae; + } + switch (alt36) { + case 1 : + // InternalApplicationConfiguration.g:2533:3: this_ScopeSpecification_0= ruleScopeSpecification + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getScopeAccess().getScopeSpecificationParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_ScopeSpecification_0=ruleScopeSpecification(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ScopeSpecification_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalApplicationConfiguration.g:2542:3: this_ScopeReference_1= ruleScopeReference + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getScopeAccess().getScopeReferenceParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_ScopeReference_1=ruleScopeReference(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ScopeReference_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleScope" + + + // $ANTLR start "entryRuleTask" + // InternalApplicationConfiguration.g:2554:1: entryRuleTask returns [EObject current=null] : iv_ruleTask= ruleTask EOF ; + public final EObject entryRuleTask() throws RecognitionException { + EObject current = null; + + EObject iv_ruleTask = null; + + + try { + // InternalApplicationConfiguration.g:2554:45: (iv_ruleTask= ruleTask EOF ) + // InternalApplicationConfiguration.g:2555:2: iv_ruleTask= ruleTask EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getTaskRule()); + } + pushFollow(FOLLOW_1); + iv_ruleTask=ruleTask(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleTask; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleTask" + + + // $ANTLR start "ruleTask" + // InternalApplicationConfiguration.g:2561:1: ruleTask returns [EObject current=null] : this_GenerationTask_0= ruleGenerationTask ; + public final EObject ruleTask() throws RecognitionException { + EObject current = null; + + EObject this_GenerationTask_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2567:2: (this_GenerationTask_0= ruleGenerationTask ) + // InternalApplicationConfiguration.g:2568:2: this_GenerationTask_0= ruleGenerationTask + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getTaskAccess().getGenerationTaskParserRuleCall()); + + } + pushFollow(FOLLOW_2); + this_GenerationTask_0=ruleGenerationTask(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_GenerationTask_0; + afterParserOrEnumRuleCall(); + + } + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleTask" + + + // $ANTLR start "entryRuleGenerationTask" + // InternalApplicationConfiguration.g:2579:1: entryRuleGenerationTask returns [EObject current=null] : iv_ruleGenerationTask= ruleGenerationTask EOF ; + public final EObject entryRuleGenerationTask() throws RecognitionException { + EObject current = null; + + EObject iv_ruleGenerationTask = null; + + + try { + // InternalApplicationConfiguration.g:2579:55: (iv_ruleGenerationTask= ruleGenerationTask EOF ) + // InternalApplicationConfiguration.g:2580:2: iv_ruleGenerationTask= ruleGenerationTask EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getGenerationTaskRule()); + } + pushFollow(FOLLOW_1); + iv_ruleGenerationTask=ruleGenerationTask(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleGenerationTask; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleGenerationTask" + + + // $ANTLR start "ruleGenerationTask" + // InternalApplicationConfiguration.g:2586:1: ruleGenerationTask returns [EObject current=null] : (otherlv_0= 'generate' () otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) ) ) otherlv_40= '}' ) ; + public final EObject ruleGenerationTask() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + Token otherlv_5=null; + Token otherlv_7=null; + Token otherlv_8=null; + Token otherlv_10=null; + Token otherlv_11=null; + Token otherlv_13=null; + Token otherlv_14=null; + Token otherlv_16=null; + Token otherlv_17=null; + Token lv_number_18_0=null; + Token otherlv_19=null; + Token otherlv_20=null; + Token lv_runs_21_0=null; + Token otherlv_22=null; + Token otherlv_23=null; + Token otherlv_25=null; + Token otherlv_26=null; + Token otherlv_28=null; + Token otherlv_29=null; + Token otherlv_31=null; + Token otherlv_32=null; + Token otherlv_34=null; + Token otherlv_35=null; + Token otherlv_37=null; + Token otherlv_38=null; + Token otherlv_40=null; + EObject lv_metamodel_6_0 = null; + + EObject lv_partialModel_9_0 = null; + + EObject lv_patterns_12_0 = null; + + EObject lv_scope_15_0 = null; + + Enumerator lv_solver_24_0 = null; + + EObject lv_config_27_0 = null; + + EObject lv_tagetFolder_30_0 = null; + + EObject lv_debugFolder_33_0 = null; + + EObject lv_targetLogFile_36_0 = null; + + EObject lv_targetStatisticsFile_39_0 = null; + + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:2592:2: ( (otherlv_0= 'generate' () otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) ) ) otherlv_40= '}' ) ) + // InternalApplicationConfiguration.g:2593:2: (otherlv_0= 'generate' () otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) ) ) otherlv_40= '}' ) + { + // InternalApplicationConfiguration.g:2593:2: (otherlv_0= 'generate' () otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) ) ) otherlv_40= '}' ) + // InternalApplicationConfiguration.g:2594:3: otherlv_0= 'generate' () otherlv_2= '{' ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) ) ) otherlv_40= '}' + { + otherlv_0=(Token)match(input,38,FOLLOW_14); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getGenerationTaskAccess().getGenerateKeyword_0()); + + } + // InternalApplicationConfiguration.g:2598:3: () + // InternalApplicationConfiguration.g:2599:4: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getGenerationTaskAccess().getGenerationTaskAction_1(), + current); + + } + + } + + otherlv_2=(Token)match(input,17,FOLLOW_28); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getGenerationTaskAccess().getLeftCurlyBracketKeyword_2()); + + } + // InternalApplicationConfiguration.g:2609:3: ( ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) ) ) + // InternalApplicationConfiguration.g:2610:4: ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) ) + { + // InternalApplicationConfiguration.g:2610:4: ( ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) ) + // InternalApplicationConfiguration.g:2611:5: ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) + { + getUnorderedGroupHelper().enter(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + // InternalApplicationConfiguration.g:2614:5: ( ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* ) + // InternalApplicationConfiguration.g:2615:6: ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* + { + // InternalApplicationConfiguration.g:2615:6: ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )* + loop37: + do { + int alt37=13; + alt37 = dfa37.predict(input); + switch (alt37) { + case 1 : + // InternalApplicationConfiguration.g:2616:4: ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2616:4: ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2617:5: {...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 0) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 0)"); + } + // InternalApplicationConfiguration.g:2617:111: ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) + // InternalApplicationConfiguration.g:2618:6: ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 0); + // InternalApplicationConfiguration.g:2621:9: ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) + // InternalApplicationConfiguration.g:2621:10: {...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2621:19: (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) + // InternalApplicationConfiguration.g:2621:20: otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) + { + otherlv_4=(Token)match(input,23,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getGenerationTaskAccess().getMetamodelKeyword_3_0_0()); + + } + otherlv_5=(Token)match(input,16,FOLLOW_29); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_0_1()); + + } + // InternalApplicationConfiguration.g:2629:9: ( (lv_metamodel_6_0= ruleMetamodel ) ) + // InternalApplicationConfiguration.g:2630:10: (lv_metamodel_6_0= ruleMetamodel ) + { + // InternalApplicationConfiguration.g:2630:10: (lv_metamodel_6_0= ruleMetamodel ) + // InternalApplicationConfiguration.g:2631:11: lv_metamodel_6_0= ruleMetamodel + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getMetamodelMetamodelParserRuleCall_3_0_2_0()); + + } + pushFollow(FOLLOW_28); + lv_metamodel_6_0=ruleMetamodel(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "metamodel", + lv_metamodel_6_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Metamodel"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 2 : + // InternalApplicationConfiguration.g:2654:4: ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2654:4: ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2655:5: {...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 1) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 1)"); + } + // InternalApplicationConfiguration.g:2655:111: ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) + // InternalApplicationConfiguration.g:2656:6: ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 1); + // InternalApplicationConfiguration.g:2659:9: ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) + // InternalApplicationConfiguration.g:2659:10: {...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2659:19: (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) + // InternalApplicationConfiguration.g:2659:20: otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) + { + otherlv_7=(Token)match(input,25,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_7, grammarAccess.getGenerationTaskAccess().getPartialModelKeyword_3_1_0()); + + } + otherlv_8=(Token)match(input,16,FOLLOW_29); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_8, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_1_1()); + + } + // InternalApplicationConfiguration.g:2667:9: ( (lv_partialModel_9_0= rulePartialModel ) ) + // InternalApplicationConfiguration.g:2668:10: (lv_partialModel_9_0= rulePartialModel ) + { + // InternalApplicationConfiguration.g:2668:10: (lv_partialModel_9_0= rulePartialModel ) + // InternalApplicationConfiguration.g:2669:11: lv_partialModel_9_0= rulePartialModel + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getPartialModelPartialModelParserRuleCall_3_1_2_0()); + + } + pushFollow(FOLLOW_28); + lv_partialModel_9_0=rulePartialModel(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "partialModel", + lv_partialModel_9_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.PartialModel"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 3 : + // InternalApplicationConfiguration.g:2692:4: ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2692:4: ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2693:5: {...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 2) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 2)"); + } + // InternalApplicationConfiguration.g:2693:111: ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) + // InternalApplicationConfiguration.g:2694:6: ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 2); + // InternalApplicationConfiguration.g:2697:9: ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) + // InternalApplicationConfiguration.g:2697:10: {...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2697:19: (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) + // InternalApplicationConfiguration.g:2697:20: otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) + { + otherlv_10=(Token)match(input,26,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_10, grammarAccess.getGenerationTaskAccess().getPatternsKeyword_3_2_0()); + + } + otherlv_11=(Token)match(input,16,FOLLOW_29); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_11, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_2_1()); + + } + // InternalApplicationConfiguration.g:2705:9: ( (lv_patterns_12_0= ruleGraphPattern ) ) + // InternalApplicationConfiguration.g:2706:10: (lv_patterns_12_0= ruleGraphPattern ) + { + // InternalApplicationConfiguration.g:2706:10: (lv_patterns_12_0= ruleGraphPattern ) + // InternalApplicationConfiguration.g:2707:11: lv_patterns_12_0= ruleGraphPattern + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getPatternsGraphPatternParserRuleCall_3_2_2_0()); + + } + pushFollow(FOLLOW_28); + lv_patterns_12_0=ruleGraphPattern(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "patterns", + lv_patterns_12_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.GraphPattern"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 4 : + // InternalApplicationConfiguration.g:2730:4: ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2730:4: ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2731:5: {...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 3) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 3)"); + } + // InternalApplicationConfiguration.g:2731:111: ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) + // InternalApplicationConfiguration.g:2732:6: ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 3); + // InternalApplicationConfiguration.g:2735:9: ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) + // InternalApplicationConfiguration.g:2735:10: {...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2735:19: (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) + // InternalApplicationConfiguration.g:2735:20: otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) + { + otherlv_13=(Token)match(input,37,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_13, grammarAccess.getGenerationTaskAccess().getScopeKeyword_3_3_0()); + + } + otherlv_14=(Token)match(input,16,FOLLOW_29); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_14, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_3_1()); + + } + // InternalApplicationConfiguration.g:2743:9: ( (lv_scope_15_0= ruleScope ) ) + // InternalApplicationConfiguration.g:2744:10: (lv_scope_15_0= ruleScope ) + { + // InternalApplicationConfiguration.g:2744:10: (lv_scope_15_0= ruleScope ) + // InternalApplicationConfiguration.g:2745:11: lv_scope_15_0= ruleScope + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getScopeScopeParserRuleCall_3_3_2_0()); + + } + pushFollow(FOLLOW_28); + lv_scope_15_0=ruleScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "scope", + lv_scope_15_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Scope"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 5 : + // InternalApplicationConfiguration.g:2768:4: ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2768:4: ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2769:5: {...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 4) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 4)"); + } + // InternalApplicationConfiguration.g:2769:111: ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) + // InternalApplicationConfiguration.g:2770:6: ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 4); + // InternalApplicationConfiguration.g:2773:9: ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) + // InternalApplicationConfiguration.g:2773:10: {...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2773:19: (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) + // InternalApplicationConfiguration.g:2773:20: otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) + { + otherlv_16=(Token)match(input,39,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_16, grammarAccess.getGenerationTaskAccess().getNumberKeyword_3_4_0()); + + } + otherlv_17=(Token)match(input,16,FOLLOW_26); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_17, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_4_1()); + + } + // InternalApplicationConfiguration.g:2781:9: ( (lv_number_18_0= RULE_INT ) ) + // InternalApplicationConfiguration.g:2782:10: (lv_number_18_0= RULE_INT ) + { + // InternalApplicationConfiguration.g:2782:10: (lv_number_18_0= RULE_INT ) + // InternalApplicationConfiguration.g:2783:11: lv_number_18_0= RULE_INT + { + lv_number_18_0=(Token)match(input,RULE_INT,FOLLOW_28); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_number_18_0, grammarAccess.getGenerationTaskAccess().getNumberINTTerminalRuleCall_3_4_2_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getGenerationTaskRule()); + } + setWithLastConsumed( + current, + "number", + lv_number_18_0, + "org.eclipse.xtext.common.Terminals.INT"); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 6 : + // InternalApplicationConfiguration.g:2805:4: ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2805:4: ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2806:5: {...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 5) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 5)"); + } + // InternalApplicationConfiguration.g:2806:111: ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) + // InternalApplicationConfiguration.g:2807:6: ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 5); + // InternalApplicationConfiguration.g:2810:9: ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) + // InternalApplicationConfiguration.g:2810:10: {...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2810:19: (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) + // InternalApplicationConfiguration.g:2810:20: otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) + { + otherlv_19=(Token)match(input,40,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_19, grammarAccess.getGenerationTaskAccess().getRunsKeyword_3_5_0()); + + } + otherlv_20=(Token)match(input,16,FOLLOW_26); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_20, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_5_1()); + + } + // InternalApplicationConfiguration.g:2818:9: ( (lv_runs_21_0= RULE_INT ) ) + // InternalApplicationConfiguration.g:2819:10: (lv_runs_21_0= RULE_INT ) + { + // InternalApplicationConfiguration.g:2819:10: (lv_runs_21_0= RULE_INT ) + // InternalApplicationConfiguration.g:2820:11: lv_runs_21_0= RULE_INT + { + lv_runs_21_0=(Token)match(input,RULE_INT,FOLLOW_28); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_runs_21_0, grammarAccess.getGenerationTaskAccess().getRunsINTTerminalRuleCall_3_5_2_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getGenerationTaskRule()); + } + setWithLastConsumed( + current, + "runs", + lv_runs_21_0, + "org.eclipse.xtext.common.Terminals.INT"); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 7 : + // InternalApplicationConfiguration.g:2842:4: ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2842:4: ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2843:5: {...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 6) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 6)"); + } + // InternalApplicationConfiguration.g:2843:111: ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) + // InternalApplicationConfiguration.g:2844:6: ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 6); + // InternalApplicationConfiguration.g:2847:9: ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) + // InternalApplicationConfiguration.g:2847:10: {...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2847:19: (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) + // InternalApplicationConfiguration.g:2847:20: otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) + { + otherlv_22=(Token)match(input,41,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_22, grammarAccess.getGenerationTaskAccess().getSolverKeyword_3_6_0()); + + } + otherlv_23=(Token)match(input,16,FOLLOW_30); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_23, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_6_1()); + + } + // InternalApplicationConfiguration.g:2855:9: ( (lv_solver_24_0= ruleSolver ) ) + // InternalApplicationConfiguration.g:2856:10: (lv_solver_24_0= ruleSolver ) + { + // InternalApplicationConfiguration.g:2856:10: (lv_solver_24_0= ruleSolver ) + // InternalApplicationConfiguration.g:2857:11: lv_solver_24_0= ruleSolver + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getSolverSolverEnumRuleCall_3_6_2_0()); + + } + pushFollow(FOLLOW_28); + lv_solver_24_0=ruleSolver(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "solver", + lv_solver_24_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Solver"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 8 : + // InternalApplicationConfiguration.g:2880:4: ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2880:4: ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2881:5: {...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 7) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 7)"); + } + // InternalApplicationConfiguration.g:2881:111: ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) + // InternalApplicationConfiguration.g:2882:6: ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 7); + // InternalApplicationConfiguration.g:2885:9: ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) + // InternalApplicationConfiguration.g:2885:10: {...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2885:19: (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) + // InternalApplicationConfiguration.g:2885:20: otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) + { + otherlv_25=(Token)match(input,27,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_25, grammarAccess.getGenerationTaskAccess().getConfigKeyword_3_7_0()); + + } + otherlv_26=(Token)match(input,16,FOLLOW_29); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_26, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_7_1()); + + } + // InternalApplicationConfiguration.g:2893:9: ( (lv_config_27_0= ruleConfig ) ) + // InternalApplicationConfiguration.g:2894:10: (lv_config_27_0= ruleConfig ) + { + // InternalApplicationConfiguration.g:2894:10: (lv_config_27_0= ruleConfig ) + // InternalApplicationConfiguration.g:2895:11: lv_config_27_0= ruleConfig + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getConfigConfigParserRuleCall_3_7_2_0()); + + } + pushFollow(FOLLOW_28); + lv_config_27_0=ruleConfig(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "config", + lv_config_27_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.Config"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 9 : + // InternalApplicationConfiguration.g:2918:4: ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2918:4: ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2919:5: {...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 8) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 8)"); + } + // InternalApplicationConfiguration.g:2919:111: ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) + // InternalApplicationConfiguration.g:2920:6: ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 8); + // InternalApplicationConfiguration.g:2923:9: ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) + // InternalApplicationConfiguration.g:2923:10: {...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2923:19: (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) + // InternalApplicationConfiguration.g:2923:20: otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) + { + otherlv_28=(Token)match(input,42,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_28, grammarAccess.getGenerationTaskAccess().getOutputKeyword_3_8_0()); + + } + otherlv_29=(Token)match(input,16,FOLLOW_18); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_29, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_8_1()); + + } + // InternalApplicationConfiguration.g:2931:9: ( (lv_tagetFolder_30_0= ruleFile ) ) + // InternalApplicationConfiguration.g:2932:10: (lv_tagetFolder_30_0= ruleFile ) + { + // InternalApplicationConfiguration.g:2932:10: (lv_tagetFolder_30_0= ruleFile ) + // InternalApplicationConfiguration.g:2933:11: lv_tagetFolder_30_0= ruleFile + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getTagetFolderFileParserRuleCall_3_8_2_0()); + + } + pushFollow(FOLLOW_28); + lv_tagetFolder_30_0=ruleFile(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "tagetFolder", + lv_tagetFolder_30_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 10 : + // InternalApplicationConfiguration.g:2956:4: ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2956:4: ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2957:5: {...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 9) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 9)"); + } + // InternalApplicationConfiguration.g:2957:111: ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) + // InternalApplicationConfiguration.g:2958:6: ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 9); + // InternalApplicationConfiguration.g:2961:9: ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) + // InternalApplicationConfiguration.g:2961:10: {...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2961:19: (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) + // InternalApplicationConfiguration.g:2961:20: otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) + { + otherlv_31=(Token)match(input,43,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_31, grammarAccess.getGenerationTaskAccess().getDebugKeyword_3_9_0()); + + } + otherlv_32=(Token)match(input,16,FOLLOW_18); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_32, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_9_1()); + + } + // InternalApplicationConfiguration.g:2969:9: ( (lv_debugFolder_33_0= ruleFile ) ) + // InternalApplicationConfiguration.g:2970:10: (lv_debugFolder_33_0= ruleFile ) + { + // InternalApplicationConfiguration.g:2970:10: (lv_debugFolder_33_0= ruleFile ) + // InternalApplicationConfiguration.g:2971:11: lv_debugFolder_33_0= ruleFile + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getDebugFolderFileParserRuleCall_3_9_2_0()); + + } + pushFollow(FOLLOW_28); + lv_debugFolder_33_0=ruleFile(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "debugFolder", + lv_debugFolder_33_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 11 : + // InternalApplicationConfiguration.g:2994:4: ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:2994:4: ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) + // InternalApplicationConfiguration.g:2995:5: {...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 10) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 10)"); + } + // InternalApplicationConfiguration.g:2995:112: ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) + // InternalApplicationConfiguration.g:2996:6: ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 10); + // InternalApplicationConfiguration.g:2999:9: ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) + // InternalApplicationConfiguration.g:2999:10: {...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:2999:19: (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) + // InternalApplicationConfiguration.g:2999:20: otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) + { + otherlv_34=(Token)match(input,44,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_34, grammarAccess.getGenerationTaskAccess().getLogKeyword_3_10_0()); + + } + otherlv_35=(Token)match(input,16,FOLLOW_18); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_35, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_10_1()); + + } + // InternalApplicationConfiguration.g:3007:9: ( (lv_targetLogFile_36_0= ruleFile ) ) + // InternalApplicationConfiguration.g:3008:10: (lv_targetLogFile_36_0= ruleFile ) + { + // InternalApplicationConfiguration.g:3008:10: (lv_targetLogFile_36_0= ruleFile ) + // InternalApplicationConfiguration.g:3009:11: lv_targetLogFile_36_0= ruleFile + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getTargetLogFileFileParserRuleCall_3_10_2_0()); + + } + pushFollow(FOLLOW_28); + lv_targetLogFile_36_0=ruleFile(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "targetLogFile", + lv_targetLogFile_36_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + case 12 : + // InternalApplicationConfiguration.g:3032:4: ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) + { + // InternalApplicationConfiguration.g:3032:4: ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) + // InternalApplicationConfiguration.g:3033:5: {...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 11) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 11)"); + } + // InternalApplicationConfiguration.g:3033:112: ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) + // InternalApplicationConfiguration.g:3034:6: ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 11); + // InternalApplicationConfiguration.g:3037:9: ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) + // InternalApplicationConfiguration.g:3037:10: {...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleGenerationTask", "true"); + } + // InternalApplicationConfiguration.g:3037:19: (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) + // InternalApplicationConfiguration.g:3037:20: otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) + { + otherlv_37=(Token)match(input,45,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_37, grammarAccess.getGenerationTaskAccess().getStatisticsKeyword_3_11_0()); + + } + otherlv_38=(Token)match(input,16,FOLLOW_18); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_38, grammarAccess.getGenerationTaskAccess().getEqualsSignKeyword_3_11_1()); + + } + // InternalApplicationConfiguration.g:3045:9: ( (lv_targetStatisticsFile_39_0= ruleFile ) ) + // InternalApplicationConfiguration.g:3046:10: (lv_targetStatisticsFile_39_0= ruleFile ) + { + // InternalApplicationConfiguration.g:3046:10: (lv_targetStatisticsFile_39_0= ruleFile ) + // InternalApplicationConfiguration.g:3047:11: lv_targetStatisticsFile_39_0= ruleFile + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getGenerationTaskAccess().getTargetStatisticsFileFileParserRuleCall_3_11_2_0()); + + } + pushFollow(FOLLOW_28); + lv_targetStatisticsFile_39_0=ruleFile(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGenerationTaskRule()); + } + set( + current, + "targetStatisticsFile", + lv_targetStatisticsFile_39_0, + "hu.bme.mit.inf.dslreasoner.application.ApplicationConfiguration.File"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + + } + + + } + break; + + default : + break loop37; + } + } while (true); + + + } + + + } + + getUnorderedGroupHelper().leave(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3()); + + } + + otherlv_40=(Token)match(input,19,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_40, grammarAccess.getGenerationTaskAccess().getRightCurlyBracketKeyword_4()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleGenerationTask" + + + // $ANTLR start "ruleSolver" + // InternalApplicationConfiguration.g:3085:1: ruleSolver returns [Enumerator current=null] : ( (enumLiteral_0= 'SMTSolver' ) | (enumLiteral_1= 'AlloySolver' ) | (enumLiteral_2= 'ViatraSolver' ) ) ; + public final Enumerator ruleSolver() throws RecognitionException { + Enumerator current = null; + + Token enumLiteral_0=null; + Token enumLiteral_1=null; + Token enumLiteral_2=null; + + + enterRule(); + + try { + // InternalApplicationConfiguration.g:3091:2: ( ( (enumLiteral_0= 'SMTSolver' ) | (enumLiteral_1= 'AlloySolver' ) | (enumLiteral_2= 'ViatraSolver' ) ) ) + // InternalApplicationConfiguration.g:3092:2: ( (enumLiteral_0= 'SMTSolver' ) | (enumLiteral_1= 'AlloySolver' ) | (enumLiteral_2= 'ViatraSolver' ) ) + { + // InternalApplicationConfiguration.g:3092:2: ( (enumLiteral_0= 'SMTSolver' ) | (enumLiteral_1= 'AlloySolver' ) | (enumLiteral_2= 'ViatraSolver' ) ) + int alt38=3; + switch ( input.LA(1) ) { + case 46: + { + alt38=1; + } + break; + case 47: + { + alt38=2; + } + break; + case 48: + { + alt38=3; + } + break; + default: + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 38, 0, input); + + throw nvae; + } + + switch (alt38) { + case 1 : + // InternalApplicationConfiguration.g:3093:3: (enumLiteral_0= 'SMTSolver' ) + { + // InternalApplicationConfiguration.g:3093:3: (enumLiteral_0= 'SMTSolver' ) + // InternalApplicationConfiguration.g:3094:4: enumLiteral_0= 'SMTSolver' + { + enumLiteral_0=(Token)match(input,46,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getSolverAccess().getSMTSolverEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getSolverAccess().getSMTSolverEnumLiteralDeclaration_0()); + + } + + } + + + } + break; + case 2 : + // InternalApplicationConfiguration.g:3101:3: (enumLiteral_1= 'AlloySolver' ) + { + // InternalApplicationConfiguration.g:3101:3: (enumLiteral_1= 'AlloySolver' ) + // InternalApplicationConfiguration.g:3102:4: enumLiteral_1= 'AlloySolver' + { + enumLiteral_1=(Token)match(input,47,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getSolverAccess().getAlloySolverEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getSolverAccess().getAlloySolverEnumLiteralDeclaration_1()); + + } + + } + + + } + break; + case 3 : + // InternalApplicationConfiguration.g:3109:3: (enumLiteral_2= 'ViatraSolver' ) + { + // InternalApplicationConfiguration.g:3109:3: (enumLiteral_2= 'ViatraSolver' ) + // InternalApplicationConfiguration.g:3110:4: enumLiteral_2= 'ViatraSolver' + { + enumLiteral_2=(Token)match(input,48,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getSolverAccess().getViatraSolverEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getSolverAccess().getViatraSolverEnumLiteralDeclaration_2()); + + } + + } + + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + + leaveRule(); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleSolver" + + // $ANTLR start synpred1_InternalApplicationConfiguration + public final void synpred1_InternalApplicationConfiguration_fragment() throws RecognitionException { + // InternalApplicationConfiguration.g:182:5: ( '.' ) + // InternalApplicationConfiguration.g:182:6: '.' + { + match(input,11,FOLLOW_2); if (state.failed) return ; + + } + } + // $ANTLR end synpred1_InternalApplicationConfiguration + + // Delegated rules + + public final boolean synpred1_InternalApplicationConfiguration() { + state.backtracking++; + int start = input.mark(); + try { + synpred1_InternalApplicationConfiguration_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 DFA37 dfa37 = new DFA37(this); + static final String dfa_1s = "\16\uffff"; + static final String dfa_2s = "\1\23\15\uffff"; + static final String dfa_3s = "\1\55\15\uffff"; + static final String dfa_4s = "\1\uffff\1\15\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\10\1\11\1\12\1\13\1\14"; + static final String dfa_5s = "\1\0\15\uffff}>"; + static final String[] dfa_6s = { + "\1\1\3\uffff\1\2\1\uffff\1\3\1\4\1\11\11\uffff\1\5\1\uffff\1\6\1\7\1\10\1\12\1\13\1\14\1\15", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + }; + + static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s); + static final char[] dfa_2 = DFA.unpackEncodedStringToUnsignedChars(dfa_2s); + static final char[] dfa_3 = DFA.unpackEncodedStringToUnsignedChars(dfa_3s); + static final short[] dfa_4 = DFA.unpackEncodedString(dfa_4s); + static final short[] dfa_5 = DFA.unpackEncodedString(dfa_5s); + static final short[][] dfa_6 = unpackEncodedStringArray(dfa_6s); + + class DFA37 extends DFA { + + public DFA37(BaseRecognizer recognizer) { + this.recognizer = recognizer; + this.decisionNumber = 37; + this.eot = dfa_1; + this.eof = dfa_1; + this.min = dfa_2; + this.max = dfa_3; + this.accept = dfa_4; + this.special = dfa_5; + this.transition = dfa_6; + } + public String getDescription() { + return "()* loopback of 2615:6: ( ({...}? => ( ({...}? => (otherlv_4= 'metamodel' otherlv_5= '=' ( (lv_metamodel_6_0= ruleMetamodel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_7= 'partial-model' otherlv_8= '=' ( (lv_partialModel_9_0= rulePartialModel ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'patterns' otherlv_11= '=' ( (lv_patterns_12_0= ruleGraphPattern ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_13= 'scope' otherlv_14= '=' ( (lv_scope_15_0= ruleScope ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'number' otherlv_17= '=' ( (lv_number_18_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_19= 'runs' otherlv_20= '=' ( (lv_runs_21_0= RULE_INT ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_22= 'solver' otherlv_23= '=' ( (lv_solver_24_0= ruleSolver ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_25= 'config' otherlv_26= '=' ( (lv_config_27_0= ruleConfig ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_28= 'output' otherlv_29= '=' ( (lv_tagetFolder_30_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_31= 'debug' otherlv_32= '=' ( (lv_debugFolder_33_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_34= 'log' otherlv_35= '=' ( (lv_targetLogFile_36_0= ruleFile ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_37= 'statistics' otherlv_38= '=' ( (lv_targetStatisticsFile_39_0= ruleFile ) ) ) ) ) ) )*"; + } + public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { + TokenStream input = (TokenStream)_input; + int _s = s; + switch ( s ) { + case 0 : + int LA37_0 = input.LA(1); + + + int index37_0 = input.index(); + input.rewind(); + s = -1; + if ( (LA37_0==19) ) {s = 1;} + + else if ( LA37_0 == 23 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 0) ) {s = 2;} + + else if ( LA37_0 == 25 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 1) ) {s = 3;} + + else if ( LA37_0 == 26 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 2) ) {s = 4;} + + else if ( LA37_0 == 37 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 3) ) {s = 5;} + + else if ( LA37_0 == 39 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 4) ) {s = 6;} + + else if ( LA37_0 == 40 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 5) ) {s = 7;} + + else if ( LA37_0 == 41 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 6) ) {s = 8;} + + else if ( LA37_0 == 27 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 7) ) {s = 9;} + + else if ( LA37_0 == 42 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 8) ) {s = 10;} + + else if ( LA37_0 == 43 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 9) ) {s = 11;} + + else if ( LA37_0 == 44 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 10) ) {s = 12;} + + else if ( LA37_0 == 45 && getUnorderedGroupHelper().canSelect(grammarAccess.getGenerationTaskAccess().getUnorderedGroup_3(), 11) ) {s = 13;} + + + input.seek(index37_0); + if ( s>=0 ) return s; + break; + } + if (state.backtracking>0) {state.failed=true; return -1;} + NoViableAltException nvae = + new NoViableAltException(getDescription(), 37, _s, input); + error(nvae); + throw nvae; + } + } public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x0000000000200802L}); - public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000200002L}); - public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000001000L}); + public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x000000600E809002L}); + public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x000000600E808002L}); + public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000000802L}); public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000000010L}); public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000002000L}); - public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000020020L}); - public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000018000L}); - public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000000020L}); - public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000040002L}); - public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000004000L}); - public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000100002L}); - -} \ No newline at end of file + public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000000020L}); + public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000004000L}); + public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000010000L}); + public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000100010L}); + public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x00000000000C0000L}); + public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000200002L}); + public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000400000L}); + public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000001000030L}); + public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000000030L}); + public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000080020L}); + public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000040080040L}); + public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000040000040L}); + public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000030000000L}); + public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000040000000L}); + public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000001E80000000L}); + public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000030000002L}); + public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000100000000L}); + public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x00003FA00E880000L}); + public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000000000020010L}); + public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0001C00000000000L}); + +} -- cgit v1.2.3-70-g09d2