/* * generated by Xtext 2.10.0 */ grammar InternalApplicationConfiguration; options { superClass=AbstractInternalContentAssistParser; } @lexer::header { package hu.bme.mit.inf.dslreasoner.application.ide.contentassist.antlr.internal; // Hack: Use our own Lexer superclass by means of import. // Currently there is no other way to specify the superclass for the lexer. import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer; } @parser::header { package hu.bme.mit.inf.dslreasoner.application.ide.contentassist.antlr.internal; import java.io.InputStream; import org.eclipse.xtext.*; import org.eclipse.xtext.parser.*; import org.eclipse.xtext.parser.impl.*; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.emf.ecore.EObject; import org.eclipse.xtext.parser.antlr.XtextTokenStream; import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser; import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.DFA; import hu.bme.mit.inf.dslreasoner.application.services.ApplicationConfigurationGrammarAccess; } @parser::members { private ApplicationConfigurationGrammarAccess grammarAccess; public void setGrammarAccess(ApplicationConfigurationGrammarAccess grammarAccess) { this.grammarAccess = grammarAccess; } @Override protected Grammar getGrammar() { return grammarAccess.getGrammar(); } @Override protected String getValueForTokenName(String tokenName) { return tokenName; } } // Entry rule entryRuleConfigurationScript entryRuleConfigurationScript : { before(grammarAccess.getConfigurationScriptRule()); } ruleConfigurationScript { after(grammarAccess.getConfigurationScriptRule()); } EOF ; // Rule ConfigurationScript ruleConfigurationScript @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getConfigurationScriptAccess().getGroup()); } (rule__ConfigurationScript__Group__0) { after(grammarAccess.getConfigurationScriptAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleCommand entryRuleCommand : { before(grammarAccess.getCommandRule()); } ruleCommand { after(grammarAccess.getCommandRule()); } EOF ; // Rule Command ruleCommand @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getCommandAccess().getDeclarationParserRuleCall()); } ruleDeclaration { after(grammarAccess.getCommandAccess().getDeclarationParserRuleCall()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleDeclaration entryRuleDeclaration : { before(grammarAccess.getDeclarationRule()); } ruleDeclaration { after(grammarAccess.getDeclarationRule()); } EOF ; // Rule Declaration ruleDeclaration @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getDeclarationAccess().getMetamodelDeclarationParserRuleCall()); } ruleMetamodelDeclaration { after(grammarAccess.getDeclarationAccess().getMetamodelDeclarationParserRuleCall()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleImport entryRuleImport : { before(grammarAccess.getImportRule()); } ruleImport { after(grammarAccess.getImportRule()); } EOF ; // Rule Import ruleImport @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getImportAccess().getAlternatives()); } (rule__Import__Alternatives) { after(grammarAccess.getImportAccess().getAlternatives()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleEPackageImport entryRuleEPackageImport : { before(grammarAccess.getEPackageImportRule()); } ruleEPackageImport { after(grammarAccess.getEPackageImportRule()); } EOF ; // Rule EPackageImport ruleEPackageImport @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getEPackageImportAccess().getGroup()); } (rule__EPackageImport__Group__0) { after(grammarAccess.getEPackageImportAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleViatraImport entryRuleViatraImport : { before(grammarAccess.getViatraImportRule()); } ruleViatraImport { after(grammarAccess.getViatraImportRule()); } EOF ; // Rule ViatraImport ruleViatraImport @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getViatraImportAccess().getGroup()); } (rule__ViatraImport__Group__0) { after(grammarAccess.getViatraImportAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleMetamodelSpecification entryRuleMetamodelSpecification : { before(grammarAccess.getMetamodelSpecificationRule()); } ruleMetamodelSpecification { after(grammarAccess.getMetamodelSpecificationRule()); } EOF ; // Rule MetamodelSpecification ruleMetamodelSpecification @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelSpecificationAccess().getGroup()); } (rule__MetamodelSpecification__Group__0) { after(grammarAccess.getMetamodelSpecificationAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleMetamodelEntry entryRuleMetamodelEntry : { before(grammarAccess.getMetamodelEntryRule()); } ruleMetamodelEntry { after(grammarAccess.getMetamodelEntryRule()); } EOF ; // Rule MetamodelEntry ruleMetamodelEntry @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelEntryAccess().getAlternatives()); } (rule__MetamodelEntry__Alternatives) { after(grammarAccess.getMetamodelEntryAccess().getAlternatives()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleAllPackageEntry entryRuleAllPackageEntry : { before(grammarAccess.getAllPackageEntryRule()); } ruleAllPackageEntry { after(grammarAccess.getAllPackageEntryRule()); } EOF ; // Rule AllPackageEntry ruleAllPackageEntry @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getGroup()); } (rule__AllPackageEntry__Group__0) { after(grammarAccess.getAllPackageEntryAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleMetamodelElement entryRuleMetamodelElement : { before(grammarAccess.getMetamodelElementRule()); } ruleMetamodelElement { after(grammarAccess.getMetamodelElementRule()); } EOF ; // Rule MetamodelElement ruleMetamodelElement @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getGroup()); } (rule__MetamodelElement__Group__0) { after(grammarAccess.getMetamodelElementAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleMetamodelDeclaration entryRuleMetamodelDeclaration : { before(grammarAccess.getMetamodelDeclarationRule()); } ruleMetamodelDeclaration { after(grammarAccess.getMetamodelDeclarationRule()); } EOF ; // Rule MetamodelDeclaration ruleMetamodelDeclaration @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelDeclarationAccess().getGroup()); } (rule__MetamodelDeclaration__Group__0) { after(grammarAccess.getMetamodelDeclarationAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } // Entry rule entryRuleMetamodelReference entryRuleMetamodelReference : { before(grammarAccess.getMetamodelReferenceRule()); } ruleMetamodelReference { after(grammarAccess.getMetamodelReferenceRule()); } EOF ; // Rule MetamodelReference ruleMetamodelReference @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelReferenceAccess().getReferredAssignment()); } (rule__MetamodelReference__ReferredAssignment) { after(grammarAccess.getMetamodelReferenceAccess().getReferredAssignment()); } ) ; finally { restoreStackSize(stackSize); } rule__Import__Alternatives @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getImportAccess().getEPackageImportParserRuleCall_0()); } ruleEPackageImport { after(grammarAccess.getImportAccess().getEPackageImportParserRuleCall_0()); } ) | ( { before(grammarAccess.getImportAccess().getViatraImportParserRuleCall_1()); } ruleViatraImport { after(grammarAccess.getImportAccess().getViatraImportParserRuleCall_1()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelEntry__Alternatives @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelEntryAccess().getMetamodelElementParserRuleCall_0()); } ruleMetamodelElement { after(grammarAccess.getMetamodelEntryAccess().getMetamodelElementParserRuleCall_0()); } ) | ( { before(grammarAccess.getMetamodelEntryAccess().getAllPackageEntryParserRuleCall_1()); } ruleAllPackageEntry { after(grammarAccess.getMetamodelEntryAccess().getAllPackageEntryParserRuleCall_1()); } ) ; finally { restoreStackSize(stackSize); } rule__ConfigurationScript__Group__0 @init { int stackSize = keepStackSize(); } : rule__ConfigurationScript__Group__0__Impl rule__ConfigurationScript__Group__1 ; finally { restoreStackSize(stackSize); } rule__ConfigurationScript__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getConfigurationScriptAccess().getImportsAssignment_0()); } (rule__ConfigurationScript__ImportsAssignment_0)* { after(grammarAccess.getConfigurationScriptAccess().getImportsAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } rule__ConfigurationScript__Group__1 @init { int stackSize = keepStackSize(); } : rule__ConfigurationScript__Group__1__Impl ; finally { restoreStackSize(stackSize); } rule__ConfigurationScript__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getConfigurationScriptAccess().getCommandsAssignment_1()); } (rule__ConfigurationScript__CommandsAssignment_1)* { after(grammarAccess.getConfigurationScriptAccess().getCommandsAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } rule__EPackageImport__Group__0 @init { int stackSize = keepStackSize(); } : rule__EPackageImport__Group__0__Impl rule__EPackageImport__Group__1 ; finally { restoreStackSize(stackSize); } rule__EPackageImport__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getEPackageImportAccess().getImportKeyword_0()); } 'import' { after(grammarAccess.getEPackageImportAccess().getImportKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } rule__EPackageImport__Group__1 @init { int stackSize = keepStackSize(); } : rule__EPackageImport__Group__1__Impl rule__EPackageImport__Group__2 ; finally { restoreStackSize(stackSize); } rule__EPackageImport__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getEPackageImportAccess().getEpackageKeyword_1()); } 'epackage' { after(grammarAccess.getEPackageImportAccess().getEpackageKeyword_1()); } ) ; finally { restoreStackSize(stackSize); } rule__EPackageImport__Group__2 @init { int stackSize = keepStackSize(); } : rule__EPackageImport__Group__2__Impl ; finally { restoreStackSize(stackSize); } rule__EPackageImport__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getEPackageImportAccess().getImportedPackageAssignment_2()); } (rule__EPackageImport__ImportedPackageAssignment_2) { after(grammarAccess.getEPackageImportAccess().getImportedPackageAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } rule__ViatraImport__Group__0 @init { int stackSize = keepStackSize(); } : rule__ViatraImport__Group__0__Impl rule__ViatraImport__Group__1 ; finally { restoreStackSize(stackSize); } rule__ViatraImport__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getViatraImportAccess().getImportKeyword_0()); } 'import' { after(grammarAccess.getViatraImportAccess().getImportKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } rule__ViatraImport__Group__1 @init { int stackSize = keepStackSize(); } : rule__ViatraImport__Group__1__Impl rule__ViatraImport__Group__2 ; finally { restoreStackSize(stackSize); } rule__ViatraImport__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getViatraImportAccess().getViatraKeyword_1()); } 'viatra' { after(grammarAccess.getViatraImportAccess().getViatraKeyword_1()); } ) ; finally { restoreStackSize(stackSize); } rule__ViatraImport__Group__2 @init { int stackSize = keepStackSize(); } : rule__ViatraImport__Group__2__Impl ; finally { restoreStackSize(stackSize); } rule__ViatraImport__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getViatraImportAccess().getImportedViatraAssignment_2()); } (rule__ViatraImport__ImportedViatraAssignment_2) { after(grammarAccess.getViatraImportAccess().getImportedViatraAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group__0 @init { int stackSize = keepStackSize(); } : rule__MetamodelSpecification__Group__0__Impl rule__MetamodelSpecification__Group__1 ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelSpecificationAccess().getLeftCurlyBracketKeyword_0()); } '{' { after(grammarAccess.getMetamodelSpecificationAccess().getLeftCurlyBracketKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group__1 @init { int stackSize = keepStackSize(); } : rule__MetamodelSpecification__Group__1__Impl rule__MetamodelSpecification__Group__2 ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelSpecificationAccess().getEntriesAssignment_1()); } (rule__MetamodelSpecification__EntriesAssignment_1) { after(grammarAccess.getMetamodelSpecificationAccess().getEntriesAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group__2 @init { int stackSize = keepStackSize(); } : rule__MetamodelSpecification__Group__2__Impl rule__MetamodelSpecification__Group__3 ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelSpecificationAccess().getGroup_2()); } (rule__MetamodelSpecification__Group_2__0)* { after(grammarAccess.getMetamodelSpecificationAccess().getGroup_2()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group__3 @init { int stackSize = keepStackSize(); } : rule__MetamodelSpecification__Group__3__Impl ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelSpecificationAccess().getRightCurlyBracketKeyword_3()); } '}' { after(grammarAccess.getMetamodelSpecificationAccess().getRightCurlyBracketKeyword_3()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group_2__0 @init { int stackSize = keepStackSize(); } : rule__MetamodelSpecification__Group_2__0__Impl rule__MetamodelSpecification__Group_2__1 ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group_2__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelSpecificationAccess().getCommaKeyword_2_0()); } ',' { after(grammarAccess.getMetamodelSpecificationAccess().getCommaKeyword_2_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group_2__1 @init { int stackSize = keepStackSize(); } : rule__MetamodelSpecification__Group_2__1__Impl ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__Group_2__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelSpecificationAccess().getEntriesAssignment_2_1()); } (rule__MetamodelSpecification__EntriesAssignment_2_1) { after(grammarAccess.getMetamodelSpecificationAccess().getEntriesAssignment_2_1()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group__0 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group__0__Impl rule__AllPackageEntry__Group__1 ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getPackageKeyword_0()); } 'package' { after(grammarAccess.getAllPackageEntryAccess().getPackageKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group__1 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group__1__Impl rule__AllPackageEntry__Group__2 ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getPackageAssignment_1()); } (rule__AllPackageEntry__PackageAssignment_1) { after(grammarAccess.getAllPackageEntryAccess().getPackageAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group__2 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group__2__Impl ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getGroup_2()); } (rule__AllPackageEntry__Group_2__0)? { after(grammarAccess.getAllPackageEntryAccess().getGroup_2()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__0 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group_2__0__Impl rule__AllPackageEntry__Group_2__1 ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getExcludingKeyword_2_0()); } 'excluding' { after(grammarAccess.getAllPackageEntryAccess().getExcludingKeyword_2_0()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__1 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group_2__1__Impl rule__AllPackageEntry__Group_2__2 ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getLeftCurlyBracketKeyword_2_1()); } '{' { after(grammarAccess.getAllPackageEntryAccess().getLeftCurlyBracketKeyword_2_1()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__2 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group_2__2__Impl rule__AllPackageEntry__Group_2__3 ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__2__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getExclusionAssignment_2_2()); } (rule__AllPackageEntry__ExclusionAssignment_2_2) { after(grammarAccess.getAllPackageEntryAccess().getExclusionAssignment_2_2()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__3 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group_2__3__Impl rule__AllPackageEntry__Group_2__4 ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__3__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getGroup_2_3()); } (rule__AllPackageEntry__Group_2_3__0)* { after(grammarAccess.getAllPackageEntryAccess().getGroup_2_3()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__4 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group_2__4__Impl ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2__4__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getRightCurlyBracketKeyword_2_4()); } '}' { after(grammarAccess.getAllPackageEntryAccess().getRightCurlyBracketKeyword_2_4()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2_3__0 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group_2_3__0__Impl rule__AllPackageEntry__Group_2_3__1 ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2_3__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getCommaKeyword_2_3_0()); } ',' { after(grammarAccess.getAllPackageEntryAccess().getCommaKeyword_2_3_0()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2_3__1 @init { int stackSize = keepStackSize(); } : rule__AllPackageEntry__Group_2_3__1__Impl ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__Group_2_3__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getExclusionAssignment_2_3_1()); } (rule__AllPackageEntry__ExclusionAssignment_2_3_1) { after(grammarAccess.getAllPackageEntryAccess().getExclusionAssignment_2_3_1()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group__0 @init { int stackSize = keepStackSize(); } : rule__MetamodelElement__Group__0__Impl rule__MetamodelElement__Group__1 ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getGroup_0()); } (rule__MetamodelElement__Group_0__0)? { after(grammarAccess.getMetamodelElementAccess().getGroup_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group__1 @init { int stackSize = keepStackSize(); } : rule__MetamodelElement__Group__1__Impl rule__MetamodelElement__Group__2 ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getClassifierAssignment_1()); } (rule__MetamodelElement__ClassifierAssignment_1) { after(grammarAccess.getMetamodelElementAccess().getClassifierAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group__2 @init { int stackSize = keepStackSize(); } : rule__MetamodelElement__Group__2__Impl ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getGroup_2()); } (rule__MetamodelElement__Group_2__0)? { after(grammarAccess.getMetamodelElementAccess().getGroup_2()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group_0__0 @init { int stackSize = keepStackSize(); } : rule__MetamodelElement__Group_0__0__Impl rule__MetamodelElement__Group_0__1 ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group_0__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getPackageAssignment_0_0()); } (rule__MetamodelElement__PackageAssignment_0_0) { after(grammarAccess.getMetamodelElementAccess().getPackageAssignment_0_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group_0__1 @init { int stackSize = keepStackSize(); } : rule__MetamodelElement__Group_0__1__Impl ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group_0__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getColonColonKeyword_0_1()); } '::' { after(grammarAccess.getMetamodelElementAccess().getColonColonKeyword_0_1()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group_2__0 @init { int stackSize = keepStackSize(); } : rule__MetamodelElement__Group_2__0__Impl rule__MetamodelElement__Group_2__1 ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group_2__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getFullStopKeyword_2_0()); } '.' { after(grammarAccess.getMetamodelElementAccess().getFullStopKeyword_2_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group_2__1 @init { int stackSize = keepStackSize(); } : rule__MetamodelElement__Group_2__1__Impl ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__Group_2__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getFeatureAssignment_2_1()); } (rule__MetamodelElement__FeatureAssignment_2_1) { after(grammarAccess.getMetamodelElementAccess().getFeatureAssignment_2_1()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelDeclaration__Group__0 @init { int stackSize = keepStackSize(); } : rule__MetamodelDeclaration__Group__0__Impl rule__MetamodelDeclaration__Group__1 ; finally { restoreStackSize(stackSize); } rule__MetamodelDeclaration__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelDeclarationAccess().getMetamodelKeyword_0()); } 'metamodel' { after(grammarAccess.getMetamodelDeclarationAccess().getMetamodelKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelDeclaration__Group__1 @init { int stackSize = keepStackSize(); } : rule__MetamodelDeclaration__Group__1__Impl rule__MetamodelDeclaration__Group__2 ; finally { restoreStackSize(stackSize); } rule__MetamodelDeclaration__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelDeclarationAccess().getNameAssignment_1()); } (rule__MetamodelDeclaration__NameAssignment_1) { after(grammarAccess.getMetamodelDeclarationAccess().getNameAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelDeclaration__Group__2 @init { int stackSize = keepStackSize(); } : rule__MetamodelDeclaration__Group__2__Impl ; finally { restoreStackSize(stackSize); } rule__MetamodelDeclaration__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelDeclarationAccess().getSpecificationAssignment_2()); } (rule__MetamodelDeclaration__SpecificationAssignment_2) { after(grammarAccess.getMetamodelDeclarationAccess().getSpecificationAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } rule__ConfigurationScript__ImportsAssignment_0 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getConfigurationScriptAccess().getImportsImportParserRuleCall_0_0()); } ruleImport { after(grammarAccess.getConfigurationScriptAccess().getImportsImportParserRuleCall_0_0()); } ) ; finally { restoreStackSize(stackSize); } rule__ConfigurationScript__CommandsAssignment_1 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getConfigurationScriptAccess().getCommandsCommandParserRuleCall_1_0()); } ruleCommand { after(grammarAccess.getConfigurationScriptAccess().getCommandsCommandParserRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } rule__EPackageImport__ImportedPackageAssignment_2 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getEPackageImportAccess().getImportedPackageEPackageCrossReference_2_0()); } ( { before(grammarAccess.getEPackageImportAccess().getImportedPackageEPackageSTRINGTerminalRuleCall_2_0_1()); } RULE_STRING { after(grammarAccess.getEPackageImportAccess().getImportedPackageEPackageSTRINGTerminalRuleCall_2_0_1()); } ) { after(grammarAccess.getEPackageImportAccess().getImportedPackageEPackageCrossReference_2_0()); } ) ; finally { restoreStackSize(stackSize); } rule__ViatraImport__ImportedViatraAssignment_2 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getViatraImportAccess().getImportedViatraPatternModelCrossReference_2_0()); } ( { before(grammarAccess.getViatraImportAccess().getImportedViatraPatternModelSTRINGTerminalRuleCall_2_0_1()); } RULE_STRING { after(grammarAccess.getViatraImportAccess().getImportedViatraPatternModelSTRINGTerminalRuleCall_2_0_1()); } ) { after(grammarAccess.getViatraImportAccess().getImportedViatraPatternModelCrossReference_2_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__EntriesAssignment_1 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelSpecificationAccess().getEntriesMetamodelEntryParserRuleCall_1_0()); } ruleMetamodelEntry { after(grammarAccess.getMetamodelSpecificationAccess().getEntriesMetamodelEntryParserRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelSpecification__EntriesAssignment_2_1 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelSpecificationAccess().getEntriesMetamodelEntryParserRuleCall_2_1_0()); } ruleMetamodelEntry { after(grammarAccess.getMetamodelSpecificationAccess().getEntriesMetamodelEntryParserRuleCall_2_1_0()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__PackageAssignment_1 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getPackageEPackageCrossReference_1_0()); } ( { before(grammarAccess.getAllPackageEntryAccess().getPackageEPackageIDTerminalRuleCall_1_0_1()); } RULE_ID { after(grammarAccess.getAllPackageEntryAccess().getPackageEPackageIDTerminalRuleCall_1_0_1()); } ) { after(grammarAccess.getAllPackageEntryAccess().getPackageEPackageCrossReference_1_0()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__ExclusionAssignment_2_2 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getExclusionMetamodelElementParserRuleCall_2_2_0()); } ruleMetamodelElement { after(grammarAccess.getAllPackageEntryAccess().getExclusionMetamodelElementParserRuleCall_2_2_0()); } ) ; finally { restoreStackSize(stackSize); } rule__AllPackageEntry__ExclusionAssignment_2_3_1 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getAllPackageEntryAccess().getExclusionMetamodelElementParserRuleCall_2_3_1_0()); } ruleMetamodelElement { after(grammarAccess.getAllPackageEntryAccess().getExclusionMetamodelElementParserRuleCall_2_3_1_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__PackageAssignment_0_0 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getPackageEPackageCrossReference_0_0_0()); } ( { before(grammarAccess.getMetamodelElementAccess().getPackageEPackageIDTerminalRuleCall_0_0_0_1()); } RULE_ID { after(grammarAccess.getMetamodelElementAccess().getPackageEPackageIDTerminalRuleCall_0_0_0_1()); } ) { after(grammarAccess.getMetamodelElementAccess().getPackageEPackageCrossReference_0_0_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__ClassifierAssignment_1 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getClassifierEClassifierCrossReference_1_0()); } ( { before(grammarAccess.getMetamodelElementAccess().getClassifierEClassifierIDTerminalRuleCall_1_0_1()); } RULE_ID { after(grammarAccess.getMetamodelElementAccess().getClassifierEClassifierIDTerminalRuleCall_1_0_1()); } ) { after(grammarAccess.getMetamodelElementAccess().getClassifierEClassifierCrossReference_1_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelElement__FeatureAssignment_2_1 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelElementAccess().getFeatureENamedElementCrossReference_2_1_0()); } ( { before(grammarAccess.getMetamodelElementAccess().getFeatureENamedElementIDTerminalRuleCall_2_1_0_1()); } RULE_ID { after(grammarAccess.getMetamodelElementAccess().getFeatureENamedElementIDTerminalRuleCall_2_1_0_1()); } ) { after(grammarAccess.getMetamodelElementAccess().getFeatureENamedElementCrossReference_2_1_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelDeclaration__NameAssignment_1 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelDeclarationAccess().getNameIDTerminalRuleCall_1_0()); } RULE_ID { after(grammarAccess.getMetamodelDeclarationAccess().getNameIDTerminalRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelDeclaration__SpecificationAssignment_2 @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelDeclarationAccess().getSpecificationMetamodelSpecificationParserRuleCall_2_0()); } ruleMetamodelSpecification { after(grammarAccess.getMetamodelDeclarationAccess().getSpecificationMetamodelSpecificationParserRuleCall_2_0()); } ) ; finally { restoreStackSize(stackSize); } rule__MetamodelReference__ReferredAssignment @init { int stackSize = keepStackSize(); } : ( { before(grammarAccess.getMetamodelReferenceAccess().getReferredMetamodelDeclarationCrossReference_0()); } ( { before(grammarAccess.getMetamodelReferenceAccess().getReferredMetamodelDeclarationIDTerminalRuleCall_0_1()); } RULE_ID { after(grammarAccess.getMetamodelReferenceAccess().getReferredMetamodelDeclarationIDTerminalRuleCall_0_1()); } ) { after(grammarAccess.getMetamodelReferenceAccess().getReferredMetamodelDeclarationCrossReference_0()); } ) ; finally { restoreStackSize(stackSize); } RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; RULE_STRING : ('"' ('\\' .|~(('\\'|'"')))* '"'|'\'' ('\\' .|~(('\\'|'\'')))* '\''); RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/'; RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?; RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .;