| author | szarnekow | 2009-01-13 04:20:12 (EST) |
|---|---|---|
| committer | sefftinge | 2009-01-13 04:20:12 (EST) |
| commit | 5cd94f53aeb55c3b3eda76591d43066aa00bb03c (patch) (side-by-side diff) | |
| tree | f8703ac63918c618b1e2f64423ef43a741d81c6d | |
| parent | 32a0e7f2ce427473714405cb46dc2e1bd7e9ddac (diff) | |
| download | org.eclipse.xtext-5cd94f53aeb55c3b3eda76591d43066aa00bb03c.zip org.eclipse.xtext-5cd94f53aeb55c3b3eda76591d43066aa00bb03c.tar.gz org.eclipse.xtext-5cd94f53aeb55c3b3eda76591d43066aa00bb03c.tar.bz2 | |
PackratParserGen - first draft
* several refactorings to make parser more pluggable - remove some dependencies to antlr runtime
653 files changed, 86011 insertions, 63249 deletions
diff --git a/devtools/org.eclipse.xtext.reference/META-INF/MANIFEST.MF b/devtools/org.eclipse.xtext.reference/META-INF/MANIFEST.MF index 8206e2a..3380910 100644 --- a/devtools/org.eclipse.xtext.reference/META-INF/MANIFEST.MF +++ b/devtools/org.eclipse.xtext.reference/META-INF/MANIFEST.MF @@ -7,10 +7,8 @@ Bundle-Version: 0.7.0.qualifier Eclipse-RegisterBuddy: org.eclipse.xtext.log4j Bundle-RequiredExecutionEnvironment: J2SE-1.5 Bundle-ActivationPolicy: lazy -Export-Package: org.eclipse.xtext.reference, - ReferenceModel, - org.eclipse.xtext.reference.parser, - org.eclipse.xtext.reference.parser.internal, +Export-Package: ReferenceModel, + org.eclipse.xtext.reference, org.eclipse.xtext.reference.parsetree.reconstr, org.eclipse.xtext.reference.services Require-Bundle: org.eclipse.xtext.log4j;bundle-version="1.2.15", diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/AbstractReferenceGrammarRuntimeConfig.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/AbstractReferenceGrammarRuntimeConfig.java index de21bdb..2c2a9c0 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/AbstractReferenceGrammarRuntimeConfig.java +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/AbstractReferenceGrammarRuntimeConfig.java @@ -17,16 +17,20 @@ public abstract class AbstractReferenceGrammarRuntimeConfig extends AbstractServ return org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.class; } + protected Class<? extends org.eclipse.xtext.parser.packrat.IPackratParser> getIPackratParser() { + return org.eclipse.xtext.reference.parser.packrat.ReferenceGrammarPackratParser.class; + } + protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() { - return org.eclipse.xtext.parser.GenericEcoreElementFactory.class; + return org.eclipse.xtext.parser.antlr.AntlrEcoreElementFactory.class; } protected Class<? extends org.eclipse.xtext.parser.IParser> getIParser() { - return org.eclipse.xtext.reference.parser.ReferenceGrammarParser.class; + return org.eclipse.xtext.reference.parser.antlr.ReferenceGrammarParser.class; } protected Class<? extends org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider> getIAntlrTokenFileProvider() { - return org.eclipse.xtext.reference.parser.ReferenceGrammarAntlrTokenFileProvider.class; + return org.eclipse.xtext.reference.parser.antlr.ReferenceGrammarAntlrTokenFileProvider.class; } protected Class<? extends org.eclipse.xtext.resource.IResourceFactory> getIResourceFactory() { @@ -50,7 +54,7 @@ public abstract class AbstractReferenceGrammarRuntimeConfig extends AbstractServ } protected Class<? extends org.eclipse.xtext.parser.antlr.Lexer> getLexer() { - return org.eclipse.xtext.reference.parser.internal.InternalReferenceGrammarLexer.class; + return org.eclipse.xtext.reference.parser.antlr.internal.InternalReferenceGrammarLexer.class; } @@ -58,6 +62,7 @@ public abstract class AbstractReferenceGrammarRuntimeConfig extends AbstractServ return scope(org.eclipse.xtext.reference.IReferenceGrammar.SCOPE) .with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess()) .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess()) + .with(org.eclipse.xtext.parser.packrat.IPackratParser.class, getIPackratParser()) .with(org.eclipse.xtext.parser.IAstFactory.class, getIAstFactory()) .with(org.eclipse.xtext.parser.IParser.class, getIParser()) .with(org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider.class, getIAntlrTokenFileProvider()) diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/ReferenceGrammar.xmi b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/ReferenceGrammar.xmi index 40de98a..aa9efdd 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/ReferenceGrammar.xmi +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/ReferenceGrammar.xmi @@ -180,6 +180,7 @@ <type metamodel="//@metamodelDeclarations.0"> <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Erwachsener"/> </type> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> </terminal> </abstractTokens> </abstractTokens> @@ -188,6 +189,7 @@ <type metamodel="//@metamodelDeclarations.0"> <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Erwachsener"/> </type> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> </terminal> </abstractTokens> </abstractTokens> @@ -196,6 +198,7 @@ <type metamodel="//@metamodelDeclarations.0"> <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Kind"/> </type> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> </terminal> </abstractTokens> </abstractTokens> @@ -206,6 +209,7 @@ <type metamodel="//@metamodelDeclarations.0"> <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Kind"/> </type> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> </terminal> </abstractTokens> </abstractTokens> diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/ReferenceGrammarAntlrTokenFileProvider.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/ReferenceGrammarAntlrTokenFileProvider.java deleted file mode 100644 index b94364d..0000000 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/ReferenceGrammarAntlrTokenFileProvider.java +++ b/dev/null @@ -1,15 +0,0 @@ -/* -Generated with Xtext -*/ -package org.eclipse.xtext.reference.parser; - -import java.io.InputStream; -import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider; - -public class ReferenceGrammarAntlrTokenFileProvider implements IAntlrTokenFileProvider { - - public InputStream getAntlrTokenFile() { - ClassLoader classLoader = ReferenceGrammarAntlrTokenFileProvider.class.getClassLoader(); - return classLoader.getResourceAsStream("org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.tokens"); - } -} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/ReferenceGrammarParser.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/ReferenceGrammarParser.java deleted file mode 100644 index 771f7cc..0000000 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/ReferenceGrammarParser.java +++ b/dev/null @@ -1,44 +0,0 @@ -/* -Generated with Xtext -*/ -package org.eclipse.xtext.reference.parser; - -import org.antlr.runtime.ANTLRInputStream; -import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider; -import org.eclipse.xtext.parser.IAstFactory; -import org.eclipse.xtext.parser.IParseResult; -import org.eclipse.xtext.parser.ParseException; -import org.eclipse.xtext.parser.antlr.XtextTokenStream; -import org.eclipse.xtext.service.Inject; - -import org.eclipse.xtext.reference.parser.internal.InternalReferenceGrammarLexer; -import org.eclipse.xtext.reference.parser.internal.InternalReferenceGrammarParser; - -public class ReferenceGrammarParser extends org.eclipse.xtext.parser.AbstractParser { - - @Inject - protected AntlrTokenDefProvider antlrTokenDefProvider; - - @Override - protected IParseResult parse(String ruleName, ANTLRInputStream in, IAstFactory factory) { - InternalReferenceGrammarLexer lexer = new InternalReferenceGrammarLexer(in); - XtextTokenStream stream = new XtextTokenStream(lexer); - InternalReferenceGrammarParser parser = new InternalReferenceGrammarParser( - stream, factory, grammarAccess.getGrammar()); - parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); - try { - if(ruleName != null) { - return parser.parse(ruleName); - } else { - return parser.parse(); - } - } catch (Exception re) { - throw new ParseException(re.getMessage(),re); - } - } - - @Override - protected String getDefaultRuleName() { - return "Spielplatz"; - } -} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarAntlrTokenFileProvider.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarAntlrTokenFileProvider.java new file mode 100644 index 0000000..9a20104 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarAntlrTokenFileProvider.java @@ -0,0 +1,15 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.antlr; + +import java.io.InputStream; +import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider; + +public class ReferenceGrammarAntlrTokenFileProvider implements IAntlrTokenFileProvider { + + public InputStream getAntlrTokenFile() { + ClassLoader classLoader = ReferenceGrammarAntlrTokenFileProvider.class.getClassLoader(); + return classLoader.getResourceAsStream("org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.tokens"); + } +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarParser.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarParser.java new file mode 100644 index 0000000..33dc1d6 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarParser.java @@ -0,0 +1,44 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.antlr; + +import org.antlr.runtime.ANTLRInputStream; +import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider; +import org.eclipse.xtext.parser.IAstFactory; +import org.eclipse.xtext.parser.IParseResult; +import org.eclipse.xtext.parser.ParseException; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import org.eclipse.xtext.service.Inject; + +import org.eclipse.xtext.reference.parser.antlr.internal.InternalReferenceGrammarLexer; +import org.eclipse.xtext.reference.parser.antlr.internal.InternalReferenceGrammarParser; + +public class ReferenceGrammarParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser { + + @Inject + protected AntlrTokenDefProvider antlrTokenDefProvider; + + @Override + protected IParseResult parse(String ruleName, ANTLRInputStream in, IAstFactory factory) { + InternalReferenceGrammarLexer lexer = new InternalReferenceGrammarLexer(in); + XtextTokenStream stream = new XtextTokenStream(lexer); + InternalReferenceGrammarParser parser = new InternalReferenceGrammarParser( + stream, factory, grammarAccess.getGrammar()); + parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); + try { + if(ruleName != null) { + return parser.parse(ruleName); + } else { + return parser.parse(); + } + } catch (Exception re) { + throw new ParseException(re.getMessage(),re); + } + } + + @Override + protected String getDefaultRuleName() { + return "Spielplatz"; + } +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g new file mode 100644 index 0000000..42e7e2d --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g @@ -0,0 +1,690 @@ +/* +Generated with Xtext +*/ +grammar InternalReferenceGrammar; + +options { + superClass=AbstractInternalAntlrParser; +} + +@lexer::header { +package org.eclipse.xtext.reference.parser.antlr.internal; + +// Hack: Use our own Lexer superclass by means of import. +// Currently there is no other way to specify the superclass for the lexer. +import org.eclipse.xtext.parser.antlr.Lexer; +} + +@parser::header { +package org.eclipse.xtext.reference.parser.antlr.internal; + +import java.io.InputStream; +import org.eclipse.xtext.*; +import org.eclipse.xtext.parser.*; +import org.eclipse.xtext.parser.impl.*; +import org.eclipse.xtext.parsetree.*; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken; +import org.eclipse.xtext.conversion.ValueConverterException; + +} + +@parser::members { + + public InternalReferenceGrammarParser(TokenStream input, IAstFactory factory, Grammar g) { + this(input); + this.factory = factory; + grammar = g; + } + + @Override + protected InputStream getTokenFile() { + ClassLoader classLoader = InternalReferenceGrammarParser.class.getClassLoader(); + return classLoader.getResourceAsStream("org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.tokens"); + } + + @Override + protected String getFirstRuleName() { + return "Spielplatz"; + } +} + +@rulecatch { + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } +} + + + + +// Entry rule entryRuleSpielplatz +entryRuleSpielplatz returns [EObject current=null] : + { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0" /* xtext::ParserRule */, currentNode); } + iv_ruleSpielplatz=ruleSpielplatz + { $current=$iv_ruleSpielplatz.current; } + EOF +; + +// Rule Spielplatz +ruleSpielplatz returns [EObject current=null] + @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } + @after { resetLookahead(); }: +((((('spielplatz' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + } +( + + lv_groesse=RULE_INT + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "groesse"); + } + + { + if ($current==null) { + $current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "groesse", lv_groesse, "INT", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +))( + + lv_beschreibung=RULE_STRING + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "beschreibung"); + } + + { + if ($current==null) { + $current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "beschreibung", lv_beschreibung, "STRING", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +)?)'{' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + } +)((((( + + + { + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.0/@groups.0/@terminal" /* xtext::RuleCall */, currentNode); + } + lv_kinder=ruleKind + { + if ($current==null) { + $current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), $current); + } + + try { + factory.add($current, "kinder", lv_kinder, "Kind", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + } + +) + |( + + + { + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); + } + lv_erzieher=ruleErwachsener + { + if ($current==null) { + $current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), $current); + } + + try { + factory.add($current, "erzieher", lv_erzieher, "Erwachsener", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + } + +)) + |( + + + { + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); + } + lv_spielzeuge=ruleSpielzeug + { + if ($current==null) { + $current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), $current); + } + + try { + factory.add($current, "spielzeuge", lv_spielzeuge, "Spielzeug", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + } + +)) + |( + + + { + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); + } + lv_familie=ruleFamilie + { + if ($current==null) { + $current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), $current); + } + + try { + factory.add($current, "familie", lv_familie, "Familie", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + } + +)) + |( + + + { + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); + } + lv_types=ruleCustomTypeParserRule + { + if ($current==null) { + $current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), $current); + } + + try { + factory.add($current, "types", lv_types, "CustomTypeParserRule", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + } + +))*)'}' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + } +)?; + + + + + + + +// Entry rule entryRuleKind +entryRuleKind returns [EObject current=null] : + { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2" /* xtext::ParserRule */, currentNode); } + iv_ruleKind=ruleKind + { $current=$iv_ruleKind.current; } + EOF +; + +// Rule Kind +ruleKind returns [EObject current=null] + @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } + @after { resetLookahead(); }: +(((('kind' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + } +'(' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + } +)( + + lv_name=RULE_ID + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); + } + + { + if ($current==null) { + $current = factory.create("Kind"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "name", lv_name, "ID", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +))( + + lv_age=RULE_INT + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "age"); + } + + { + if ($current==null) { + $current = factory.create("Kind"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "age", lv_age, "INT", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +))')' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + } +); + + + + + +// Entry rule entryRuleErwachsener +entryRuleErwachsener returns [EObject current=null] : + { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3" /* xtext::ParserRule */, currentNode); } + iv_ruleErwachsener=ruleErwachsener + { $current=$iv_ruleErwachsener.current; } + EOF +; + +// Rule Erwachsener +ruleErwachsener returns [EObject current=null] + @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } + @after { resetLookahead(); }: +(((('erwachsener' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + } +'(' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + } +)( + + lv_name=RULE_ID + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); + } + + { + if ($current==null) { + $current = factory.create("Erwachsener"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "name", lv_name, "ID", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +))( + + lv_age=RULE_INT + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "age"); + } + + { + if ($current==null) { + $current = factory.create("Erwachsener"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "age", lv_age, "INT", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +))')' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + } +); + + + + + +// Entry rule entryRuleSpielzeug +entryRuleSpielzeug returns [EObject current=null] : + { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4" /* xtext::ParserRule */, currentNode); } + iv_ruleSpielzeug=ruleSpielzeug + { $current=$iv_ruleSpielzeug.current; } + EOF +; + +// Rule Spielzeug +ruleSpielzeug returns [EObject current=null] + @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } + @after { resetLookahead(); }: +(((('spielzeug' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + } +'(' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + } +)( + + lv_name=RULE_ID + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); + } + + { + if ($current==null) { + $current = factory.create("Spielzeug"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "name", lv_name, "ID", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +))( + + + { + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); + } + lv_farbe=ruleFarbe + { + if ($current==null) { + $current = factory.create("Spielzeug"); + associateNodeWithAstElement(currentNode.getParent(), $current); + } + + try { + factory.set($current, "farbe", lv_farbe, "Farbe", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + } + +))')' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + } +); + + + + + +// Entry rule entryRuleFamilie +entryRuleFamilie returns [EObject current=null] : + { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5" /* xtext::ParserRule */, currentNode); } + iv_ruleFamilie=ruleFamilie + { $current=$iv_ruleFamilie.current; } + EOF +; + +// Rule Familie +ruleFamilie returns [EObject current=null] + @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } + @after { resetLookahead(); }: +((((((('familie' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + } +'(' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + } +)( + + lv_name=(('keyword' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.0" /* xtext::Keyword */, "name"); + } + + |RULE_STRING + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.1" /* xtext::RuleCall */, "name"); + } +) + |RULE_ID + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.1" /* xtext::RuleCall */, "name"); + } +) + { + if ($current==null) { + $current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "name", input.LT(-1), null, currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +))( + + + { + if ($current==null) { + $current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, $current); + } + } +( + RULE_ID { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "mutter"); + } +) + +))( + + + { + if ($current==null) { + $current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, $current); + } + } +( + RULE_ID { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "vater"); + } +) + +))( + + + { + if ($current==null) { + $current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, $current); + } + } +( + RULE_ID { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "kinder"); + } +) + +))(',' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + } +( + + + { + if ($current==null) { + $current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, $current); + } + } +( + RULE_ID { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "kinder"); + } +) + +))*)')' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + } +); + + + + + +// Entry rule entryRuleFarbe +entryRuleFarbe returns [EObject current=null] : + { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6" /* xtext::ParserRule */, currentNode); } + iv_ruleFarbe=ruleFarbe + { $current=$iv_ruleFarbe.current; } + EOF +; + +// Rule Farbe +ruleFarbe returns [EObject current=null] + @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } + @after { resetLookahead(); }: +( + + lv_wert=((('ROT' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.0/@groups.0" /* xtext::Keyword */, "wert"); + } + + |'BLAU' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.0/@groups.1" /* xtext::Keyword */, "wert"); + } +) + |'GELB' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.1" /* xtext::Keyword */, "wert"); + } +) + |'GRÜN' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.1" /* xtext::Keyword */, "wert"); + } +) + { + if ($current==null) { + $current = factory.create("Farbe"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "wert", input.LT(-1), null, currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +); + + + + + +// Entry rule entryRuleCustomTypeParserRule +entryRuleCustomTypeParserRule returns [EObject current=null] : + { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7" /* xtext::ParserRule */, currentNode); } + iv_ruleCustomTypeParserRule=ruleCustomTypeParserRule + { $current=$iv_ruleCustomTypeParserRule.current; } + EOF +; + +// Rule CustomTypeParserRule +ruleCustomTypeParserRule returns [EObject current=null] + @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } + @after { resetLookahead(); }: +('type' + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7/@alternatives/@abstractTokens.0" /* xtext::Keyword */, null); + } +( + + lv_name=RULE_ID + { + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7/@alternatives/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); + } + + { + if ($current==null) { + $current = factory.create("CustomType"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "name", lv_name, "ID", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +)); + + + + + +RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; + +RULE_INT : ('0'..'9')+; + +RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; + +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; + +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; + +RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; + +RULE_ANY_OTHER : .; + + diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.tokens b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.tokens index 5ee8a58..5ee8a58 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.tokens +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.tokens diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarLexer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarLexer.java new file mode 100644 index 0000000..1692650 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarLexer.java @@ -0,0 +1,1494 @@ +// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g 2009-01-13 09:50:00 + +package org.eclipse.xtext.reference.parser.antlr.internal; + +// Hack: Use our own Lexer superclass by means of import. +// Currently there is no other way to specify the superclass for the lexer. +import org.eclipse.xtext.parser.antlr.Lexer; + + +import org.antlr.runtime.*; +import java.util.Stack; +import java.util.List; +import java.util.ArrayList; + +public class InternalReferenceGrammarLexer extends Lexer { + public static final int T21=21; + public static final int RULE_ML_COMMENT=7; + public static final int T14=14; + public static final int RULE_ID=6; + public static final int T22=22; + public static final int T11=11; + public static final int RULE_STRING=5; + public static final int T12=12; + public static final int T23=23; + public static final int T13=13; + public static final int T20=20; + public static final int T25=25; + public static final int T18=18; + public static final int RULE_WS=9; + public static final int T26=26; + public static final int T15=15; + public static final int RULE_INT=4; + public static final int EOF=-1; + public static final int T17=17; + public static final int Tokens=27; + public static final int RULE_ANY_OTHER=10; + public static final int T16=16; + public static final int RULE_SL_COMMENT=8; + public static final int T24=24; + public static final int T19=19; + public InternalReferenceGrammarLexer() {;} + public InternalReferenceGrammarLexer(CharStream input) { + super(input); + } + public String getGrammarFileName() { return "./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g"; } + + // $ANTLR start T11 + public final void mT11() throws RecognitionException { + try { + int _type = T11; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:10:5: ( 'spielplatz' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:10:7: 'spielplatz' + { + match("spielplatz"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T11 + + // $ANTLR start T12 + public final void mT12() throws RecognitionException { + try { + int _type = T12; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:11:5: ( '{' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:11:7: '{' + { + match('{'); + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T12 + + // $ANTLR start T13 + public final void mT13() throws RecognitionException { + try { + int _type = T13; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:12:5: ( '}' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:12:7: '}' + { + match('}'); + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T13 + + // $ANTLR start T14 + public final void mT14() throws RecognitionException { + try { + int _type = T14; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:13:5: ( 'kind' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:13:7: 'kind' + { + match("kind"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T14 + + // $ANTLR start T15 + public final void mT15() throws RecognitionException { + try { + int _type = T15; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:14:5: ( '(' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:14:7: '(' + { + match('('); + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T15 + + // $ANTLR start T16 + public final void mT16() throws RecognitionException { + try { + int _type = T16; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:15:5: ( ')' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:15:7: ')' + { + match(')'); + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T16 + + // $ANTLR start T17 + public final void mT17() throws RecognitionException { + try { + int _type = T17; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:16:5: ( 'erwachsener' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:16:7: 'erwachsener' + { + match("erwachsener"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T17 + + // $ANTLR start T18 + public final void mT18() throws RecognitionException { + try { + int _type = T18; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:17:5: ( 'spielzeug' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:17:7: 'spielzeug' + { + match("spielzeug"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T18 + + // $ANTLR start T19 + public final void mT19() throws RecognitionException { + try { + int _type = T19; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:18:5: ( 'familie' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:18:7: 'familie' + { + match("familie"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T19 + + // $ANTLR start T20 + public final void mT20() throws RecognitionException { + try { + int _type = T20; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:19:5: ( 'keyword' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:19:7: 'keyword' + { + match("keyword"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T20 + + // $ANTLR start T21 + public final void mT21() throws RecognitionException { + try { + int _type = T21; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:20:5: ( ',' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:20:7: ',' + { + match(','); + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T21 + + // $ANTLR start T22 + public final void mT22() throws RecognitionException { + try { + int _type = T22; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:21:5: ( 'ROT' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:21:7: 'ROT' + { + match("ROT"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T22 + + // $ANTLR start T23 + public final void mT23() throws RecognitionException { + try { + int _type = T23; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:22:5: ( 'BLAU' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:22:7: 'BLAU' + { + match("BLAU"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T23 + + // $ANTLR start T24 + public final void mT24() throws RecognitionException { + try { + int _type = T24; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:23:5: ( 'GELB' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:23:7: 'GELB' + { + match("GELB"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T24 + + // $ANTLR start T25 + public final void mT25() throws RecognitionException { + try { + int _type = T25; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:24:5: ( 'GRÜN' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:24:7: 'GRÜN' + { + match("GRÜN"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T25 + + // $ANTLR start T26 + public final void mT26() throws RecognitionException { + try { + int _type = T26; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:25:5: ( 'type' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:25:7: 'type' + { + match("type"); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end T26 + + // $ANTLR start RULE_ID + public final void mRULE_ID() throws RecognitionException { + try { + int _type = RULE_ID; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:676:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:676:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:676:11: ( '^' )? + int alt1=2; + int LA1_0 = input.LA(1); + + if ( (LA1_0=='^') ) { + alt1=1; + } + switch (alt1) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:676:12: '^' + { + match('^'); + + } + break; + + } + + if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { + input.consume(); + + } + else { + MismatchedSetException mse = + new MismatchedSetException(null,input); + recover(mse); throw mse; + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:676:41: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + loop2: + do { + int alt2=2; + int LA2_0 = input.LA(1); + + if ( ((LA2_0>='0' && LA2_0<='9')||(LA2_0>='A' && LA2_0<='Z')||LA2_0=='_'||(LA2_0>='a' && LA2_0<='z')) ) { + alt2=1; + } + + + switch (alt2) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g: + { + if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { + input.consume(); + + } + else { + MismatchedSetException mse = + new MismatchedSetException(null,input); + recover(mse); throw mse; + } + + + } + break; + + default : + break loop2; + } + } while (true); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end RULE_ID + + // $ANTLR start RULE_INT + public final void mRULE_INT() throws RecognitionException { + try { + int _type = RULE_INT; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:678:10: ( ( '0' .. '9' )+ ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:678:12: ( '0' .. '9' )+ + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:678:12: ( '0' .. '9' )+ + int cnt3=0; + loop3: + do { + int alt3=2; + int LA3_0 = input.LA(1); + + if ( ((LA3_0>='0' && LA3_0<='9')) ) { + alt3=1; + } + + + switch (alt3) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:678:13: '0' .. '9' + { + matchRange('0','9'); + + } + break; + + default : + if ( cnt3 >= 1 ) break loop3; + EarlyExitException eee = + new EarlyExitException(3, input); + throw eee; + } + cnt3++; + } while (true); + + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end RULE_INT + + // $ANTLR start RULE_STRING + public final void mRULE_STRING() throws RecognitionException { + try { + int _type = RULE_STRING; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:680:13: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' ) + int alt6=2; + int LA6_0 = input.LA(1); + + if ( (LA6_0=='\"') ) { + alt6=1; + } + else if ( (LA6_0=='\'') ) { + alt6=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("680:1: RULE_STRING : ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' );", 6, 0, input); + + throw nvae; + } + switch (alt6) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:680:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + { + match('\"'); + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:680:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + loop4: + do { + int alt4=3; + int LA4_0 = input.LA(1); + + if ( (LA4_0=='\\') ) { + alt4=1; + } + else if ( ((LA4_0>='\u0000' && LA4_0<='!')||(LA4_0>='#' && LA4_0<='[')||(LA4_0>=']' && LA4_0<='\uFFFE')) ) { + alt4=2; + } + + + switch (alt4) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:680:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + { + match('\\'); + if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t' ) { + input.consume(); + + } + else { + MismatchedSetException mse = + new MismatchedSetException(null,input); + recover(mse); throw mse; + } + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:680:65: ~ ( '\\\\' | '\"' ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { + input.consume(); + + } + else { + MismatchedSetException mse = + new MismatchedSetException(null,input); + recover(mse); throw mse; + } + + + } + break; + + default : + break loop4; + } + } while (true); + + match('\"'); + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:680:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + { + match('\''); + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:680:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + loop5: + do { + int alt5=3; + int LA5_0 = input.LA(1); + + if ( (LA5_0=='\\') ) { + alt5=1; + } + else if ( ((LA5_0>='\u0000' && LA5_0<='&')||(LA5_0>='(' && LA5_0<='[')||(LA5_0>=']' && LA5_0<='\uFFFE')) ) { + alt5=2; + } + + + switch (alt5) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:680:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + { + match('\\'); + if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t' ) { + input.consume(); + + } + else { + MismatchedSetException mse = + new MismatchedSetException(null,input); + recover(mse); throw mse; + } + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:680:152: ~ ( '\\\\' | '\\'' ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { + input.consume(); + + } + else { + MismatchedSetException mse = + new MismatchedSetException(null,input); + recover(mse); throw mse; + } + + + } + break; + + default : + break loop5; + } + } while (true); + + match('\''); + + } + break; + + } + this.type = _type; + } + finally { + } + } + // $ANTLR end RULE_STRING + + // $ANTLR start RULE_ML_COMMENT + public final void mRULE_ML_COMMENT() throws RecognitionException { + try { + int _type = RULE_ML_COMMENT; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:682:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:682:19: '/*' ( options {greedy=false; } : . )* '*/' + { + match("/*"); + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:682:24: ( options {greedy=false; } : . )* + loop7: + do { + int alt7=2; + int LA7_0 = input.LA(1); + + if ( (LA7_0=='*') ) { + int LA7_1 = input.LA(2); + + if ( (LA7_1=='/') ) { + alt7=2; + } + else if ( ((LA7_1>='\u0000' && LA7_1<='.')||(LA7_1>='0' && LA7_1<='\uFFFE')) ) { + alt7=1; + } + + + } + else if ( ((LA7_0>='\u0000' && LA7_0<=')')||(LA7_0>='+' && LA7_0<='\uFFFE')) ) { + alt7=1; + } + + + switch (alt7) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:682:52: . + { + matchAny(); + + } + break; + + default : + break loop7; + } + } while (true); + + match("*/"); + + channel=HIDDEN; + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end RULE_ML_COMMENT + + // $ANTLR start RULE_SL_COMMENT + public final void mRULE_SL_COMMENT() throws RecognitionException { + try { + int _type = RULE_SL_COMMENT; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:684:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:684:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + { + match("//"); + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:684:24: (~ ( '\\n' | '\\r' ) )* + loop8: + do { + int alt8=2; + int LA8_0 = input.LA(1); + + if ( ((LA8_0>='\u0000' && LA8_0<='\t')||(LA8_0>='\u000B' && LA8_0<='\f')||(LA8_0>='\u000E' && LA8_0<='\uFFFE')) ) { + alt8=1; + } + + + switch (alt8) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:684: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)<='\uFFFE') ) { + input.consume(); + + } + else { + MismatchedSetException mse = + new MismatchedSetException(null,input); + recover(mse); throw mse; + } + + + } + break; + + default : + break loop8; + } + } while (true); + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:684:38: ( ( '\\r' )? '\\n' )? + int alt10=2; + int LA10_0 = input.LA(1); + + if ( (LA10_0=='\n'||LA10_0=='\r') ) { + alt10=1; + } + switch (alt10) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:684:39: ( '\\r' )? '\\n' + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:684:39: ( '\\r' )? + int alt9=2; + int LA9_0 = input.LA(1); + + if ( (LA9_0=='\r') ) { + alt9=1; + } + switch (alt9) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:684:39: '\\r' + { + match('\r'); + + } + break; + + } + + match('\n'); + + } + break; + + } + + channel=HIDDEN; + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end RULE_SL_COMMENT + + // $ANTLR start RULE_WS + public final void mRULE_WS() throws RecognitionException { + try { + int _type = RULE_WS; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:686:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:686:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:686:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + int cnt11=0; + loop11: + do { + int alt11=2; + int LA11_0 = input.LA(1); + + if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) { + alt11=1; + } + + + switch (alt11) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g: + { + if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) { + input.consume(); + + } + else { + MismatchedSetException mse = + new MismatchedSetException(null,input); + recover(mse); throw mse; + } + + + } + break; + + default : + if ( cnt11 >= 1 ) break loop11; + EarlyExitException eee = + new EarlyExitException(11, input); + throw eee; + } + cnt11++; + } while (true); + + channel=HIDDEN; + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end RULE_WS + + // $ANTLR start RULE_ANY_OTHER + public final void mRULE_ANY_OTHER() throws RecognitionException { + try { + int _type = RULE_ANY_OTHER; + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:688:16: ( . ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:688:18: . + { + matchAny(); + + } + + this.type = _type; + } + finally { + } + } + // $ANTLR end RULE_ANY_OTHER + + public void mTokens() throws RecognitionException { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:8: ( T11 | T12 | T13 | T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | T22 | T23 | T24 | T25 | T26 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) + int alt12=23; + int LA12_0 = input.LA(1); + + if ( (LA12_0=='s') ) { + int LA12_1 = input.LA(2); + + if ( (LA12_1=='p') ) { + int LA12_22 = input.LA(3); + + if ( (LA12_22=='i') ) { + int LA12_43 = input.LA(4); + + if ( (LA12_43=='e') ) { + int LA12_53 = input.LA(5); + + if ( (LA12_53=='l') ) { + switch ( input.LA(6) ) { + case 'z': + { + int LA12_70 = input.LA(7); + + if ( (LA12_70=='e') ) { + int LA12_75 = input.LA(8); + + if ( (LA12_75=='u') ) { + int LA12_80 = input.LA(9); + + if ( (LA12_80=='g') ) { + int LA12_85 = input.LA(10); + + if ( ((LA12_85>='0' && LA12_85<='9')||(LA12_85>='A' && LA12_85<='Z')||LA12_85=='_'||(LA12_85>='a' && LA12_85<='z')) ) { + alt12=17; + } + else { + alt12=8;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + break; + case 'p': + { + int LA12_71 = input.LA(7); + + if ( (LA12_71=='l') ) { + int LA12_76 = input.LA(8); + + if ( (LA12_76=='a') ) { + int LA12_81 = input.LA(9); + + if ( (LA12_81=='t') ) { + int LA12_86 = input.LA(10); + + if ( (LA12_86=='z') ) { + int LA12_89 = input.LA(11); + + if ( ((LA12_89>='0' && LA12_89<='9')||(LA12_89>='A' && LA12_89<='Z')||LA12_89=='_'||(LA12_89>='a' && LA12_89<='z')) ) { + alt12=17; + } + else { + alt12=1;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + break; + default: + alt12=17;} + + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else if ( (LA12_0=='{') ) { + alt12=2; + } + else if ( (LA12_0=='}') ) { + alt12=3; + } + else if ( (LA12_0=='k') ) { + switch ( input.LA(2) ) { + case 'i': + { + int LA12_26 = input.LA(3); + + if ( (LA12_26=='n') ) { + int LA12_44 = input.LA(4); + + if ( (LA12_44=='d') ) { + int LA12_54 = input.LA(5); + + if ( ((LA12_54>='0' && LA12_54<='9')||(LA12_54>='A' && LA12_54<='Z')||LA12_54=='_'||(LA12_54>='a' && LA12_54<='z')) ) { + alt12=17; + } + else { + alt12=4;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + break; + case 'e': + { + int LA12_27 = input.LA(3); + + if ( (LA12_27=='y') ) { + int LA12_45 = input.LA(4); + + if ( (LA12_45=='w') ) { + int LA12_55 = input.LA(5); + + if ( (LA12_55=='o') ) { + int LA12_64 = input.LA(6); + + if ( (LA12_64=='r') ) { + int LA12_72 = input.LA(7); + + if ( (LA12_72=='d') ) { + int LA12_77 = input.LA(8); + + if ( ((LA12_77>='0' && LA12_77<='9')||(LA12_77>='A' && LA12_77<='Z')||LA12_77=='_'||(LA12_77>='a' && LA12_77<='z')) ) { + alt12=17; + } + else { + alt12=10;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + break; + default: + alt12=17;} + + } + else if ( (LA12_0=='(') ) { + alt12=5; + } + else if ( (LA12_0==')') ) { + alt12=6; + } + else if ( (LA12_0=='e') ) { + int LA12_7 = input.LA(2); + + if ( (LA12_7=='r') ) { + int LA12_30 = input.LA(3); + + if ( (LA12_30=='w') ) { + int LA12_46 = input.LA(4); + + if ( (LA12_46=='a') ) { + int LA12_56 = input.LA(5); + + if ( (LA12_56=='c') ) { + int LA12_65 = input.LA(6); + + if ( (LA12_65=='h') ) { + int LA12_73 = input.LA(7); + + if ( (LA12_73=='s') ) { + int LA12_78 = input.LA(8); + + if ( (LA12_78=='e') ) { + int LA12_83 = input.LA(9); + + if ( (LA12_83=='n') ) { + int LA12_87 = input.LA(10); + + if ( (LA12_87=='e') ) { + int LA12_90 = input.LA(11); + + if ( (LA12_90=='r') ) { + int LA12_92 = input.LA(12); + + if ( ((LA12_92>='0' && LA12_92<='9')||(LA12_92>='A' && LA12_92<='Z')||LA12_92=='_'||(LA12_92>='a' && LA12_92<='z')) ) { + alt12=17; + } + else { + alt12=7;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else if ( (LA12_0=='f') ) { + int LA12_8 = input.LA(2); + + if ( (LA12_8=='a') ) { + int LA12_31 = input.LA(3); + + if ( (LA12_31=='m') ) { + int LA12_47 = input.LA(4); + + if ( (LA12_47=='i') ) { + int LA12_57 = input.LA(5); + + if ( (LA12_57=='l') ) { + int LA12_66 = input.LA(6); + + if ( (LA12_66=='i') ) { + int LA12_74 = input.LA(7); + + if ( (LA12_74=='e') ) { + int LA12_79 = input.LA(8); + + if ( ((LA12_79>='0' && LA12_79<='9')||(LA12_79>='A' && LA12_79<='Z')||LA12_79=='_'||(LA12_79>='a' && LA12_79<='z')) ) { + alt12=17; + } + else { + alt12=9;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else if ( (LA12_0==',') ) { + alt12=11; + } + else if ( (LA12_0=='R') ) { + int LA12_10 = input.LA(2); + + if ( (LA12_10=='O') ) { + int LA12_33 = input.LA(3); + + if ( (LA12_33=='T') ) { + int LA12_48 = input.LA(4); + + if ( ((LA12_48>='0' && LA12_48<='9')||(LA12_48>='A' && LA12_48<='Z')||LA12_48=='_'||(LA12_48>='a' && LA12_48<='z')) ) { + alt12=17; + } + else { + alt12=12;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else if ( (LA12_0=='B') ) { + int LA12_11 = input.LA(2); + + if ( (LA12_11=='L') ) { + int LA12_34 = input.LA(3); + + if ( (LA12_34=='A') ) { + int LA12_49 = input.LA(4); + + if ( (LA12_49=='U') ) { + int LA12_59 = input.LA(5); + + if ( ((LA12_59>='0' && LA12_59<='9')||(LA12_59>='A' && LA12_59<='Z')||LA12_59=='_'||(LA12_59>='a' && LA12_59<='z')) ) { + alt12=17; + } + else { + alt12=13;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else if ( (LA12_0=='G') ) { + switch ( input.LA(2) ) { + case 'R': + { + int LA12_35 = input.LA(3); + + if ( (LA12_35=='\u00DC') ) { + alt12=15; + } + else { + alt12=17;} + } + break; + case 'E': + { + int LA12_36 = input.LA(3); + + if ( (LA12_36=='L') ) { + int LA12_51 = input.LA(4); + + if ( (LA12_51=='B') ) { + int LA12_60 = input.LA(5); + + if ( ((LA12_60>='0' && LA12_60<='9')||(LA12_60>='A' && LA12_60<='Z')||LA12_60=='_'||(LA12_60>='a' && LA12_60<='z')) ) { + alt12=17; + } + else { + alt12=14;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + break; + default: + alt12=17;} + + } + else if ( (LA12_0=='t') ) { + int LA12_13 = input.LA(2); + + if ( (LA12_13=='y') ) { + int LA12_37 = input.LA(3); + + if ( (LA12_37=='p') ) { + int LA12_52 = input.LA(4); + + if ( (LA12_52=='e') ) { + int LA12_61 = input.LA(5); + + if ( ((LA12_61>='0' && LA12_61<='9')||(LA12_61>='A' && LA12_61<='Z')||LA12_61=='_'||(LA12_61>='a' && LA12_61<='z')) ) { + alt12=17; + } + else { + alt12=16;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else { + alt12=17;} + } + else if ( (LA12_0=='^') ) { + int LA12_14 = input.LA(2); + + if ( ((LA12_14>='A' && LA12_14<='Z')||LA12_14=='_'||(LA12_14>='a' && LA12_14<='z')) ) { + alt12=17; + } + else { + alt12=23;} + } + else if ( (LA12_0=='A'||(LA12_0>='C' && LA12_0<='F')||(LA12_0>='H' && LA12_0<='Q')||(LA12_0>='S' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='d')||(LA12_0>='g' && LA12_0<='j')||(LA12_0>='l' && LA12_0<='r')||(LA12_0>='u' && LA12_0<='z')) ) { + alt12=17; + } + else if ( ((LA12_0>='0' && LA12_0<='9')) ) { + alt12=18; + } + else if ( (LA12_0=='\"') ) { + int LA12_17 = input.LA(2); + + if ( ((LA12_17>='\u0000' && LA12_17<='\uFFFE')) ) { + alt12=19; + } + else { + alt12=23;} + } + else if ( (LA12_0=='\'') ) { + int LA12_18 = input.LA(2); + + if ( ((LA12_18>='\u0000' && LA12_18<='\uFFFE')) ) { + alt12=19; + } + else { + alt12=23;} + } + else if ( (LA12_0=='/') ) { + switch ( input.LA(2) ) { + case '/': + { + alt12=21; + } + break; + case '*': + { + alt12=20; + } + break; + default: + alt12=23;} + + } + else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) { + alt12=22; + } + 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>='~' && LA12_0<='\uFFFE')) ) { + alt12=23; + } + else { + NoViableAltException nvae = + new NoViableAltException("1:1: Tokens : ( T11 | T12 | T13 | T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | T22 | T23 | T24 | T25 | T26 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );", 12, 0, input); + + throw nvae; + } + switch (alt12) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:10: T11 + { + mT11(); + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:14: T12 + { + mT12(); + + } + break; + case 3 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:18: T13 + { + mT13(); + + } + break; + case 4 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:22: T14 + { + mT14(); + + } + break; + case 5 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:26: T15 + { + mT15(); + + } + break; + case 6 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:30: T16 + { + mT16(); + + } + break; + case 7 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:34: T17 + { + mT17(); + + } + break; + case 8 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:38: T18 + { + mT18(); + + } + break; + case 9 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:42: T19 + { + mT19(); + + } + break; + case 10 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:46: T20 + { + mT20(); + + } + break; + case 11 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:50: T21 + { + mT21(); + + } + break; + case 12 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:54: T22 + { + mT22(); + + } + break; + case 13 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:58: T23 + { + mT23(); + + } + break; + case 14 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:62: T24 + { + mT24(); + + } + break; + case 15 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:66: T25 + { + mT25(); + + } + break; + case 16 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:70: T26 + { + mT26(); + + } + break; + case 17 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:74: RULE_ID + { + mRULE_ID(); + + } + break; + case 18 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:82: RULE_INT + { + mRULE_INT(); + + } + break; + case 19 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:91: RULE_STRING + { + mRULE_STRING(); + + } + break; + case 20 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:103: RULE_ML_COMMENT + { + mRULE_ML_COMMENT(); + + } + break; + case 21 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:119: RULE_SL_COMMENT + { + mRULE_SL_COMMENT(); + + } + break; + case 22 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:135: RULE_WS + { + mRULE_WS(); + + } + break; + case 23 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:1:143: RULE_ANY_OTHER + { + mRULE_ANY_OTHER(); + + } + break; + + } + + } + + + + +}
\ No newline at end of file diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarParser.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarParser.java new file mode 100644 index 0000000..dfa4474 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarParser.java @@ -0,0 +1,1633 @@ +// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g 2009-01-13 09:50:00 + +package org.eclipse.xtext.reference.parser.antlr.internal; + +import java.io.InputStream; +import org.eclipse.xtext.*; +import org.eclipse.xtext.parser.*; +import org.eclipse.xtext.parser.impl.*; +import org.eclipse.xtext.parsetree.*; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken; +import org.eclipse.xtext.conversion.ValueConverterException; + + + +import org.antlr.runtime.*; +import java.util.Stack; +import java.util.List; +import java.util.ArrayList; + +public class InternalReferenceGrammarParser extends AbstractInternalAntlrParser { + public static final String[] tokenNames = new String[] { + "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_INT", "RULE_STRING", "RULE_ID", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'spielplatz'", "'{'", "'}'", "'kind'", "'('", "')'", "'erwachsener'", "'spielzeug'", "'familie'", "'keyword'", "','", "'ROT'", "'BLAU'", "'GELB'", "'GRÜN'", "'type'" + }; + public static final int RULE_ML_COMMENT=7; + public static final int RULE_ID=6; + public static final int RULE_WS=9; + public static final int EOF=-1; + public static final int RULE_INT=4; + public static final int RULE_STRING=5; + public static final int RULE_ANY_OTHER=10; + public static final int RULE_SL_COMMENT=8; + + public InternalReferenceGrammarParser(TokenStream input) { + super(input); + } + + + public String[] getTokenNames() { return tokenNames; } + public String getGrammarFileName() { return "./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g"; } + + + + public InternalReferenceGrammarParser(TokenStream input, IAstFactory factory, Grammar g) { + this(input); + this.factory = factory; + grammar = g; + } + + @Override + protected InputStream getTokenFile() { + ClassLoader classLoader = InternalReferenceGrammarParser.class.getClassLoader(); + return classLoader.getResourceAsStream("org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.tokens"); + } + + @Override + protected String getFirstRuleName() { + return "Spielplatz"; + } + + + + // $ANTLR start entryRuleSpielplatz + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:66:1: entryRuleSpielplatz returns [EObject current=null] : iv_ruleSpielplatz= ruleSpielplatz EOF ; + public final EObject entryRuleSpielplatz() throws RecognitionException { + EObject current = null; + + EObject iv_ruleSpielplatz = null; + + + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:66:52: (iv_ruleSpielplatz= ruleSpielplatz EOF ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:67:2: iv_ruleSpielplatz= ruleSpielplatz EOF + { + currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0" /* xtext::ParserRule */, currentNode); + pushFollow(FOLLOW_ruleSpielplatz_in_entryRuleSpielplatz71); + iv_ruleSpielplatz=ruleSpielplatz(); + _fsp--; + + current =iv_ruleSpielplatz; + match(input,EOF,FOLLOW_EOF_in_entryRuleSpielplatz81); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end entryRuleSpielplatz + + + // $ANTLR start ruleSpielplatz + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:74:1: ruleSpielplatz returns [EObject current=null] : ( ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' )? ; + public final EObject ruleSpielplatz() throws RecognitionException { + EObject current = null; + + Token lv_groesse=null; + Token lv_beschreibung=null; + EObject lv_kinder = null; + + EObject lv_erzieher = null; + + EObject lv_spielzeuge = null; + + EObject lv_familie = null; + + EObject lv_types = null; + + + EObject temp=null; setCurrentLookahead(); resetLookahead(); + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:76:33: ( ( ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' )? ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:1: ( ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' )? + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:1: ( ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' )? + int alt6=2; + int LA6_0 = input.LA(1); + + if ( (LA6_0==11) ) { + alt6=1; + } + switch (alt6) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:2: ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:2: ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:3: ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:3: ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:4: ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:4: ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:5: ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:5: ( 'spielplatz' (lv_groesse= RULE_INT ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:77:6: 'spielplatz' (lv_groesse= RULE_INT ) + { + match(input,11,FOLLOW_11_in_ruleSpielplatz119); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:81:1: (lv_groesse= RULE_INT ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:83:6: lv_groesse= RULE_INT + { + lv_groesse=(Token)input.LT(1); + match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleSpielplatz140); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "groesse"); + + + if (current==null) { + current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "groesse", lv_groesse, "INT", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:101:3: (lv_beschreibung= RULE_STRING )? + int alt1=2; + int LA1_0 = input.LA(1); + + if ( (LA1_0==RULE_STRING) ) { + alt1=1; + } + switch (alt1) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:103:6: lv_beschreibung= RULE_STRING + { + lv_beschreibung=(Token)input.LT(1); + match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleSpielplatz173); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "beschreibung"); + + + if (current==null) { + current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "beschreibung", lv_beschreibung, "STRING", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + break; + + } + + + } + + match(input,12,FOLLOW_12_in_ruleSpielplatz195); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:125:2: ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* + loop5: + do { + int alt5=3; + int LA5_0 = input.LA(1); + + if ( (LA5_0==14||(LA5_0>=17 && LA5_0<=19)) ) { + alt5=1; + } + else if ( (LA5_0==26) ) { + alt5=2; + } + + + switch (alt5) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:125:3: ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:125:3: ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) + int alt4=2; + int LA4_0 = input.LA(1); + + if ( (LA4_0==14||(LA4_0>=17 && LA4_0<=18)) ) { + alt4=1; + } + else if ( (LA4_0==19) ) { + alt4=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("125:3: ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) )", 4, 0, input); + + throw nvae; + } + switch (alt4) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:125:4: ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:125:4: ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) + int alt3=2; + int LA3_0 = input.LA(1); + + if ( (LA3_0==14||LA3_0==17) ) { + alt3=1; + } + else if ( (LA3_0==18) ) { + alt3=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("125:4: ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) )", 3, 0, input); + + throw nvae; + } + switch (alt3) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:125:5: ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:125:5: ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) + int alt2=2; + int LA2_0 = input.LA(1); + + if ( (LA2_0==14) ) { + alt2=1; + } + else if ( (LA2_0==17) ) { + alt2=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("125:5: ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) )", 2, 0, input); + + throw nvae; + } + switch (alt2) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:125:6: (lv_kinder= ruleKind ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:125:6: (lv_kinder= ruleKind ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:128:6: lv_kinder= ruleKind + { + + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.0/@groups.0/@terminal" /* xtext::RuleCall */, currentNode); + + pushFollow(FOLLOW_ruleKind_in_ruleSpielplatz234); + lv_kinder=ruleKind(); + _fsp--; + + + if (current==null) { + current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), current); + } + + try { + factory.add(current, "kinder", lv_kinder, "Kind", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + + + } + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:147:6: (lv_erzieher= ruleErwachsener ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:147:6: (lv_erzieher= ruleErwachsener ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:150:6: lv_erzieher= ruleErwachsener + { + + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); + + pushFollow(FOLLOW_ruleErwachsener_in_ruleSpielplatz278); + lv_erzieher=ruleErwachsener(); + _fsp--; + + + if (current==null) { + current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), current); + } + + try { + factory.add(current, "erzieher", lv_erzieher, "Erwachsener", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + + + } + + + } + break; + + } + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:169:6: (lv_spielzeuge= ruleSpielzeug ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:169:6: (lv_spielzeuge= ruleSpielzeug ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:172:6: lv_spielzeuge= ruleSpielzeug + { + + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); + + pushFollow(FOLLOW_ruleSpielzeug_in_ruleSpielplatz323); + lv_spielzeuge=ruleSpielzeug(); + _fsp--; + + + if (current==null) { + current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), current); + } + + try { + factory.add(current, "spielzeuge", lv_spielzeuge, "Spielzeug", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + + + } + + + } + break; + + } + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:191:6: (lv_familie= ruleFamilie ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:191:6: (lv_familie= ruleFamilie ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:194:6: lv_familie= ruleFamilie + { + + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); + + pushFollow(FOLLOW_ruleFamilie_in_ruleSpielplatz368); + lv_familie=ruleFamilie(); + _fsp--; + + + if (current==null) { + current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), current); + } + + try { + factory.add(current, "familie", lv_familie, "Familie", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + + + } + + + } + break; + + } + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:213:6: (lv_types= ruleCustomTypeParserRule ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:213:6: (lv_types= ruleCustomTypeParserRule ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:216:6: lv_types= ruleCustomTypeParserRule + { + + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); + + pushFollow(FOLLOW_ruleCustomTypeParserRule_in_ruleSpielplatz413); + lv_types=ruleCustomTypeParserRule(); + _fsp--; + + + if (current==null) { + current = factory.create("Spielplatz"); + associateNodeWithAstElement(currentNode.getParent(), current); + } + + try { + factory.add(current, "types", lv_types, "CustomTypeParserRule", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + + + } + + + } + break; + + default : + break loop5; + } + } while (true); + + + } + + match(input,13,FOLLOW_13_in_ruleSpielplatz429); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + break; + + } + + + } + + resetLookahead(); + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end ruleSpielplatz + + + // $ANTLR start entryRuleKind + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:247:1: entryRuleKind returns [EObject current=null] : iv_ruleKind= ruleKind EOF ; + public final EObject entryRuleKind() throws RecognitionException { + EObject current = null; + + EObject iv_ruleKind = null; + + + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:247:46: (iv_ruleKind= ruleKind EOF ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:248:2: iv_ruleKind= ruleKind EOF + { + currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2" /* xtext::ParserRule */, currentNode); + pushFollow(FOLLOW_ruleKind_in_entryRuleKind465); + iv_ruleKind=ruleKind(); + _fsp--; + + current =iv_ruleKind; + match(input,EOF,FOLLOW_EOF_in_entryRuleKind475); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end entryRuleKind + + + // $ANTLR start ruleKind + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:255:1: ruleKind returns [EObject current=null] : ( ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) ; + public final EObject ruleKind() throws RecognitionException { + EObject current = null; + + Token lv_name=null; + Token lv_age=null; + + EObject temp=null; setCurrentLookahead(); resetLookahead(); + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:257:33: ( ( ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:258:1: ( ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:258:1: ( ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:258:2: ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:258:2: ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:258:3: ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:258:3: ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:258:4: ( 'kind' '(' ) (lv_name= RULE_ID ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:258:4: ( 'kind' '(' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:258:5: 'kind' '(' + { + match(input,14,FOLLOW_14_in_ruleKind512); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + + match(input,15,FOLLOW_15_in_ruleKind521); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:266:2: (lv_name= RULE_ID ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:268:6: lv_name= RULE_ID + { + lv_name=(Token)input.LT(1); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleKind543); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); + + + if (current==null) { + current = factory.create("Kind"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "name", lv_name, "ID", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:286:3: (lv_age= RULE_INT ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:288:6: lv_age= RULE_INT + { + lv_age=(Token)input.LT(1); + match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleKind576); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "age"); + + + if (current==null) { + current = factory.create("Kind"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "age", lv_age, "INT", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + + } + + match(input,16,FOLLOW_16_in_ruleKind597); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + + } + + resetLookahead(); + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end ruleKind + + + // $ANTLR start entryRuleErwachsener + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:317:1: entryRuleErwachsener returns [EObject current=null] : iv_ruleErwachsener= ruleErwachsener EOF ; + public final EObject entryRuleErwachsener() throws RecognitionException { + EObject current = null; + + EObject iv_ruleErwachsener = null; + + + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:317:53: (iv_ruleErwachsener= ruleErwachsener EOF ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:318:2: iv_ruleErwachsener= ruleErwachsener EOF + { + currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3" /* xtext::ParserRule */, currentNode); + pushFollow(FOLLOW_ruleErwachsener_in_entryRuleErwachsener630); + iv_ruleErwachsener=ruleErwachsener(); + _fsp--; + + current =iv_ruleErwachsener; + match(input,EOF,FOLLOW_EOF_in_entryRuleErwachsener640); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end entryRuleErwachsener + + + // $ANTLR start ruleErwachsener + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:325:1: ruleErwachsener returns [EObject current=null] : ( ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) ; + public final EObject ruleErwachsener() throws RecognitionException { + EObject current = null; + + Token lv_name=null; + Token lv_age=null; + + EObject temp=null; setCurrentLookahead(); resetLookahead(); + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:327:33: ( ( ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:328:1: ( ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:328:1: ( ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:328:2: ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:328:2: ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:328:3: ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:328:3: ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:328:4: ( 'erwachsener' '(' ) (lv_name= RULE_ID ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:328:4: ( 'erwachsener' '(' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:328:5: 'erwachsener' '(' + { + match(input,17,FOLLOW_17_in_ruleErwachsener677); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + + match(input,15,FOLLOW_15_in_ruleErwachsener686); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:336:2: (lv_name= RULE_ID ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:338:6: lv_name= RULE_ID + { + lv_name=(Token)input.LT(1); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleErwachsener708); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); + + + if (current==null) { + current = factory.create("Erwachsener"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "name", lv_name, "ID", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:356:3: (lv_age= RULE_INT ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:358:6: lv_age= RULE_INT + { + lv_age=(Token)input.LT(1); + match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleErwachsener741); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "age"); + + + if (current==null) { + current = factory.create("Erwachsener"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "age", lv_age, "INT", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + + } + + match(input,16,FOLLOW_16_in_ruleErwachsener762); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + + } + + resetLookahead(); + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end ruleErwachsener + + + // $ANTLR start entryRuleSpielzeug + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:387:1: entryRuleSpielzeug returns [EObject current=null] : iv_ruleSpielzeug= ruleSpielzeug EOF ; + public final EObject entryRuleSpielzeug() throws RecognitionException { + EObject current = null; + + EObject iv_ruleSpielzeug = null; + + + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:387:51: (iv_ruleSpielzeug= ruleSpielzeug EOF ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:388:2: iv_ruleSpielzeug= ruleSpielzeug EOF + { + currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4" /* xtext::ParserRule */, currentNode); + pushFollow(FOLLOW_ruleSpielzeug_in_entryRuleSpielzeug795); + iv_ruleSpielzeug=ruleSpielzeug(); + _fsp--; + + current =iv_ruleSpielzeug; + match(input,EOF,FOLLOW_EOF_in_entryRuleSpielzeug805); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end entryRuleSpielzeug + + + // $ANTLR start ruleSpielzeug + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:395:1: ruleSpielzeug returns [EObject current=null] : ( ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' ) ; + public final EObject ruleSpielzeug() throws RecognitionException { + EObject current = null; + + Token lv_name=null; + EObject lv_farbe = null; + + + EObject temp=null; setCurrentLookahead(); resetLookahead(); + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:397:33: ( ( ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:398:1: ( ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:398:1: ( ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:398:2: ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:398:2: ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:398:3: ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:398:3: ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:398:4: ( 'spielzeug' '(' ) (lv_name= RULE_ID ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:398:4: ( 'spielzeug' '(' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:398:5: 'spielzeug' '(' + { + match(input,18,FOLLOW_18_in_ruleSpielzeug842); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + + match(input,15,FOLLOW_15_in_ruleSpielzeug851); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:406:2: (lv_name= RULE_ID ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:408:6: lv_name= RULE_ID + { + lv_name=(Token)input.LT(1); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleSpielzeug873); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); + + + if (current==null) { + current = factory.create("Spielzeug"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "name", lv_name, "ID", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:426:3: (lv_farbe= ruleFarbe ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:429:6: lv_farbe= ruleFarbe + { + + currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); + + pushFollow(FOLLOW_ruleFarbe_in_ruleSpielzeug919); + lv_farbe=ruleFarbe(); + _fsp--; + + + if (current==null) { + current = factory.create("Spielzeug"); + associateNodeWithAstElement(currentNode.getParent(), current); + } + + try { + factory.set(current, "farbe", lv_farbe, "Farbe", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + currentNode = currentNode.getParent(); + + + } + + + } + + match(input,16,FOLLOW_16_in_ruleSpielzeug933); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + + } + + resetLookahead(); + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end ruleSpielzeug + + + // $ANTLR start entryRuleFamilie + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:458:1: entryRuleFamilie returns [EObject current=null] : iv_ruleFamilie= ruleFamilie EOF ; + public final EObject entryRuleFamilie() throws RecognitionException { + EObject current = null; + + EObject iv_ruleFamilie = null; + + + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:458:49: (iv_ruleFamilie= ruleFamilie EOF ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:459:2: iv_ruleFamilie= ruleFamilie EOF + { + currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5" /* xtext::ParserRule */, currentNode); + pushFollow(FOLLOW_ruleFamilie_in_entryRuleFamilie966); + iv_ruleFamilie=ruleFamilie(); + _fsp--; + + current =iv_ruleFamilie; + match(input,EOF,FOLLOW_EOF_in_entryRuleFamilie976); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end entryRuleFamilie + + + // $ANTLR start ruleFamilie + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:466:1: ruleFamilie returns [EObject current=null] : ( ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' ) ; + public final EObject ruleFamilie() throws RecognitionException { + EObject current = null; + + Token lv_name=null; + + EObject temp=null; setCurrentLookahead(); resetLookahead(); + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:468:33: ( ( ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:1: ( ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:1: ( ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:2: ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:2: ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:3: ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:3: ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:4: ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:4: ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:5: ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:5: ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:6: ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:6: ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:7: ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:7: ( 'familie' '(' ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:469:8: 'familie' '(' + { + match(input,19,FOLLOW_19_in_ruleFamilie1016); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + + match(input,15,FOLLOW_15_in_ruleFamilie1025); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:477:2: (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:479:6: lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:479:14: ( ( 'keyword' | RULE_STRING ) | RULE_ID ) + int alt8=2; + int LA8_0 = input.LA(1); + + if ( (LA8_0==RULE_STRING||LA8_0==20) ) { + alt8=1; + } + else if ( (LA8_0==RULE_ID) ) { + alt8=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("479:14: ( ( 'keyword' | RULE_STRING ) | RULE_ID )", 8, 0, input); + + throw nvae; + } + switch (alt8) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:479:15: ( 'keyword' | RULE_STRING ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:479:15: ( 'keyword' | RULE_STRING ) + int alt7=2; + int LA7_0 = input.LA(1); + + if ( (LA7_0==20) ) { + alt7=1; + } + else if ( (LA7_0==RULE_STRING) ) { + alt7=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("479:15: ( 'keyword' | RULE_STRING )", 7, 0, input); + + throw nvae; + } + switch (alt7) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:479:16: 'keyword' + { + match(input,20,FOLLOW_20_in_ruleFamilie1049); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.0" /* xtext::Keyword */, "name"); + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:484:6: RULE_STRING + { + match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleFamilie1064); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.1" /* xtext::RuleCall */, "name"); + + + } + break; + + } + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:489:6: RULE_ID + { + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1079); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.1" /* xtext::RuleCall */, "name"); + + + } + break; + + } + + + if (current==null) { + current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "name", input.LT(-1), null, currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:507:3: ( ( RULE_ID ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:510:3: ( RULE_ID ) + { + + if (current==null) { + current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, current); + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:516:1: ( RULE_ID ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:517:2: RULE_ID + { + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1116); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "mutter"); + + + } + + + } + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:522:3: ( ( RULE_ID ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:525:3: ( RULE_ID ) + { + + if (current==null) { + current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, current); + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:531:1: ( RULE_ID ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:532:2: RULE_ID + { + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1145); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "vater"); + + + } + + + } + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:537:3: ( ( RULE_ID ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:540:3: ( RULE_ID ) + { + + if (current==null) { + current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, current); + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:546:1: ( RULE_ID ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:547:2: RULE_ID + { + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1174); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "kinder"); + + + } + + + } + + + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:552:3: ( ',' ( ( RULE_ID ) ) )* + loop9: + do { + int alt9=2; + int LA9_0 = input.LA(1); + + if ( (LA9_0==21) ) { + alt9=1; + } + + + switch (alt9) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:552:4: ',' ( ( RULE_ID ) ) + { + match(input,21,FOLLOW_21_in_ruleFamilie1189); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:556:1: ( ( RULE_ID ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:559:3: ( RULE_ID ) + { + + if (current==null) { + current = factory.create("Familie"); + associateNodeWithAstElement(currentNode, current); + } + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:565:1: ( RULE_ID ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:566:2: RULE_ID + { + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1213); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "kinder"); + + + } + + + } + + + } + break; + + default : + break loop9; + } + } while (true); + + + } + + match(input,16,FOLLOW_16_in_ruleFamilie1229); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + + } + + resetLookahead(); + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end ruleFamilie + + + // $ANTLR start entryRuleFarbe + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:582:1: entryRuleFarbe returns [EObject current=null] : iv_ruleFarbe= ruleFarbe EOF ; + public final EObject entryRuleFarbe() throws RecognitionException { + EObject current = null; + + EObject iv_ruleFarbe = null; + + + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:582:47: (iv_ruleFarbe= ruleFarbe EOF ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:583:2: iv_ruleFarbe= ruleFarbe EOF + { + currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6" /* xtext::ParserRule */, currentNode); + pushFollow(FOLLOW_ruleFarbe_in_entryRuleFarbe1262); + iv_ruleFarbe=ruleFarbe(); + _fsp--; + + current =iv_ruleFarbe; + match(input,EOF,FOLLOW_EOF_in_entryRuleFarbe1272); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end entryRuleFarbe + + + // $ANTLR start ruleFarbe + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:590:1: ruleFarbe returns [EObject current=null] : (lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) ) ; + public final EObject ruleFarbe() throws RecognitionException { + EObject current = null; + + Token lv_wert=null; + + EObject temp=null; setCurrentLookahead(); resetLookahead(); + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:592:33: ( (lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:593:1: (lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:593:1: (lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:595:6: lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:595:14: ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) + int alt12=2; + int LA12_0 = input.LA(1); + + if ( ((LA12_0>=22 && LA12_0<=24)) ) { + alt12=1; + } + else if ( (LA12_0==25) ) { + alt12=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("595:14: ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' )", 12, 0, input); + + throw nvae; + } + switch (alt12) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:595:15: ( ( 'ROT' | 'BLAU' ) | 'GELB' ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:595:15: ( ( 'ROT' | 'BLAU' ) | 'GELB' ) + int alt11=2; + int LA11_0 = input.LA(1); + + if ( ((LA11_0>=22 && LA11_0<=23)) ) { + alt11=1; + } + else if ( (LA11_0==24) ) { + alt11=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("595:15: ( ( 'ROT' | 'BLAU' ) | 'GELB' )", 11, 0, input); + + throw nvae; + } + switch (alt11) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:595:16: ( 'ROT' | 'BLAU' ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:595:16: ( 'ROT' | 'BLAU' ) + int alt10=2; + int LA10_0 = input.LA(1); + + if ( (LA10_0==22) ) { + alt10=1; + } + else if ( (LA10_0==23) ) { + alt10=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("595:16: ( 'ROT' | 'BLAU' )", 10, 0, input); + + throw nvae; + } + switch (alt10) { + case 1 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:595:17: 'ROT' + { + match(input,22,FOLLOW_22_in_ruleFarbe1320); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.0/@groups.0" /* xtext::Keyword */, "wert"); + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:600:6: 'BLAU' + { + match(input,23,FOLLOW_23_in_ruleFarbe1335); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.0/@groups.1" /* xtext::Keyword */, "wert"); + + + } + break; + + } + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:605:6: 'GELB' + { + match(input,24,FOLLOW_24_in_ruleFarbe1351); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.1" /* xtext::Keyword */, "wert"); + + + } + break; + + } + + + } + break; + case 2 : + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:610:6: 'GRÜN' + { + match(input,25,FOLLOW_25_in_ruleFarbe1367); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.1" /* xtext::Keyword */, "wert"); + + + } + break; + + } + + + if (current==null) { + current = factory.create("Farbe"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "wert", input.LT(-1), null, currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + + } + + resetLookahead(); + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end ruleFarbe + + + // $ANTLR start entryRuleCustomTypeParserRule + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:635:1: entryRuleCustomTypeParserRule returns [EObject current=null] : iv_ruleCustomTypeParserRule= ruleCustomTypeParserRule EOF ; + public final EObject entryRuleCustomTypeParserRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleCustomTypeParserRule = null; + + + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:635:62: (iv_ruleCustomTypeParserRule= ruleCustomTypeParserRule EOF ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:636:2: iv_ruleCustomTypeParserRule= ruleCustomTypeParserRule EOF + { + currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7" /* xtext::ParserRule */, currentNode); + pushFollow(FOLLOW_ruleCustomTypeParserRule_in_entryRuleCustomTypeParserRule1412); + iv_ruleCustomTypeParserRule=ruleCustomTypeParserRule(); + _fsp--; + + current =iv_ruleCustomTypeParserRule; + match(input,EOF,FOLLOW_EOF_in_entryRuleCustomTypeParserRule1422); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end entryRuleCustomTypeParserRule + + + // $ANTLR start ruleCustomTypeParserRule + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:643:1: ruleCustomTypeParserRule returns [EObject current=null] : ( 'type' (lv_name= RULE_ID ) ) ; + public final EObject ruleCustomTypeParserRule() throws RecognitionException { + EObject current = null; + + Token lv_name=null; + + EObject temp=null; setCurrentLookahead(); resetLookahead(); + try { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:645:33: ( ( 'type' (lv_name= RULE_ID ) ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:646:1: ( 'type' (lv_name= RULE_ID ) ) + { + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:646:1: ( 'type' (lv_name= RULE_ID ) ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:646:2: 'type' (lv_name= RULE_ID ) + { + match(input,26,FOLLOW_26_in_ruleCustomTypeParserRule1456); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7/@alternatives/@abstractTokens.0" /* xtext::Keyword */, null); + + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:650:1: (lv_name= RULE_ID ) + // ./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:652:6: lv_name= RULE_ID + { + lv_name=(Token)input.LT(1); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleCustomTypeParserRule1477); + + createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7/@alternatives/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); + + + if (current==null) { + current = factory.create("CustomType"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "name", lv_name, "ID", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + + } + + + } + + resetLookahead(); + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end ruleCustomTypeParserRule + + + + + public static final BitSet FOLLOW_ruleSpielplatz_in_entryRuleSpielplatz71 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_EOF_in_entryRuleSpielplatz81 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_11_in_ruleSpielplatz119 = new BitSet(new long[]{0x0000000000000010L}); + public static final BitSet FOLLOW_RULE_INT_in_ruleSpielplatz140 = new BitSet(new long[]{0x0000000000001020L}); + public static final BitSet FOLLOW_RULE_STRING_in_ruleSpielplatz173 = new BitSet(new long[]{0x0000000000001000L}); + public static final BitSet FOLLOW_12_in_ruleSpielplatz195 = new BitSet(new long[]{0x00000000040E6000L}); + public static final BitSet FOLLOW_ruleKind_in_ruleSpielplatz234 = new BitSet(new long[]{0x00000000040E6000L}); + public static final BitSet FOLLOW_ruleErwachsener_in_ruleSpielplatz278 = new BitSet(new long[]{0x00000000040E6000L}); + public static final BitSet FOLLOW_ruleSpielzeug_in_ruleSpielplatz323 = new BitSet(new long[]{0x00000000040E6000L}); + public static final BitSet FOLLOW_ruleFamilie_in_ruleSpielplatz368 = new BitSet(new long[]{0x00000000040E6000L}); + public static final BitSet FOLLOW_ruleCustomTypeParserRule_in_ruleSpielplatz413 = new BitSet(new long[]{0x00000000040E6000L}); + public static final BitSet FOLLOW_13_in_ruleSpielplatz429 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ruleKind_in_entryRuleKind465 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_EOF_in_entryRuleKind475 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_14_in_ruleKind512 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_15_in_ruleKind521 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_ID_in_ruleKind543 = new BitSet(new long[]{0x0000000000000010L}); + public static final BitSet FOLLOW_RULE_INT_in_ruleKind576 = new BitSet(new long[]{0x0000000000010000L}); + public static final BitSet FOLLOW_16_in_ruleKind597 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ruleErwachsener_in_entryRuleErwachsener630 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_EOF_in_entryRuleErwachsener640 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_17_in_ruleErwachsener677 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_15_in_ruleErwachsener686 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_ID_in_ruleErwachsener708 = new BitSet(new long[]{0x0000000000000010L}); + public static final BitSet FOLLOW_RULE_INT_in_ruleErwachsener741 = new BitSet(new long[]{0x0000000000010000L}); + public static final BitSet FOLLOW_16_in_ruleErwachsener762 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ruleSpielzeug_in_entryRuleSpielzeug795 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_EOF_in_entryRuleSpielzeug805 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_18_in_ruleSpielzeug842 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_15_in_ruleSpielzeug851 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_ID_in_ruleSpielzeug873 = new BitSet(new long[]{0x0000000003C00000L}); + public static final BitSet FOLLOW_ruleFarbe_in_ruleSpielzeug919 = new BitSet(new long[]{0x0000000000010000L}); + public static final BitSet FOLLOW_16_in_ruleSpielzeug933 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ruleFamilie_in_entryRuleFamilie966 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_EOF_in_entryRuleFamilie976 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_19_in_ruleFamilie1016 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_15_in_ruleFamilie1025 = new BitSet(new long[]{0x0000000000100060L}); + public static final BitSet FOLLOW_20_in_ruleFamilie1049 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_STRING_in_ruleFamilie1064 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1079 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1116 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1145 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1174 = new BitSet(new long[]{0x0000000000210000L}); + public static final BitSet FOLLOW_21_in_ruleFamilie1189 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1213 = new BitSet(new long[]{0x0000000000210000L}); + public static final BitSet FOLLOW_16_in_ruleFamilie1229 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ruleFarbe_in_entryRuleFarbe1262 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_EOF_in_entryRuleFarbe1272 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_22_in_ruleFarbe1320 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_23_in_ruleFarbe1335 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_24_in_ruleFarbe1351 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_25_in_ruleFarbe1367 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ruleCustomTypeParserRule_in_entryRuleCustomTypeParserRule1412 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_EOF_in_entryRuleCustomTypeParserRule1422 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_26_in_ruleCustomTypeParserRule1456 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_RULE_ID_in_ruleCustomTypeParserRule1477 = new BitSet(new long[]{0x0000000000000002L}); + +}
\ No newline at end of file diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar__.g b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar__.g new file mode 100644 index 0000000..67d6b42 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar__.g @@ -0,0 +1,48 @@ +lexer grammar InternalReferenceGrammar; +@header { +package org.eclipse.xtext.reference.parser.antlr.internal; + +// Hack: Use our own Lexer superclass by means of import. +// Currently there is no other way to specify the superclass for the lexer. +import org.eclipse.xtext.parser.antlr.Lexer; +} + +T11 : 'spielplatz' ; +T12 : '{' ; +T13 : '}' ; +T14 : 'kind' ; +T15 : '(' ; +T16 : ')' ; +T17 : 'erwachsener' ; +T18 : 'spielzeug' ; +T19 : 'familie' ; +T20 : 'keyword' ; +T21 : ',' ; +T22 : 'ROT' ; +T23 : 'BLAU' ; +T24 : 'GELB' ; +T25 : 'GRÜN' ; +T26 : 'type' ; + +// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 676 +RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; + +// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 678 +RULE_INT : ('0'..'9')+; + +// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 680 +RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; + +// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 682 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; + +// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 684 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; + +// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 686 +RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; + +// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 688 +RULE_ANY_OTHER : .; + + diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g deleted file mode 100644 index 4683a57..0000000 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g +++ b/dev/null @@ -1,690 +0,0 @@ -/* -Generated with Xtext -*/ -grammar InternalReferenceGrammar; - -options { - superClass=AbstractAntlrParser; -} - -@lexer::header { -package org.eclipse.xtext.reference.parser.internal; - -// Hack: Use our own Lexer superclass by means of import. -// Currently there is no other way to specify the superclass for the lexer. -import org.eclipse.xtext.parser.antlr.Lexer; -} - -@parser::header { -package org.eclipse.xtext.reference.parser.internal; - -import java.io.InputStream; -import org.eclipse.xtext.*; -import org.eclipse.xtext.parser.*; -import org.eclipse.xtext.parser.impl.*; -import org.eclipse.xtext.parsetree.*; -import org.eclipse.emf.ecore.util.EcoreUtil; -import org.eclipse.emf.ecore.EObject; -import org.eclipse.xtext.parser.antlr.AbstractAntlrParser; -import org.eclipse.xtext.parser.antlr.XtextTokenStream; -import org.eclipse.xtext.parser.antlr.DatatypeRuleToken; -import org.eclipse.xtext.parser.antlr.ValueConverterException; - -} - -@parser::members { - - public InternalReferenceGrammarParser(TokenStream input, IAstFactory factory, Grammar g) { - this(input); - this.factory = factory; - grammar = g; - } - - @Override - protected InputStream getTokenFile() { - ClassLoader classLoader = InternalReferenceGrammarParser.class.getClassLoader(); - return classLoader.getResourceAsStream("org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.tokens"); - } - - @Override - protected String getFirstRuleName() { - return "Spielplatz"; - } -} - -@rulecatch { - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } -} - - - - -// Entry rule entryRuleSpielplatz -entryRuleSpielplatz returns [EObject current=null] : - { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0" /* xtext::ParserRule */, currentNode); } - iv_ruleSpielplatz=ruleSpielplatz - { $current=$iv_ruleSpielplatz.current; } - EOF -; - -// Rule Spielplatz -ruleSpielplatz returns [EObject current=null] - @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } - @after { resetLookahead(); }: -((((('spielplatz' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - } -( - - lv_groesse=RULE_INT - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "groesse"); - } - - { - if ($current==null) { - $current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "groesse", lv_groesse, "INT", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -))( - - lv_beschreibung=RULE_STRING - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "beschreibung"); - } - - { - if ($current==null) { - $current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "beschreibung", lv_beschreibung, "STRING", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -)?)'{' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - } -)((((( - - - { - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.0/@groups.0/@terminal" /* xtext::RuleCall */, currentNode); - } - lv_kinder=ruleKind - { - if ($current==null) { - $current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), $current); - } - - try { - factory.add($current, "kinder", lv_kinder, "Kind", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - } - -) - |( - - - { - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); - } - lv_erzieher=ruleErwachsener - { - if ($current==null) { - $current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), $current); - } - - try { - factory.add($current, "erzieher", lv_erzieher, "Erwachsener", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - } - -)) - |( - - - { - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); - } - lv_spielzeuge=ruleSpielzeug - { - if ($current==null) { - $current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), $current); - } - - try { - factory.add($current, "spielzeuge", lv_spielzeuge, "Spielzeug", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - } - -)) - |( - - - { - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); - } - lv_familie=ruleFamilie - { - if ($current==null) { - $current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), $current); - } - - try { - factory.add($current, "familie", lv_familie, "Familie", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - } - -)) - |( - - - { - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); - } - lv_types=ruleCustomTypeParserRule - { - if ($current==null) { - $current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), $current); - } - - try { - factory.add($current, "types", lv_types, "CustomTypeParserRule", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - } - -))*)'}' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - } -)?; - - - - - - - -// Entry rule entryRuleKind -entryRuleKind returns [EObject current=null] : - { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2" /* xtext::ParserRule */, currentNode); } - iv_ruleKind=ruleKind - { $current=$iv_ruleKind.current; } - EOF -; - -// Rule Kind -ruleKind returns [EObject current=null] - @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } - @after { resetLookahead(); }: -(((('kind' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - } -'(' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - } -)( - - lv_name=RULE_ID - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); - } - - { - if ($current==null) { - $current = factory.create("Kind"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "name", lv_name, "ID", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -))( - - lv_age=RULE_INT - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "age"); - } - - { - if ($current==null) { - $current = factory.create("Kind"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "age", lv_age, "INT", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -))')' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - } -); - - - - - -// Entry rule entryRuleErwachsener -entryRuleErwachsener returns [EObject current=null] : - { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3" /* xtext::ParserRule */, currentNode); } - iv_ruleErwachsener=ruleErwachsener - { $current=$iv_ruleErwachsener.current; } - EOF -; - -// Rule Erwachsener -ruleErwachsener returns [EObject current=null] - @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } - @after { resetLookahead(); }: -(((('erwachsener' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - } -'(' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - } -)( - - lv_name=RULE_ID - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); - } - - { - if ($current==null) { - $current = factory.create("Erwachsener"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "name", lv_name, "ID", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -))( - - lv_age=RULE_INT - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "age"); - } - - { - if ($current==null) { - $current = factory.create("Erwachsener"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "age", lv_age, "INT", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -))')' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - } -); - - - - - -// Entry rule entryRuleSpielzeug -entryRuleSpielzeug returns [EObject current=null] : - { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4" /* xtext::ParserRule */, currentNode); } - iv_ruleSpielzeug=ruleSpielzeug - { $current=$iv_ruleSpielzeug.current; } - EOF -; - -// Rule Spielzeug -ruleSpielzeug returns [EObject current=null] - @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } - @after { resetLookahead(); }: -(((('spielzeug' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - } -'(' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - } -)( - - lv_name=RULE_ID - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); - } - - { - if ($current==null) { - $current = factory.create("Spielzeug"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "name", lv_name, "ID", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -))( - - - { - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); - } - lv_farbe=ruleFarbe - { - if ($current==null) { - $current = factory.create("Spielzeug"); - associateNodeWithAstElement(currentNode.getParent(), $current); - } - - try { - factory.set($current, "farbe", lv_farbe, "Farbe", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - } - -))')' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - } -); - - - - - -// Entry rule entryRuleFamilie -entryRuleFamilie returns [EObject current=null] : - { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5" /* xtext::ParserRule */, currentNode); } - iv_ruleFamilie=ruleFamilie - { $current=$iv_ruleFamilie.current; } - EOF -; - -// Rule Familie -ruleFamilie returns [EObject current=null] - @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } - @after { resetLookahead(); }: -((((((('familie' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - } -'(' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - } -)( - - lv_name=(('keyword' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.0" /* xtext::Keyword */, "name"); - } - - |RULE_STRING - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.1" /* xtext::RuleCall */, "name"); - } -) - |RULE_ID - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.1" /* xtext::RuleCall */, "name"); - } -) - { - if ($current==null) { - $current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "name", input.LT(-1), null, currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -))( - - - { - if ($current==null) { - $current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, $current); - } - } -( - RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "mutter"); - } -) - -))( - - - { - if ($current==null) { - $current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, $current); - } - } -( - RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "vater"); - } -) - -))( - - - { - if ($current==null) { - $current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, $current); - } - } -( - RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "kinder"); - } -) - -))(',' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - } -( - - - { - if ($current==null) { - $current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, $current); - } - } -( - RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "kinder"); - } -) - -))*)')' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - } -); - - - - - -// Entry rule entryRuleFarbe -entryRuleFarbe returns [EObject current=null] : - { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6" /* xtext::ParserRule */, currentNode); } - iv_ruleFarbe=ruleFarbe - { $current=$iv_ruleFarbe.current; } - EOF -; - -// Rule Farbe -ruleFarbe returns [EObject current=null] - @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } - @after { resetLookahead(); }: -( - - lv_wert=((('ROT' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.0/@groups.0" /* xtext::Keyword */, "wert"); - } - - |'BLAU' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.0/@groups.1" /* xtext::Keyword */, "wert"); - } -) - |'GELB' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.1" /* xtext::Keyword */, "wert"); - } -) - |'GRÜN' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.1" /* xtext::Keyword */, "wert"); - } -) - { - if ($current==null) { - $current = factory.create("Farbe"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "wert", input.LT(-1), null, currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -); - - - - - -// Entry rule entryRuleCustomTypeParserRule -entryRuleCustomTypeParserRule returns [EObject current=null] : - { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7" /* xtext::ParserRule */, currentNode); } - iv_ruleCustomTypeParserRule=ruleCustomTypeParserRule - { $current=$iv_ruleCustomTypeParserRule.current; } - EOF -; - -// Rule CustomTypeParserRule -ruleCustomTypeParserRule returns [EObject current=null] - @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); } - @after { resetLookahead(); }: -('type' - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7/@alternatives/@abstractTokens.0" /* xtext::Keyword */, null); - } -( - - lv_name=RULE_ID - { - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7/@alternatives/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); - } - - { - if ($current==null) { - $current = factory.create("CustomType"); - associateNodeWithAstElement(currentNode, $current); - } - - try { - factory.set($current, "name", lv_name, "ID", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - } - -)); - - - - - -RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; - -RULE_INT : ('0'..'9')+; - -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; - -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; - -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; - -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; - -RULE_ANY_OTHER : .; - - diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammarLexer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammarLexer.java deleted file mode 100644 index 0f0e15f..0000000 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammarLexer.java +++ b/dev/null @@ -1,1494 +0,0 @@ -// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g 2009-01-12 18:36:32 - -package org.eclipse.xtext.reference.parser.internal; - -// Hack: Use our own Lexer superclass by means of import. -// Currently there is no other way to specify the superclass for the lexer. -import org.eclipse.xtext.parser.antlr.Lexer; - - -import org.antlr.runtime.*; -import java.util.Stack; -import java.util.List; -import java.util.ArrayList; - -public class InternalReferenceGrammarLexer extends Lexer { - public static final int T21=21; - public static final int RULE_ML_COMMENT=7; - public static final int T14=14; - public static final int RULE_ID=6; - public static final int T22=22; - public static final int T11=11; - public static final int RULE_STRING=5; - public static final int T12=12; - public static final int T23=23; - public static final int T13=13; - public static final int T20=20; - public static final int T25=25; - public static final int T18=18; - public static final int RULE_WS=9; - public static final int T26=26; - public static final int T15=15; - public static final int RULE_INT=4; - public static final int EOF=-1; - public static final int T17=17; - public static final int Tokens=27; - public static final int RULE_ANY_OTHER=10; - public static final int T16=16; - public static final int RULE_SL_COMMENT=8; - public static final int T24=24; - public static final int T19=19; - public InternalReferenceGrammarLexer() {;} - public InternalReferenceGrammarLexer(CharStream input) { - super(input); - } - public String getGrammarFileName() { return "./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g"; } - - // $ANTLR start T11 - public final void mT11() throws RecognitionException { - try { - int _type = T11; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:10:5: ( 'spielplatz' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:10:7: 'spielplatz' - { - match("spielplatz"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T11 - - // $ANTLR start T12 - public final void mT12() throws RecognitionException { - try { - int _type = T12; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:11:5: ( '{' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:11:7: '{' - { - match('{'); - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T12 - - // $ANTLR start T13 - public final void mT13() throws RecognitionException { - try { - int _type = T13; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:12:5: ( '}' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:12:7: '}' - { - match('}'); - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T13 - - // $ANTLR start T14 - public final void mT14() throws RecognitionException { - try { - int _type = T14; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:13:5: ( 'kind' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:13:7: 'kind' - { - match("kind"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T14 - - // $ANTLR start T15 - public final void mT15() throws RecognitionException { - try { - int _type = T15; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:14:5: ( '(' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:14:7: '(' - { - match('('); - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T15 - - // $ANTLR start T16 - public final void mT16() throws RecognitionException { - try { - int _type = T16; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:15:5: ( ')' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:15:7: ')' - { - match(')'); - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T16 - - // $ANTLR start T17 - public final void mT17() throws RecognitionException { - try { - int _type = T17; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:16:5: ( 'erwachsener' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:16:7: 'erwachsener' - { - match("erwachsener"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T17 - - // $ANTLR start T18 - public final void mT18() throws RecognitionException { - try { - int _type = T18; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:17:5: ( 'spielzeug' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:17:7: 'spielzeug' - { - match("spielzeug"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T18 - - // $ANTLR start T19 - public final void mT19() throws RecognitionException { - try { - int _type = T19; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:18:5: ( 'familie' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:18:7: 'familie' - { - match("familie"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T19 - - // $ANTLR start T20 - public final void mT20() throws RecognitionException { - try { - int _type = T20; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:19:5: ( 'keyword' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:19:7: 'keyword' - { - match("keyword"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T20 - - // $ANTLR start T21 - public final void mT21() throws RecognitionException { - try { - int _type = T21; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:20:5: ( ',' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:20:7: ',' - { - match(','); - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T21 - - // $ANTLR start T22 - public final void mT22() throws RecognitionException { - try { - int _type = T22; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:21:5: ( 'ROT' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:21:7: 'ROT' - { - match("ROT"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T22 - - // $ANTLR start T23 - public final void mT23() throws RecognitionException { - try { - int _type = T23; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:22:5: ( 'BLAU' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:22:7: 'BLAU' - { - match("BLAU"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T23 - - // $ANTLR start T24 - public final void mT24() throws RecognitionException { - try { - int _type = T24; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:23:5: ( 'GELB' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:23:7: 'GELB' - { - match("GELB"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T24 - - // $ANTLR start T25 - public final void mT25() throws RecognitionException { - try { - int _type = T25; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:24:5: ( 'GRÜN' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:24:7: 'GRÜN' - { - match("GRÜN"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T25 - - // $ANTLR start T26 - public final void mT26() throws RecognitionException { - try { - int _type = T26; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:25:5: ( 'type' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:25:7: 'type' - { - match("type"); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end T26 - - // $ANTLR start RULE_ID - public final void mRULE_ID() throws RecognitionException { - try { - int _type = RULE_ID; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:676:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:676:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:676:11: ( '^' )? - int alt1=2; - int LA1_0 = input.LA(1); - - if ( (LA1_0=='^') ) { - alt1=1; - } - switch (alt1) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:676:12: '^' - { - match('^'); - - } - break; - - } - - if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { - input.consume(); - - } - else { - MismatchedSetException mse = - new MismatchedSetException(null,input); - recover(mse); throw mse; - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:676:41: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* - loop2: - do { - int alt2=2; - int LA2_0 = input.LA(1); - - if ( ((LA2_0>='0' && LA2_0<='9')||(LA2_0>='A' && LA2_0<='Z')||LA2_0=='_'||(LA2_0>='a' && LA2_0<='z')) ) { - alt2=1; - } - - - switch (alt2) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g: - { - if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { - input.consume(); - - } - else { - MismatchedSetException mse = - new MismatchedSetException(null,input); - recover(mse); throw mse; - } - - - } - break; - - default : - break loop2; - } - } while (true); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end RULE_ID - - // $ANTLR start RULE_INT - public final void mRULE_INT() throws RecognitionException { - try { - int _type = RULE_INT; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:678:10: ( ( '0' .. '9' )+ ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:678:12: ( '0' .. '9' )+ - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:678:12: ( '0' .. '9' )+ - int cnt3=0; - loop3: - do { - int alt3=2; - int LA3_0 = input.LA(1); - - if ( ((LA3_0>='0' && LA3_0<='9')) ) { - alt3=1; - } - - - switch (alt3) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:678:13: '0' .. '9' - { - matchRange('0','9'); - - } - break; - - default : - if ( cnt3 >= 1 ) break loop3; - EarlyExitException eee = - new EarlyExitException(3, input); - throw eee; - } - cnt3++; - } while (true); - - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end RULE_INT - - // $ANTLR start RULE_STRING - public final void mRULE_STRING() throws RecognitionException { - try { - int _type = RULE_STRING; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:680:13: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' ) - int alt6=2; - int LA6_0 = input.LA(1); - - if ( (LA6_0=='\"') ) { - alt6=1; - } - else if ( (LA6_0=='\'') ) { - alt6=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("680:1: RULE_STRING : ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' );", 6, 0, input); - - throw nvae; - } - switch (alt6) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:680:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' - { - match('\"'); - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:680:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* - loop4: - do { - int alt4=3; - int LA4_0 = input.LA(1); - - if ( (LA4_0=='\\') ) { - alt4=1; - } - else if ( ((LA4_0>='\u0000' && LA4_0<='!')||(LA4_0>='#' && LA4_0<='[')||(LA4_0>=']' && LA4_0<='\uFFFE')) ) { - alt4=2; - } - - - switch (alt4) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:680:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) - { - match('\\'); - if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t' ) { - input.consume(); - - } - else { - MismatchedSetException mse = - new MismatchedSetException(null,input); - recover(mse); throw mse; - } - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:680:65: ~ ( '\\\\' | '\"' ) - { - if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { - input.consume(); - - } - else { - MismatchedSetException mse = - new MismatchedSetException(null,input); - recover(mse); throw mse; - } - - - } - break; - - default : - break loop4; - } - } while (true); - - match('\"'); - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:680:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' - { - match('\''); - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:680:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* - loop5: - do { - int alt5=3; - int LA5_0 = input.LA(1); - - if ( (LA5_0=='\\') ) { - alt5=1; - } - else if ( ((LA5_0>='\u0000' && LA5_0<='&')||(LA5_0>='(' && LA5_0<='[')||(LA5_0>=']' && LA5_0<='\uFFFE')) ) { - alt5=2; - } - - - switch (alt5) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:680:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) - { - match('\\'); - if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t' ) { - input.consume(); - - } - else { - MismatchedSetException mse = - new MismatchedSetException(null,input); - recover(mse); throw mse; - } - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:680:152: ~ ( '\\\\' | '\\'' ) - { - if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { - input.consume(); - - } - else { - MismatchedSetException mse = - new MismatchedSetException(null,input); - recover(mse); throw mse; - } - - - } - break; - - default : - break loop5; - } - } while (true); - - match('\''); - - } - break; - - } - this.type = _type; - } - finally { - } - } - // $ANTLR end RULE_STRING - - // $ANTLR start RULE_ML_COMMENT - public final void mRULE_ML_COMMENT() throws RecognitionException { - try { - int _type = RULE_ML_COMMENT; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:682:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:682:19: '/*' ( options {greedy=false; } : . )* '*/' - { - match("/*"); - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:682:24: ( options {greedy=false; } : . )* - loop7: - do { - int alt7=2; - int LA7_0 = input.LA(1); - - if ( (LA7_0=='*') ) { - int LA7_1 = input.LA(2); - - if ( (LA7_1=='/') ) { - alt7=2; - } - else if ( ((LA7_1>='\u0000' && LA7_1<='.')||(LA7_1>='0' && LA7_1<='\uFFFE')) ) { - alt7=1; - } - - - } - else if ( ((LA7_0>='\u0000' && LA7_0<=')')||(LA7_0>='+' && LA7_0<='\uFFFE')) ) { - alt7=1; - } - - - switch (alt7) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:682:52: . - { - matchAny(); - - } - break; - - default : - break loop7; - } - } while (true); - - match("*/"); - - channel=HIDDEN; - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end RULE_ML_COMMENT - - // $ANTLR start RULE_SL_COMMENT - public final void mRULE_SL_COMMENT() throws RecognitionException { - try { - int _type = RULE_SL_COMMENT; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:684:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:684:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? - { - match("//"); - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:684:24: (~ ( '\\n' | '\\r' ) )* - loop8: - do { - int alt8=2; - int LA8_0 = input.LA(1); - - if ( ((LA8_0>='\u0000' && LA8_0<='\t')||(LA8_0>='\u000B' && LA8_0<='\f')||(LA8_0>='\u000E' && LA8_0<='\uFFFE')) ) { - alt8=1; - } - - - switch (alt8) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:684: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)<='\uFFFE') ) { - input.consume(); - - } - else { - MismatchedSetException mse = - new MismatchedSetException(null,input); - recover(mse); throw mse; - } - - - } - break; - - default : - break loop8; - } - } while (true); - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:684:38: ( ( '\\r' )? '\\n' )? - int alt10=2; - int LA10_0 = input.LA(1); - - if ( (LA10_0=='\n'||LA10_0=='\r') ) { - alt10=1; - } - switch (alt10) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:684:39: ( '\\r' )? '\\n' - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:684:39: ( '\\r' )? - int alt9=2; - int LA9_0 = input.LA(1); - - if ( (LA9_0=='\r') ) { - alt9=1; - } - switch (alt9) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:684:39: '\\r' - { - match('\r'); - - } - break; - - } - - match('\n'); - - } - break; - - } - - channel=HIDDEN; - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end RULE_SL_COMMENT - - // $ANTLR start RULE_WS - public final void mRULE_WS() throws RecognitionException { - try { - int _type = RULE_WS; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:686:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:686:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:686:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ - int cnt11=0; - loop11: - do { - int alt11=2; - int LA11_0 = input.LA(1); - - if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) { - alt11=1; - } - - - switch (alt11) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g: - { - if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) { - input.consume(); - - } - else { - MismatchedSetException mse = - new MismatchedSetException(null,input); - recover(mse); throw mse; - } - - - } - break; - - default : - if ( cnt11 >= 1 ) break loop11; - EarlyExitException eee = - new EarlyExitException(11, input); - throw eee; - } - cnt11++; - } while (true); - - channel=HIDDEN; - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end RULE_WS - - // $ANTLR start RULE_ANY_OTHER - public final void mRULE_ANY_OTHER() throws RecognitionException { - try { - int _type = RULE_ANY_OTHER; - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:688:16: ( . ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:688:18: . - { - matchAny(); - - } - - this.type = _type; - } - finally { - } - } - // $ANTLR end RULE_ANY_OTHER - - public void mTokens() throws RecognitionException { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:8: ( T11 | T12 | T13 | T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | T22 | T23 | T24 | T25 | T26 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) - int alt12=23; - int LA12_0 = input.LA(1); - - if ( (LA12_0=='s') ) { - int LA12_1 = input.LA(2); - - if ( (LA12_1=='p') ) { - int LA12_22 = input.LA(3); - - if ( (LA12_22=='i') ) { - int LA12_43 = input.LA(4); - - if ( (LA12_43=='e') ) { - int LA12_53 = input.LA(5); - - if ( (LA12_53=='l') ) { - switch ( input.LA(6) ) { - case 'z': - { - int LA12_70 = input.LA(7); - - if ( (LA12_70=='e') ) { - int LA12_75 = input.LA(8); - - if ( (LA12_75=='u') ) { - int LA12_80 = input.LA(9); - - if ( (LA12_80=='g') ) { - int LA12_85 = input.LA(10); - - if ( ((LA12_85>='0' && LA12_85<='9')||(LA12_85>='A' && LA12_85<='Z')||LA12_85=='_'||(LA12_85>='a' && LA12_85<='z')) ) { - alt12=17; - } - else { - alt12=8;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - break; - case 'p': - { - int LA12_71 = input.LA(7); - - if ( (LA12_71=='l') ) { - int LA12_76 = input.LA(8); - - if ( (LA12_76=='a') ) { - int LA12_81 = input.LA(9); - - if ( (LA12_81=='t') ) { - int LA12_86 = input.LA(10); - - if ( (LA12_86=='z') ) { - int LA12_89 = input.LA(11); - - if ( ((LA12_89>='0' && LA12_89<='9')||(LA12_89>='A' && LA12_89<='Z')||LA12_89=='_'||(LA12_89>='a' && LA12_89<='z')) ) { - alt12=17; - } - else { - alt12=1;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - break; - default: - alt12=17;} - - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else if ( (LA12_0=='{') ) { - alt12=2; - } - else if ( (LA12_0=='}') ) { - alt12=3; - } - else if ( (LA12_0=='k') ) { - switch ( input.LA(2) ) { - case 'i': - { - int LA12_26 = input.LA(3); - - if ( (LA12_26=='n') ) { - int LA12_44 = input.LA(4); - - if ( (LA12_44=='d') ) { - int LA12_54 = input.LA(5); - - if ( ((LA12_54>='0' && LA12_54<='9')||(LA12_54>='A' && LA12_54<='Z')||LA12_54=='_'||(LA12_54>='a' && LA12_54<='z')) ) { - alt12=17; - } - else { - alt12=4;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - break; - case 'e': - { - int LA12_27 = input.LA(3); - - if ( (LA12_27=='y') ) { - int LA12_45 = input.LA(4); - - if ( (LA12_45=='w') ) { - int LA12_55 = input.LA(5); - - if ( (LA12_55=='o') ) { - int LA12_64 = input.LA(6); - - if ( (LA12_64=='r') ) { - int LA12_72 = input.LA(7); - - if ( (LA12_72=='d') ) { - int LA12_77 = input.LA(8); - - if ( ((LA12_77>='0' && LA12_77<='9')||(LA12_77>='A' && LA12_77<='Z')||LA12_77=='_'||(LA12_77>='a' && LA12_77<='z')) ) { - alt12=17; - } - else { - alt12=10;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - break; - default: - alt12=17;} - - } - else if ( (LA12_0=='(') ) { - alt12=5; - } - else if ( (LA12_0==')') ) { - alt12=6; - } - else if ( (LA12_0=='e') ) { - int LA12_7 = input.LA(2); - - if ( (LA12_7=='r') ) { - int LA12_30 = input.LA(3); - - if ( (LA12_30=='w') ) { - int LA12_46 = input.LA(4); - - if ( (LA12_46=='a') ) { - int LA12_56 = input.LA(5); - - if ( (LA12_56=='c') ) { - int LA12_65 = input.LA(6); - - if ( (LA12_65=='h') ) { - int LA12_73 = input.LA(7); - - if ( (LA12_73=='s') ) { - int LA12_78 = input.LA(8); - - if ( (LA12_78=='e') ) { - int LA12_83 = input.LA(9); - - if ( (LA12_83=='n') ) { - int LA12_87 = input.LA(10); - - if ( (LA12_87=='e') ) { - int LA12_90 = input.LA(11); - - if ( (LA12_90=='r') ) { - int LA12_92 = input.LA(12); - - if ( ((LA12_92>='0' && LA12_92<='9')||(LA12_92>='A' && LA12_92<='Z')||LA12_92=='_'||(LA12_92>='a' && LA12_92<='z')) ) { - alt12=17; - } - else { - alt12=7;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else if ( (LA12_0=='f') ) { - int LA12_8 = input.LA(2); - - if ( (LA12_8=='a') ) { - int LA12_31 = input.LA(3); - - if ( (LA12_31=='m') ) { - int LA12_47 = input.LA(4); - - if ( (LA12_47=='i') ) { - int LA12_57 = input.LA(5); - - if ( (LA12_57=='l') ) { - int LA12_66 = input.LA(6); - - if ( (LA12_66=='i') ) { - int LA12_74 = input.LA(7); - - if ( (LA12_74=='e') ) { - int LA12_79 = input.LA(8); - - if ( ((LA12_79>='0' && LA12_79<='9')||(LA12_79>='A' && LA12_79<='Z')||LA12_79=='_'||(LA12_79>='a' && LA12_79<='z')) ) { - alt12=17; - } - else { - alt12=9;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else if ( (LA12_0==',') ) { - alt12=11; - } - else if ( (LA12_0=='R') ) { - int LA12_10 = input.LA(2); - - if ( (LA12_10=='O') ) { - int LA12_33 = input.LA(3); - - if ( (LA12_33=='T') ) { - int LA12_48 = input.LA(4); - - if ( ((LA12_48>='0' && LA12_48<='9')||(LA12_48>='A' && LA12_48<='Z')||LA12_48=='_'||(LA12_48>='a' && LA12_48<='z')) ) { - alt12=17; - } - else { - alt12=12;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else if ( (LA12_0=='B') ) { - int LA12_11 = input.LA(2); - - if ( (LA12_11=='L') ) { - int LA12_34 = input.LA(3); - - if ( (LA12_34=='A') ) { - int LA12_49 = input.LA(4); - - if ( (LA12_49=='U') ) { - int LA12_59 = input.LA(5); - - if ( ((LA12_59>='0' && LA12_59<='9')||(LA12_59>='A' && LA12_59<='Z')||LA12_59=='_'||(LA12_59>='a' && LA12_59<='z')) ) { - alt12=17; - } - else { - alt12=13;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else if ( (LA12_0=='G') ) { - switch ( input.LA(2) ) { - case 'R': - { - int LA12_35 = input.LA(3); - - if ( (LA12_35=='\u00DC') ) { - alt12=15; - } - else { - alt12=17;} - } - break; - case 'E': - { - int LA12_36 = input.LA(3); - - if ( (LA12_36=='L') ) { - int LA12_51 = input.LA(4); - - if ( (LA12_51=='B') ) { - int LA12_60 = input.LA(5); - - if ( ((LA12_60>='0' && LA12_60<='9')||(LA12_60>='A' && LA12_60<='Z')||LA12_60=='_'||(LA12_60>='a' && LA12_60<='z')) ) { - alt12=17; - } - else { - alt12=14;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - break; - default: - alt12=17;} - - } - else if ( (LA12_0=='t') ) { - int LA12_13 = input.LA(2); - - if ( (LA12_13=='y') ) { - int LA12_37 = input.LA(3); - - if ( (LA12_37=='p') ) { - int LA12_52 = input.LA(4); - - if ( (LA12_52=='e') ) { - int LA12_61 = input.LA(5); - - if ( ((LA12_61>='0' && LA12_61<='9')||(LA12_61>='A' && LA12_61<='Z')||LA12_61=='_'||(LA12_61>='a' && LA12_61<='z')) ) { - alt12=17; - } - else { - alt12=16;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else { - alt12=17;} - } - else if ( (LA12_0=='^') ) { - int LA12_14 = input.LA(2); - - if ( ((LA12_14>='A' && LA12_14<='Z')||LA12_14=='_'||(LA12_14>='a' && LA12_14<='z')) ) { - alt12=17; - } - else { - alt12=23;} - } - else if ( (LA12_0=='A'||(LA12_0>='C' && LA12_0<='F')||(LA12_0>='H' && LA12_0<='Q')||(LA12_0>='S' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='d')||(LA12_0>='g' && LA12_0<='j')||(LA12_0>='l' && LA12_0<='r')||(LA12_0>='u' && LA12_0<='z')) ) { - alt12=17; - } - else if ( ((LA12_0>='0' && LA12_0<='9')) ) { - alt12=18; - } - else if ( (LA12_0=='\"') ) { - int LA12_17 = input.LA(2); - - if ( ((LA12_17>='\u0000' && LA12_17<='\uFFFE')) ) { - alt12=19; - } - else { - alt12=23;} - } - else if ( (LA12_0=='\'') ) { - int LA12_18 = input.LA(2); - - if ( ((LA12_18>='\u0000' && LA12_18<='\uFFFE')) ) { - alt12=19; - } - else { - alt12=23;} - } - else if ( (LA12_0=='/') ) { - switch ( input.LA(2) ) { - case '/': - { - alt12=21; - } - break; - case '*': - { - alt12=20; - } - break; - default: - alt12=23;} - - } - else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) { - alt12=22; - } - 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>='~' && LA12_0<='\uFFFE')) ) { - alt12=23; - } - else { - NoViableAltException nvae = - new NoViableAltException("1:1: Tokens : ( T11 | T12 | T13 | T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | T22 | T23 | T24 | T25 | T26 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );", 12, 0, input); - - throw nvae; - } - switch (alt12) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:10: T11 - { - mT11(); - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:14: T12 - { - mT12(); - - } - break; - case 3 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:18: T13 - { - mT13(); - - } - break; - case 4 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:22: T14 - { - mT14(); - - } - break; - case 5 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:26: T15 - { - mT15(); - - } - break; - case 6 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:30: T16 - { - mT16(); - - } - break; - case 7 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:34: T17 - { - mT17(); - - } - break; - case 8 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:38: T18 - { - mT18(); - - } - break; - case 9 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:42: T19 - { - mT19(); - - } - break; - case 10 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:46: T20 - { - mT20(); - - } - break; - case 11 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:50: T21 - { - mT21(); - - } - break; - case 12 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:54: T22 - { - mT22(); - - } - break; - case 13 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:58: T23 - { - mT23(); - - } - break; - case 14 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:62: T24 - { - mT24(); - - } - break; - case 15 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:66: T25 - { - mT25(); - - } - break; - case 16 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:70: T26 - { - mT26(); - - } - break; - case 17 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:74: RULE_ID - { - mRULE_ID(); - - } - break; - case 18 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:82: RULE_INT - { - mRULE_INT(); - - } - break; - case 19 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:91: RULE_STRING - { - mRULE_STRING(); - - } - break; - case 20 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:103: RULE_ML_COMMENT - { - mRULE_ML_COMMENT(); - - } - break; - case 21 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:119: RULE_SL_COMMENT - { - mRULE_SL_COMMENT(); - - } - break; - case 22 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:135: RULE_WS - { - mRULE_WS(); - - } - break; - case 23 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:1:143: RULE_ANY_OTHER - { - mRULE_ANY_OTHER(); - - } - break; - - } - - } - - - - -}
\ No newline at end of file diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammarParser.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammarParser.java deleted file mode 100644 index c7a9900..0000000 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammarParser.java +++ b/dev/null @@ -1,1633 +0,0 @@ -// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g 2009-01-12 18:36:32 - -package org.eclipse.xtext.reference.parser.internal; - -import java.io.InputStream; -import org.eclipse.xtext.*; -import org.eclipse.xtext.parser.*; -import org.eclipse.xtext.parser.impl.*; -import org.eclipse.xtext.parsetree.*; -import org.eclipse.emf.ecore.util.EcoreUtil; -import org.eclipse.emf.ecore.EObject; -import org.eclipse.xtext.parser.antlr.AbstractAntlrParser; -import org.eclipse.xtext.parser.antlr.XtextTokenStream; -import org.eclipse.xtext.parser.antlr.DatatypeRuleToken; -import org.eclipse.xtext.parser.antlr.ValueConverterException; - - - -import org.antlr.runtime.*; -import java.util.Stack; -import java.util.List; -import java.util.ArrayList; - -public class InternalReferenceGrammarParser extends AbstractAntlrParser { - public static final String[] tokenNames = new String[] { - "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_INT", "RULE_STRING", "RULE_ID", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'spielplatz'", "'{'", "'}'", "'kind'", "'('", "')'", "'erwachsener'", "'spielzeug'", "'familie'", "'keyword'", "','", "'ROT'", "'BLAU'", "'GELB'", "'GRÜN'", "'type'" - }; - public static final int RULE_ML_COMMENT=7; - public static final int RULE_ID=6; - public static final int RULE_WS=9; - public static final int EOF=-1; - public static final int RULE_INT=4; - public static final int RULE_STRING=5; - public static final int RULE_ANY_OTHER=10; - public static final int RULE_SL_COMMENT=8; - - public InternalReferenceGrammarParser(TokenStream input) { - super(input); - } - - - public String[] getTokenNames() { return tokenNames; } - public String getGrammarFileName() { return "./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g"; } - - - - public InternalReferenceGrammarParser(TokenStream input, IAstFactory factory, Grammar g) { - this(input); - this.factory = factory; - grammar = g; - } - - @Override - protected InputStream getTokenFile() { - ClassLoader classLoader = InternalReferenceGrammarParser.class.getClassLoader(); - return classLoader.getResourceAsStream("org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.tokens"); - } - - @Override - protected String getFirstRuleName() { - return "Spielplatz"; - } - - - - // $ANTLR start entryRuleSpielplatz - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:66:1: entryRuleSpielplatz returns [EObject current=null] : iv_ruleSpielplatz= ruleSpielplatz EOF ; - public final EObject entryRuleSpielplatz() throws RecognitionException { - EObject current = null; - - EObject iv_ruleSpielplatz = null; - - - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:66:52: (iv_ruleSpielplatz= ruleSpielplatz EOF ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:67:2: iv_ruleSpielplatz= ruleSpielplatz EOF - { - currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleSpielplatz_in_entryRuleSpielplatz71); - iv_ruleSpielplatz=ruleSpielplatz(); - _fsp--; - - current =iv_ruleSpielplatz; - match(input,EOF,FOLLOW_EOF_in_entryRuleSpielplatz81); - - } - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end entryRuleSpielplatz - - - // $ANTLR start ruleSpielplatz - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:74:1: ruleSpielplatz returns [EObject current=null] : ( ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' )? ; - public final EObject ruleSpielplatz() throws RecognitionException { - EObject current = null; - - Token lv_groesse=null; - Token lv_beschreibung=null; - EObject lv_kinder = null; - - EObject lv_erzieher = null; - - EObject lv_spielzeuge = null; - - EObject lv_familie = null; - - EObject lv_types = null; - - - EObject temp=null; setCurrentLookahead(); resetLookahead(); - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:76:33: ( ( ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' )? ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:1: ( ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' )? - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:1: ( ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' )? - int alt6=2; - int LA6_0 = input.LA(1); - - if ( (LA6_0==11) ) { - alt6=1; - } - switch (alt6) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:2: ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) '}' - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:2: ( ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:3: ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:3: ( ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:4: ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) '{' - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:4: ( ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:5: ( 'spielplatz' (lv_groesse= RULE_INT ) ) (lv_beschreibung= RULE_STRING )? - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:5: ( 'spielplatz' (lv_groesse= RULE_INT ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:77:6: 'spielplatz' (lv_groesse= RULE_INT ) - { - match(input,11,FOLLOW_11_in_ruleSpielplatz119); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:81:1: (lv_groesse= RULE_INT ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:83:6: lv_groesse= RULE_INT - { - lv_groesse=(Token)input.LT(1); - match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleSpielplatz140); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "groesse"); - - - if (current==null) { - current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "groesse", lv_groesse, "INT", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:101:3: (lv_beschreibung= RULE_STRING )? - int alt1=2; - int LA1_0 = input.LA(1); - - if ( (LA1_0==RULE_STRING) ) { - alt1=1; - } - switch (alt1) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:103:6: lv_beschreibung= RULE_STRING - { - lv_beschreibung=(Token)input.LT(1); - match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleSpielplatz173); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "beschreibung"); - - - if (current==null) { - current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "beschreibung", lv_beschreibung, "STRING", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - break; - - } - - - } - - match(input,12,FOLLOW_12_in_ruleSpielplatz195); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:125:2: ( ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) | (lv_types= ruleCustomTypeParserRule ) )* - loop5: - do { - int alt5=3; - int LA5_0 = input.LA(1); - - if ( (LA5_0==14||(LA5_0>=17 && LA5_0<=19)) ) { - alt5=1; - } - else if ( (LA5_0==26) ) { - alt5=2; - } - - - switch (alt5) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:125:3: ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:125:3: ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) ) - int alt4=2; - int LA4_0 = input.LA(1); - - if ( (LA4_0==14||(LA4_0>=17 && LA4_0<=18)) ) { - alt4=1; - } - else if ( (LA4_0==19) ) { - alt4=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("125:3: ( ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) | (lv_familie= ruleFamilie ) )", 4, 0, input); - - throw nvae; - } - switch (alt4) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:125:4: ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:125:4: ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) ) - int alt3=2; - int LA3_0 = input.LA(1); - - if ( (LA3_0==14||LA3_0==17) ) { - alt3=1; - } - else if ( (LA3_0==18) ) { - alt3=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("125:4: ( ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) | (lv_spielzeuge= ruleSpielzeug ) )", 3, 0, input); - - throw nvae; - } - switch (alt3) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:125:5: ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:125:5: ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) ) - int alt2=2; - int LA2_0 = input.LA(1); - - if ( (LA2_0==14) ) { - alt2=1; - } - else if ( (LA2_0==17) ) { - alt2=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("125:5: ( (lv_kinder= ruleKind ) | (lv_erzieher= ruleErwachsener ) )", 2, 0, input); - - throw nvae; - } - switch (alt2) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:125:6: (lv_kinder= ruleKind ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:125:6: (lv_kinder= ruleKind ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:128:6: lv_kinder= ruleKind - { - - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.0/@groups.0/@terminal" /* xtext::RuleCall */, currentNode); - - pushFollow(FOLLOW_ruleKind_in_ruleSpielplatz234); - lv_kinder=ruleKind(); - _fsp--; - - - if (current==null) { - current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), current); - } - - try { - factory.add(current, "kinder", lv_kinder, "Kind", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - - - } - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:147:6: (lv_erzieher= ruleErwachsener ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:147:6: (lv_erzieher= ruleErwachsener ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:150:6: lv_erzieher= ruleErwachsener - { - - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); - - pushFollow(FOLLOW_ruleErwachsener_in_ruleSpielplatz278); - lv_erzieher=ruleErwachsener(); - _fsp--; - - - if (current==null) { - current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), current); - } - - try { - factory.add(current, "erzieher", lv_erzieher, "Erwachsener", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - - - } - - - } - break; - - } - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:169:6: (lv_spielzeuge= ruleSpielzeug ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:169:6: (lv_spielzeuge= ruleSpielzeug ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:172:6: lv_spielzeuge= ruleSpielzeug - { - - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); - - pushFollow(FOLLOW_ruleSpielzeug_in_ruleSpielplatz323); - lv_spielzeuge=ruleSpielzeug(); - _fsp--; - - - if (current==null) { - current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), current); - } - - try { - factory.add(current, "spielzeuge", lv_spielzeuge, "Spielzeug", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - - - } - - - } - break; - - } - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:191:6: (lv_familie= ruleFamilie ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:191:6: (lv_familie= ruleFamilie ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:194:6: lv_familie= ruleFamilie - { - - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.0/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); - - pushFollow(FOLLOW_ruleFamilie_in_ruleSpielplatz368); - lv_familie=ruleFamilie(); - _fsp--; - - - if (current==null) { - current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), current); - } - - try { - factory.add(current, "familie", lv_familie, "Familie", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - - - } - - - } - break; - - } - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:213:6: (lv_types= ruleCustomTypeParserRule ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:213:6: (lv_types= ruleCustomTypeParserRule ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:216:6: lv_types= ruleCustomTypeParserRule - { - - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@groups.1/@terminal" /* xtext::RuleCall */, currentNode); - - pushFollow(FOLLOW_ruleCustomTypeParserRule_in_ruleSpielplatz413); - lv_types=ruleCustomTypeParserRule(); - _fsp--; - - - if (current==null) { - current = factory.create("Spielplatz"); - associateNodeWithAstElement(currentNode.getParent(), current); - } - - try { - factory.add(current, "types", lv_types, "CustomTypeParserRule", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - - - } - - - } - break; - - default : - break loop5; - } - } while (true); - - - } - - match(input,13,FOLLOW_13_in_ruleSpielplatz429); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.0/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - break; - - } - - - } - - resetLookahead(); - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end ruleSpielplatz - - - // $ANTLR start entryRuleKind - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:247:1: entryRuleKind returns [EObject current=null] : iv_ruleKind= ruleKind EOF ; - public final EObject entryRuleKind() throws RecognitionException { - EObject current = null; - - EObject iv_ruleKind = null; - - - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:247:46: (iv_ruleKind= ruleKind EOF ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:248:2: iv_ruleKind= ruleKind EOF - { - currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleKind_in_entryRuleKind465); - iv_ruleKind=ruleKind(); - _fsp--; - - current =iv_ruleKind; - match(input,EOF,FOLLOW_EOF_in_entryRuleKind475); - - } - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end entryRuleKind - - - // $ANTLR start ruleKind - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:255:1: ruleKind returns [EObject current=null] : ( ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) ; - public final EObject ruleKind() throws RecognitionException { - EObject current = null; - - Token lv_name=null; - Token lv_age=null; - - EObject temp=null; setCurrentLookahead(); resetLookahead(); - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:257:33: ( ( ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:258:1: ( ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:258:1: ( ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:258:2: ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:258:2: ( ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:258:3: ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:258:3: ( ( 'kind' '(' ) (lv_name= RULE_ID ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:258:4: ( 'kind' '(' ) (lv_name= RULE_ID ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:258:4: ( 'kind' '(' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:258:5: 'kind' '(' - { - match(input,14,FOLLOW_14_in_ruleKind512); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - - match(input,15,FOLLOW_15_in_ruleKind521); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:266:2: (lv_name= RULE_ID ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:268:6: lv_name= RULE_ID - { - lv_name=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleKind543); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); - - - if (current==null) { - current = factory.create("Kind"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "name", lv_name, "ID", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:286:3: (lv_age= RULE_INT ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:288:6: lv_age= RULE_INT - { - lv_age=(Token)input.LT(1); - match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleKind576); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "age"); - - - if (current==null) { - current = factory.create("Kind"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "age", lv_age, "INT", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - - - } - - match(input,16,FOLLOW_16_in_ruleKind597); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.2/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - - - } - - resetLookahead(); - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end ruleKind - - - // $ANTLR start entryRuleErwachsener - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:317:1: entryRuleErwachsener returns [EObject current=null] : iv_ruleErwachsener= ruleErwachsener EOF ; - public final EObject entryRuleErwachsener() throws RecognitionException { - EObject current = null; - - EObject iv_ruleErwachsener = null; - - - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:317:53: (iv_ruleErwachsener= ruleErwachsener EOF ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:318:2: iv_ruleErwachsener= ruleErwachsener EOF - { - currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleErwachsener_in_entryRuleErwachsener630); - iv_ruleErwachsener=ruleErwachsener(); - _fsp--; - - current =iv_ruleErwachsener; - match(input,EOF,FOLLOW_EOF_in_entryRuleErwachsener640); - - } - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end entryRuleErwachsener - - - // $ANTLR start ruleErwachsener - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:325:1: ruleErwachsener returns [EObject current=null] : ( ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) ; - public final EObject ruleErwachsener() throws RecognitionException { - EObject current = null; - - Token lv_name=null; - Token lv_age=null; - - EObject temp=null; setCurrentLookahead(); resetLookahead(); - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:327:33: ( ( ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:328:1: ( ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:328:1: ( ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:328:2: ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) ')' - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:328:2: ( ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:328:3: ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) (lv_age= RULE_INT ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:328:3: ( ( 'erwachsener' '(' ) (lv_name= RULE_ID ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:328:4: ( 'erwachsener' '(' ) (lv_name= RULE_ID ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:328:4: ( 'erwachsener' '(' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:328:5: 'erwachsener' '(' - { - match(input,17,FOLLOW_17_in_ruleErwachsener677); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - - match(input,15,FOLLOW_15_in_ruleErwachsener686); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:336:2: (lv_name= RULE_ID ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:338:6: lv_name= RULE_ID - { - lv_name=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleErwachsener708); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); - - - if (current==null) { - current = factory.create("Erwachsener"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "name", lv_name, "ID", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:356:3: (lv_age= RULE_INT ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:358:6: lv_age= RULE_INT - { - lv_age=(Token)input.LT(1); - match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleErwachsener741); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "age"); - - - if (current==null) { - current = factory.create("Erwachsener"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "age", lv_age, "INT", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - - - } - - match(input,16,FOLLOW_16_in_ruleErwachsener762); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.3/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - - - } - - resetLookahead(); - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end ruleErwachsener - - - // $ANTLR start entryRuleSpielzeug - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:387:1: entryRuleSpielzeug returns [EObject current=null] : iv_ruleSpielzeug= ruleSpielzeug EOF ; - public final EObject entryRuleSpielzeug() throws RecognitionException { - EObject current = null; - - EObject iv_ruleSpielzeug = null; - - - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:387:51: (iv_ruleSpielzeug= ruleSpielzeug EOF ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:388:2: iv_ruleSpielzeug= ruleSpielzeug EOF - { - currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleSpielzeug_in_entryRuleSpielzeug795); - iv_ruleSpielzeug=ruleSpielzeug(); - _fsp--; - - current =iv_ruleSpielzeug; - match(input,EOF,FOLLOW_EOF_in_entryRuleSpielzeug805); - - } - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end entryRuleSpielzeug - - - // $ANTLR start ruleSpielzeug - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:395:1: ruleSpielzeug returns [EObject current=null] : ( ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' ) ; - public final EObject ruleSpielzeug() throws RecognitionException { - EObject current = null; - - Token lv_name=null; - EObject lv_farbe = null; - - - EObject temp=null; setCurrentLookahead(); resetLookahead(); - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:397:33: ( ( ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:398:1: ( ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:398:1: ( ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:398:2: ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) ')' - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:398:2: ( ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:398:3: ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) (lv_farbe= ruleFarbe ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:398:3: ( ( 'spielzeug' '(' ) (lv_name= RULE_ID ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:398:4: ( 'spielzeug' '(' ) (lv_name= RULE_ID ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:398:4: ( 'spielzeug' '(' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:398:5: 'spielzeug' '(' - { - match(input,18,FOLLOW_18_in_ruleSpielzeug842); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - - match(input,15,FOLLOW_15_in_ruleSpielzeug851); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:406:2: (lv_name= RULE_ID ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:408:6: lv_name= RULE_ID - { - lv_name=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleSpielzeug873); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); - - - if (current==null) { - current = factory.create("Spielzeug"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "name", lv_name, "ID", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:426:3: (lv_farbe= ruleFarbe ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:429:6: lv_farbe= ruleFarbe - { - - currentNode=createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); - - pushFollow(FOLLOW_ruleFarbe_in_ruleSpielzeug919); - lv_farbe=ruleFarbe(); - _fsp--; - - - if (current==null) { - current = factory.create("Spielzeug"); - associateNodeWithAstElement(currentNode.getParent(), current); - } - - try { - factory.set(current, "farbe", lv_farbe, "Farbe", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - currentNode = currentNode.getParent(); - - - } - - - } - - match(input,16,FOLLOW_16_in_ruleSpielzeug933); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.4/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - - - } - - resetLookahead(); - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end ruleSpielzeug - - - // $ANTLR start entryRuleFamilie - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:458:1: entryRuleFamilie returns [EObject current=null] : iv_ruleFamilie= ruleFamilie EOF ; - public final EObject entryRuleFamilie() throws RecognitionException { - EObject current = null; - - EObject iv_ruleFamilie = null; - - - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:458:49: (iv_ruleFamilie= ruleFamilie EOF ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:459:2: iv_ruleFamilie= ruleFamilie EOF - { - currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleFamilie_in_entryRuleFamilie966); - iv_ruleFamilie=ruleFamilie(); - _fsp--; - - current =iv_ruleFamilie; - match(input,EOF,FOLLOW_EOF_in_entryRuleFamilie976); - - } - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end entryRuleFamilie - - - // $ANTLR start ruleFamilie - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:466:1: ruleFamilie returns [EObject current=null] : ( ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' ) ; - public final EObject ruleFamilie() throws RecognitionException { - EObject current = null; - - Token lv_name=null; - - EObject temp=null; setCurrentLookahead(); resetLookahead(); - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:468:33: ( ( ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:1: ( ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:1: ( ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:2: ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) ')' - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:2: ( ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:3: ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) )* - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:3: ( ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:4: ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:4: ( ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:5: ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) ( ( RULE_ID ) ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:5: ( ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:6: ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) ( ( RULE_ID ) ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:6: ( ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:7: ( 'familie' '(' ) (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:7: ( 'familie' '(' ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:469:8: 'familie' '(' - { - match(input,19,FOLLOW_19_in_ruleFamilie1016); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - - match(input,15,FOLLOW_15_in_ruleFamilie1025); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:477:2: (lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:479:6: lv_name= ( ( 'keyword' | RULE_STRING ) | RULE_ID ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:479:14: ( ( 'keyword' | RULE_STRING ) | RULE_ID ) - int alt8=2; - int LA8_0 = input.LA(1); - - if ( (LA8_0==RULE_STRING||LA8_0==20) ) { - alt8=1; - } - else if ( (LA8_0==RULE_ID) ) { - alt8=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("479:14: ( ( 'keyword' | RULE_STRING ) | RULE_ID )", 8, 0, input); - - throw nvae; - } - switch (alt8) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:479:15: ( 'keyword' | RULE_STRING ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:479:15: ( 'keyword' | RULE_STRING ) - int alt7=2; - int LA7_0 = input.LA(1); - - if ( (LA7_0==20) ) { - alt7=1; - } - else if ( (LA7_0==RULE_STRING) ) { - alt7=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("479:15: ( 'keyword' | RULE_STRING )", 7, 0, input); - - throw nvae; - } - switch (alt7) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:479:16: 'keyword' - { - match(input,20,FOLLOW_20_in_ruleFamilie1049); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.0" /* xtext::Keyword */, "name"); - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:484:6: RULE_STRING - { - match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleFamilie1064); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.1" /* xtext::RuleCall */, "name"); - - - } - break; - - } - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:489:6: RULE_ID - { - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1079); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.1" /* xtext::RuleCall */, "name"); - - - } - break; - - } - - - if (current==null) { - current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "name", input.LT(-1), null, currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:507:3: ( ( RULE_ID ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:510:3: ( RULE_ID ) - { - - if (current==null) { - current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, current); - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:516:1: ( RULE_ID ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:517:2: RULE_ID - { - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1116); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "mutter"); - - - } - - - } - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:522:3: ( ( RULE_ID ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:525:3: ( RULE_ID ) - { - - if (current==null) { - current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, current); - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:531:1: ( RULE_ID ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:532:2: RULE_ID - { - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1145); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "vater"); - - - } - - - } - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:537:3: ( ( RULE_ID ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:540:3: ( RULE_ID ) - { - - if (current==null) { - current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, current); - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:546:1: ( RULE_ID ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:547:2: RULE_ID - { - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1174); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "kinder"); - - - } - - - } - - - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:552:3: ( ',' ( ( RULE_ID ) ) )* - loop9: - do { - int alt9=2; - int LA9_0 = input.LA(1); - - if ( (LA9_0==21) ) { - alt9=1; - } - - - switch (alt9) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:552:4: ',' ( ( RULE_ID ) ) - { - match(input,21,FOLLOW_21_in_ruleFamilie1189); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:556:1: ( ( RULE_ID ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:559:3: ( RULE_ID ) - { - - if (current==null) { - current = factory.create("Familie"); - associateNodeWithAstElement(currentNode, current); - } - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:565:1: ( RULE_ID ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:566:2: RULE_ID - { - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleFamilie1213); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "kinder"); - - - } - - - } - - - } - break; - - default : - break loop9; - } - } while (true); - - - } - - match(input,16,FOLLOW_16_in_ruleFamilie1229); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.5/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); - - - } - - - } - - resetLookahead(); - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end ruleFamilie - - - // $ANTLR start entryRuleFarbe - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:582:1: entryRuleFarbe returns [EObject current=null] : iv_ruleFarbe= ruleFarbe EOF ; - public final EObject entryRuleFarbe() throws RecognitionException { - EObject current = null; - - EObject iv_ruleFarbe = null; - - - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:582:47: (iv_ruleFarbe= ruleFarbe EOF ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:583:2: iv_ruleFarbe= ruleFarbe EOF - { - currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleFarbe_in_entryRuleFarbe1262); - iv_ruleFarbe=ruleFarbe(); - _fsp--; - - current =iv_ruleFarbe; - match(input,EOF,FOLLOW_EOF_in_entryRuleFarbe1272); - - } - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end entryRuleFarbe - - - // $ANTLR start ruleFarbe - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:590:1: ruleFarbe returns [EObject current=null] : (lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) ) ; - public final EObject ruleFarbe() throws RecognitionException { - EObject current = null; - - Token lv_wert=null; - - EObject temp=null; setCurrentLookahead(); resetLookahead(); - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:592:33: ( (lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:593:1: (lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:593:1: (lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:595:6: lv_wert= ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:595:14: ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' ) - int alt12=2; - int LA12_0 = input.LA(1); - - if ( ((LA12_0>=22 && LA12_0<=24)) ) { - alt12=1; - } - else if ( (LA12_0==25) ) { - alt12=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("595:14: ( ( ( 'ROT' | 'BLAU' ) | 'GELB' ) | 'GRÜN' )", 12, 0, input); - - throw nvae; - } - switch (alt12) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:595:15: ( ( 'ROT' | 'BLAU' ) | 'GELB' ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:595:15: ( ( 'ROT' | 'BLAU' ) | 'GELB' ) - int alt11=2; - int LA11_0 = input.LA(1); - - if ( ((LA11_0>=22 && LA11_0<=23)) ) { - alt11=1; - } - else if ( (LA11_0==24) ) { - alt11=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("595:15: ( ( 'ROT' | 'BLAU' ) | 'GELB' )", 11, 0, input); - - throw nvae; - } - switch (alt11) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:595:16: ( 'ROT' | 'BLAU' ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:595:16: ( 'ROT' | 'BLAU' ) - int alt10=2; - int LA10_0 = input.LA(1); - - if ( (LA10_0==22) ) { - alt10=1; - } - else if ( (LA10_0==23) ) { - alt10=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("595:16: ( 'ROT' | 'BLAU' )", 10, 0, input); - - throw nvae; - } - switch (alt10) { - case 1 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:595:17: 'ROT' - { - match(input,22,FOLLOW_22_in_ruleFarbe1320); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.0/@groups.0" /* xtext::Keyword */, "wert"); - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:600:6: 'BLAU' - { - match(input,23,FOLLOW_23_in_ruleFarbe1335); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.0/@groups.1" /* xtext::Keyword */, "wert"); - - - } - break; - - } - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:605:6: 'GELB' - { - match(input,24,FOLLOW_24_in_ruleFarbe1351); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.0/@groups.1" /* xtext::Keyword */, "wert"); - - - } - break; - - } - - - } - break; - case 2 : - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:610:6: 'GRÜN' - { - match(input,25,FOLLOW_25_in_ruleFarbe1367); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.6/@alternatives/@terminal/@groups.1" /* xtext::Keyword */, "wert"); - - - } - break; - - } - - - if (current==null) { - current = factory.create("Farbe"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "wert", input.LT(-1), null, currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - - - } - - resetLookahead(); - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end ruleFarbe - - - // $ANTLR start entryRuleCustomTypeParserRule - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:635:1: entryRuleCustomTypeParserRule returns [EObject current=null] : iv_ruleCustomTypeParserRule= ruleCustomTypeParserRule EOF ; - public final EObject entryRuleCustomTypeParserRule() throws RecognitionException { - EObject current = null; - - EObject iv_ruleCustomTypeParserRule = null; - - - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:635:62: (iv_ruleCustomTypeParserRule= ruleCustomTypeParserRule EOF ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:636:2: iv_ruleCustomTypeParserRule= ruleCustomTypeParserRule EOF - { - currentNode = createCompositeNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleCustomTypeParserRule_in_entryRuleCustomTypeParserRule1412); - iv_ruleCustomTypeParserRule=ruleCustomTypeParserRule(); - _fsp--; - - current =iv_ruleCustomTypeParserRule; - match(input,EOF,FOLLOW_EOF_in_entryRuleCustomTypeParserRule1422); - - } - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end entryRuleCustomTypeParserRule - - - // $ANTLR start ruleCustomTypeParserRule - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:643:1: ruleCustomTypeParserRule returns [EObject current=null] : ( 'type' (lv_name= RULE_ID ) ) ; - public final EObject ruleCustomTypeParserRule() throws RecognitionException { - EObject current = null; - - Token lv_name=null; - - EObject temp=null; setCurrentLookahead(); resetLookahead(); - try { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:645:33: ( ( 'type' (lv_name= RULE_ID ) ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:646:1: ( 'type' (lv_name= RULE_ID ) ) - { - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:646:1: ( 'type' (lv_name= RULE_ID ) ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:646:2: 'type' (lv_name= RULE_ID ) - { - match(input,26,FOLLOW_26_in_ruleCustomTypeParserRule1456); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7/@alternatives/@abstractTokens.0" /* xtext::Keyword */, null); - - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:650:1: (lv_name= RULE_ID ) - // ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g:652:6: lv_name= RULE_ID - { - lv_name=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleCustomTypeParserRule1477); - - createLeafNode("classpath:/org/eclipse/xtext/reference/ReferenceGrammar.xmi#//@rules.7/@alternatives/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); - - - if (current==null) { - current = factory.create("CustomType"); - associateNodeWithAstElement(currentNode, current); - } - - try { - factory.set(current, "name", lv_name, "ID", currentNode); - } catch (ValueConverterException vce) { - handleValueConverterException(vce); - } - - - } - - - } - - - } - - resetLookahead(); - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end ruleCustomTypeParserRule - - - - - public static final BitSet FOLLOW_ruleSpielplatz_in_entryRuleSpielplatz71 = new BitSet(new long[]{0x0000000000000000L}); - public static final BitSet FOLLOW_EOF_in_entryRuleSpielplatz81 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_11_in_ruleSpielplatz119 = new BitSet(new long[]{0x0000000000000010L}); - public static final BitSet FOLLOW_RULE_INT_in_ruleSpielplatz140 = new BitSet(new long[]{0x0000000000001020L}); - public static final BitSet FOLLOW_RULE_STRING_in_ruleSpielplatz173 = new BitSet(new long[]{0x0000000000001000L}); - public static final BitSet FOLLOW_12_in_ruleSpielplatz195 = new BitSet(new long[]{0x00000000040E6000L}); - public static final BitSet FOLLOW_ruleKind_in_ruleSpielplatz234 = new BitSet(new long[]{0x00000000040E6000L}); - public static final BitSet FOLLOW_ruleErwachsener_in_ruleSpielplatz278 = new BitSet(new long[]{0x00000000040E6000L}); - public static final BitSet FOLLOW_ruleSpielzeug_in_ruleSpielplatz323 = new BitSet(new long[]{0x00000000040E6000L}); - public static final BitSet FOLLOW_ruleFamilie_in_ruleSpielplatz368 = new BitSet(new long[]{0x00000000040E6000L}); - public static final BitSet FOLLOW_ruleCustomTypeParserRule_in_ruleSpielplatz413 = new BitSet(new long[]{0x00000000040E6000L}); - public static final BitSet FOLLOW_13_in_ruleSpielplatz429 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ruleKind_in_entryRuleKind465 = new BitSet(new long[]{0x0000000000000000L}); - public static final BitSet FOLLOW_EOF_in_entryRuleKind475 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_14_in_ruleKind512 = new BitSet(new long[]{0x0000000000008000L}); - public static final BitSet FOLLOW_15_in_ruleKind521 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_ID_in_ruleKind543 = new BitSet(new long[]{0x0000000000000010L}); - public static final BitSet FOLLOW_RULE_INT_in_ruleKind576 = new BitSet(new long[]{0x0000000000010000L}); - public static final BitSet FOLLOW_16_in_ruleKind597 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ruleErwachsener_in_entryRuleErwachsener630 = new BitSet(new long[]{0x0000000000000000L}); - public static final BitSet FOLLOW_EOF_in_entryRuleErwachsener640 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_17_in_ruleErwachsener677 = new BitSet(new long[]{0x0000000000008000L}); - public static final BitSet FOLLOW_15_in_ruleErwachsener686 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_ID_in_ruleErwachsener708 = new BitSet(new long[]{0x0000000000000010L}); - public static final BitSet FOLLOW_RULE_INT_in_ruleErwachsener741 = new BitSet(new long[]{0x0000000000010000L}); - public static final BitSet FOLLOW_16_in_ruleErwachsener762 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ruleSpielzeug_in_entryRuleSpielzeug795 = new BitSet(new long[]{0x0000000000000000L}); - public static final BitSet FOLLOW_EOF_in_entryRuleSpielzeug805 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_18_in_ruleSpielzeug842 = new BitSet(new long[]{0x0000000000008000L}); - public static final BitSet FOLLOW_15_in_ruleSpielzeug851 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_ID_in_ruleSpielzeug873 = new BitSet(new long[]{0x0000000003C00000L}); - public static final BitSet FOLLOW_ruleFarbe_in_ruleSpielzeug919 = new BitSet(new long[]{0x0000000000010000L}); - public static final BitSet FOLLOW_16_in_ruleSpielzeug933 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ruleFamilie_in_entryRuleFamilie966 = new BitSet(new long[]{0x0000000000000000L}); - public static final BitSet FOLLOW_EOF_in_entryRuleFamilie976 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_19_in_ruleFamilie1016 = new BitSet(new long[]{0x0000000000008000L}); - public static final BitSet FOLLOW_15_in_ruleFamilie1025 = new BitSet(new long[]{0x0000000000100060L}); - public static final BitSet FOLLOW_20_in_ruleFamilie1049 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_STRING_in_ruleFamilie1064 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1079 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1116 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1145 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1174 = new BitSet(new long[]{0x0000000000210000L}); - public static final BitSet FOLLOW_21_in_ruleFamilie1189 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_ID_in_ruleFamilie1213 = new BitSet(new long[]{0x0000000000210000L}); - public static final BitSet FOLLOW_16_in_ruleFamilie1229 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ruleFarbe_in_entryRuleFarbe1262 = new BitSet(new long[]{0x0000000000000000L}); - public static final BitSet FOLLOW_EOF_in_entryRuleFarbe1272 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_22_in_ruleFarbe1320 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_23_in_ruleFarbe1335 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_24_in_ruleFarbe1351 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_25_in_ruleFarbe1367 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ruleCustomTypeParserRule_in_entryRuleCustomTypeParserRule1412 = new BitSet(new long[]{0x0000000000000000L}); - public static final BitSet FOLLOW_EOF_in_entryRuleCustomTypeParserRule1422 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_26_in_ruleCustomTypeParserRule1456 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_RULE_ID_in_ruleCustomTypeParserRule1477 = new BitSet(new long[]{0x0000000000000002L}); - -}
\ No newline at end of file diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar__.g b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar__.g deleted file mode 100644 index c37af4a..0000000 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar__.g +++ b/dev/null @@ -1,48 +0,0 @@ -lexer grammar InternalReferenceGrammar; -@header { -package org.eclipse.xtext.reference.parser.internal; - -// Hack: Use our own Lexer superclass by means of import. -// Currently there is no other way to specify the superclass for the lexer. -import org.eclipse.xtext.parser.antlr.Lexer; -} - -T11 : 'spielplatz' ; -T12 : '{' ; -T13 : '}' ; -T14 : 'kind' ; -T15 : '(' ; -T16 : ')' ; -T17 : 'erwachsener' ; -T18 : 'spielzeug' ; -T19 : 'familie' ; -T20 : 'keyword' ; -T21 : ',' ; -T22 : 'ROT' ; -T23 : 'BLAU' ; -T24 : 'GELB' ; -T25 : 'GRÜN' ; -T26 : 'type' ; - -// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g" 676 -RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; - -// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g" 678 -RULE_INT : ('0'..'9')+; - -// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g" 680 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; - -// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g" 682 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; - -// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g" 684 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; - -// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g" 686 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; - -// $ANTLR src "./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g" 688 -RULE_ANY_OTHER : .; - - diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarPackratParser.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarPackratParser.java new file mode 100644 index 0000000..3120b64 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarPackratParser.java @@ -0,0 +1,22 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat; + +import org.eclipse.xtext.parser.packrat.AbstractPackratParser; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; + +public class ReferenceGrammarPackratParser extends AbstractPackratParser { + + @Override + protected ReferenceGrammarParserConfiguration createParserConfiguration(ICharSequenceWithOffset input, + IMarkerFactory markerFactory, IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, + IConsumerUtility consumerUtil) { + return new ReferenceGrammarParserConfiguration(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil); + } + +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarParserConfiguration.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarParserConfiguration.java new file mode 100644 index 0000000..3f9ff24 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarParserConfiguration.java @@ -0,0 +1,206 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat; + +import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; + +import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; + +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarSpielplatzConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarPersonConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarKindConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarErwachsenerConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarSpielzeugConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarFamilieConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarFarbeConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarCustomTypeParserRuleConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinIDConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinINTConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinSTRINGConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinML_COMMENTConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinSL_COMMENTConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinWSConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinANY_OTHERConsumer; + +public class ReferenceGrammarParserConfiguration extends AbstractParserConfiguration { + + private XtextBuiltinParserConfiguration xtextBuiltinConfiguration; + + private ReferenceGrammarSpielplatzConsumer spielplatzConsumer; + private ReferenceGrammarPersonConsumer personConsumer; + private ReferenceGrammarKindConsumer kindConsumer; + private ReferenceGrammarErwachsenerConsumer erwachsenerConsumer; + private ReferenceGrammarSpielzeugConsumer spielzeugConsumer; + private ReferenceGrammarFamilieConsumer familieConsumer; + private ReferenceGrammarFarbeConsumer farbeConsumer; + private ReferenceGrammarCustomTypeParserRuleConsumer customTypeParserRuleConsumer; + + public ReferenceGrammarParserConfiguration(ICharSequenceWithOffset input, IMarkerFactory markerFactory, + IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, IConsumerUtility consumerUtil) { + super(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil); + this.xtextBuiltinConfiguration = new XtextBuiltinParserConfiguration( + input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil); + } + + public ReferenceGrammarSpielplatzConsumer getRootConsumer() { + return spielplatzConsumer; + } + + public void createNonTerminalConsumers() { + getXtextBuiltinConfiguration().createNonTerminalConsumers(); + spielplatzConsumer = new ReferenceGrammarSpielplatzConsumer( + getInput(), getMarkerFactory(), getTokenAcceptor(), getHiddenTokenHandler(), getConsumerUtil(), + new ITerminalConsumer[]{ getWsConsumer(), getMlCommentConsumer(), getSlCommentConsumer() } + ); + personConsumer = new ReferenceGrammarPersonConsumer( + getInput(), getMarkerFactory(), getTokenAcceptor(), getHiddenTokenHandler(), getConsumerUtil(), null + ); + kindConsumer = new ReferenceGrammarKindConsumer( + getInput(), getMarkerFactory(), getTokenAcceptor(), getHiddenTokenHandler(), getConsumerUtil(), null + ); + erwachsenerConsumer = new ReferenceGrammarErwachsenerConsumer( + getInput(), getMarkerFactory(), getTokenAcceptor(), getHiddenTokenHandler(), getConsumerUtil(), null + ); + spielzeugConsumer = new ReferenceGrammarSpielzeugConsumer( + getInput(), getMarkerFactory(), getTokenAcceptor(), getHiddenTokenHandler(), getConsumerUtil(), null + ); + familieConsumer = new ReferenceGrammarFamilieConsumer( + getInput(), getMarkerFactory(), getTokenAcceptor(), getHiddenTokenHandler(), getConsumerUtil(), null + ); + farbeConsumer = new ReferenceGrammarFarbeConsumer( + getInput(), getMarkerFactory(), getTokenAcceptor(), getHiddenTokenHandler(), getConsumerUtil(), null + ); + customTypeParserRuleConsumer = new ReferenceGrammarCustomTypeParserRuleConsumer( + getInput(), getMarkerFactory(), getTokenAcceptor(), getHiddenTokenHandler(), getConsumerUtil(), null + ); + } + + public void createTerminalConsumers() { + getXtextBuiltinConfiguration().createTerminalConsumers(); + } + + public void configureConsumers() { + getSpielplatzConsumer().setErwachsenerConsumer(getErwachsenerConsumer()); + getSpielplatzConsumer().setSpielzeugConsumer(getSpielzeugConsumer()); + getSpielplatzConsumer().setIntConsumer(getIntConsumer()); + getSpielplatzConsumer().setStringConsumer(getStringConsumer()); + getSpielplatzConsumer().setFamilieConsumer(getFamilieConsumer()); + getSpielplatzConsumer().setKindConsumer(getKindConsumer()); + getSpielplatzConsumer().setCustomTypeParserRuleConsumer(getCustomTypeParserRuleConsumer()); + + getPersonConsumer().setErwachsenerConsumer(getErwachsenerConsumer()); + getPersonConsumer().setKindConsumer(getKindConsumer()); + + getKindConsumer().setIdConsumer(getIdConsumer()); + getKindConsumer().setIntConsumer(getIntConsumer()); + + getErwachsenerConsumer().setIdConsumer(getIdConsumer()); + getErwachsenerConsumer().setIntConsumer(getIntConsumer()); + + getSpielzeugConsumer().setIdConsumer(getIdConsumer()); + getSpielzeugConsumer().setFarbeConsumer(getFarbeConsumer()); + + getFamilieConsumer().setIdConsumer(getIdConsumer()); + getFamilieConsumer().setStringConsumer(getStringConsumer()); + + getCustomTypeParserRuleConsumer().setIdConsumer(getIdConsumer()); + + getIdConsumer().initFields(this); + getIntConsumer().initFields(this); + getStringConsumer().initFields(this); + getMlCommentConsumer().initFields(this); + getSlCommentConsumer().initFields(this); + getWsConsumer().initFields(this); + getAnyOtherConsumer().initFields(this); + } + + // TODO collect superGrammars transitive + public XtextBuiltinParserConfiguration getXtextBuiltinConfiguration() { + return xtextBuiltinConfiguration; + } + + public ReferenceGrammarSpielplatzConsumer getSpielplatzConsumer() { + return spielplatzConsumer; + } + + + public ReferenceGrammarPersonConsumer getPersonConsumer() { + return personConsumer; + } + + + public ReferenceGrammarKindConsumer getKindConsumer() { + return kindConsumer; + } + + + public ReferenceGrammarErwachsenerConsumer getErwachsenerConsumer() { + return erwachsenerConsumer; + } + + + public ReferenceGrammarSpielzeugConsumer getSpielzeugConsumer() { + return spielzeugConsumer; + } + + + public ReferenceGrammarFamilieConsumer getFamilieConsumer() { + return familieConsumer; + } + + + public ReferenceGrammarFarbeConsumer getFarbeConsumer() { + return farbeConsumer; + } + + + public ReferenceGrammarCustomTypeParserRuleConsumer getCustomTypeParserRuleConsumer() { + return customTypeParserRuleConsumer; + } + + + public XtextBuiltinIDConsumer getIdConsumer() { + return getXtextBuiltinConfiguration().getIdConsumer(); + } + + + public XtextBuiltinINTConsumer getIntConsumer() { + return getXtextBuiltinConfiguration().getIntConsumer(); + } + + + public XtextBuiltinSTRINGConsumer getStringConsumer() { + return getXtextBuiltinConfiguration().getStringConsumer(); + } + + + public XtextBuiltinML_COMMENTConsumer getMlCommentConsumer() { + return getXtextBuiltinConfiguration().getMlCommentConsumer(); + } + + + public XtextBuiltinSL_COMMENTConsumer getSlCommentConsumer() { + return getXtextBuiltinConfiguration().getSlCommentConsumer(); + } + + + public XtextBuiltinWSConsumer getWsConsumer() { + return getXtextBuiltinConfiguration().getWsConsumer(); + } + + + public XtextBuiltinANY_OTHERConsumer getAnyOtherConsumer() { + return getXtextBuiltinConfiguration().getAnyOtherConsumer(); + } + + + +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarCustomTypeParserRuleConsumer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarCustomTypeParserRuleConsumer.java new file mode 100644 index 0000000..b074cc1 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarCustomTypeParserRuleConsumer.java @@ -0,0 +1,79 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat.consumers; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.IMarkerFactory.IMarker; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.NonTerminalConsumer; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.CustomTypeParserRuleElements; + +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinIDConsumer; + +public final class ReferenceGrammarCustomTypeParserRuleConsumer extends NonTerminalConsumer { + + private XtextBuiltinIDConsumer idConsumer; + + public ReferenceGrammarCustomTypeParserRuleConsumer(ICharSequenceWithOffset input, IMarkerFactory markerFactory, + IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, IConsumerUtility consumerUtil, + ITerminalConsumer[] hiddenTokens) { + super(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil, hiddenTokens); + } + + @SuppressWarnings("unused") + protected boolean doConsume() throws Exception { + GROUP$1SUCCESS: { + IMarker mGROUP$1 = mark(); + GROUP$1FAILURE: { + KEYWORD$2SUCCESS: { + if (!consumeKeyword(getRule().ele0KeywordType(), null, false, false)) + break KEYWORD$2SUCCESS; + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + GROUP$1FAILURE: { + ASSIGNMENT$3SUCCESS: { + ASSIGNMENT$3FAILURE: { + if (consumeTerminal(idConsumer, "name", false, false, getRule().ele10LexerRuleCallID())) + break ASSIGNMENT$3FAILURE; + mGROUP$1.rollback(); + break ASSIGNMENT$3SUCCESS; + } + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + return true; + } + return false; + } + + public CustomTypeParserRuleElements getRule() { + return ReferenceGrammarGrammarAccess.INSTANCE.prCustomTypeParserRule(); + } + + protected EObject getGrammarElement() { + return getRule().getRule(); + } + + @Override + protected String getDefaultTypeName() { + return "CustomType"; + } + + public void setIdConsumer(XtextBuiltinIDConsumer idConsumer) { + this.idConsumer = idConsumer; + } + + +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarErwachsenerConsumer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarErwachsenerConsumer.java new file mode 100644 index 0000000..58be746 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarErwachsenerConsumer.java @@ -0,0 +1,140 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat.consumers; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.IMarkerFactory.IMarker; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.NonTerminalConsumer; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.ErwachsenerElements; + +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinIDConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinINTConsumer; + +public final class ReferenceGrammarErwachsenerConsumer extends NonTerminalConsumer { + + private XtextBuiltinIDConsumer idConsumer; + private XtextBuiltinINTConsumer intConsumer; + + public ReferenceGrammarErwachsenerConsumer(ICharSequenceWithOffset input, IMarkerFactory markerFactory, + IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, IConsumerUtility consumerUtil, + ITerminalConsumer[] hiddenTokens) { + super(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil, hiddenTokens); + } + + @SuppressWarnings("unused") + protected boolean doConsume() throws Exception { + GROUP$1SUCCESS: { + IMarker mGROUP$1 = mark(); + GROUP$1FAILURE: { + GROUP$2SUCCESS: { + IMarker mGROUP$2 = mark(); + GROUP$2FAILURE: { + GROUP$3SUCCESS: { + IMarker mGROUP$3 = mark(); + GROUP$3FAILURE: { + GROUP$4SUCCESS: { + IMarker mGROUP$4 = mark(); + GROUP$4FAILURE: { + KEYWORD$5SUCCESS: { + if (!consumeKeyword(getRule().ele0000KeywordErwachsener(), null, false, false)) + break KEYWORD$5SUCCESS; + break GROUP$4FAILURE; + } + mGROUP$4.rollback(); + break GROUP$4SUCCESS; + } + GROUP$4FAILURE: { + KEYWORD$6SUCCESS: { + if (!consumeKeyword(getRule().ele0001KeywordLeftParenthesis(), null, false, false)) + break KEYWORD$6SUCCESS; + break GROUP$4FAILURE; + } + mGROUP$4.rollback(); + break GROUP$4SUCCESS; + } + break GROUP$3FAILURE; + } + mGROUP$3.rollback(); + break GROUP$3SUCCESS; + } + GROUP$3FAILURE: { + ASSIGNMENT$7SUCCESS: { + ASSIGNMENT$7FAILURE: { + if (consumeTerminal(idConsumer, "name", false, false, getRule().ele0010LexerRuleCallID())) + break ASSIGNMENT$7FAILURE; + mGROUP$3.rollback(); + break ASSIGNMENT$7SUCCESS; + } + break GROUP$3FAILURE; + } + mGROUP$3.rollback(); + break GROUP$3SUCCESS; + } + break GROUP$2FAILURE; + } + mGROUP$2.rollback(); + break GROUP$2SUCCESS; + } + GROUP$2FAILURE: { + ASSIGNMENT$9SUCCESS: { + ASSIGNMENT$9FAILURE: { + if (consumeTerminal(intConsumer, "age", false, false, getRule().ele010LexerRuleCallINT())) + break ASSIGNMENT$9FAILURE; + mGROUP$2.rollback(); + break ASSIGNMENT$9SUCCESS; + } + break GROUP$2FAILURE; + } + mGROUP$2.rollback(); + break GROUP$2SUCCESS; + } + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + GROUP$1FAILURE: { + KEYWORD$11SUCCESS: { + if (!consumeKeyword(getRule().ele1KeywordRightParenthesis(), null, false, false)) + break KEYWORD$11SUCCESS; + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + return true; + } + return false; + } + + public ErwachsenerElements getRule() { + return ReferenceGrammarGrammarAccess.INSTANCE.prErwachsener(); + } + + protected EObject getGrammarElement() { + return getRule().getRule(); + } + + @Override + protected String getDefaultTypeName() { + return "Erwachsener"; + } + + public void setIdConsumer(XtextBuiltinIDConsumer idConsumer) { + this.idConsumer = idConsumer; + } + + public void setIntConsumer(XtextBuiltinINTConsumer intConsumer) { + this.intConsumer = intConsumer; + } + + +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarFamilieConsumer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarFamilieConsumer.java new file mode 100644 index 0000000..a1c3222 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarFamilieConsumer.java @@ -0,0 +1,222 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat.consumers; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.IMarkerFactory.IMarker; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.NonTerminalConsumer; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.FamilieElements; + +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinIDConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinSTRINGConsumer; + +public final class ReferenceGrammarFamilieConsumer extends NonTerminalConsumer { + + private XtextBuiltinIDConsumer idConsumer; + private XtextBuiltinSTRINGConsumer stringConsumer; + + public ReferenceGrammarFamilieConsumer(ICharSequenceWithOffset input, IMarkerFactory markerFactory, + IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, IConsumerUtility consumerUtil, + ITerminalConsumer[] hiddenTokens) { + super(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil, hiddenTokens); + } + + @SuppressWarnings("unused") + protected boolean doConsume() throws Exception { + GROUP$1SUCCESS: { + IMarker mGROUP$1 = mark(); + GROUP$1FAILURE: { + GROUP$2SUCCESS: { + IMarker mGROUP$2 = mark(); + GROUP$2FAILURE: { + GROUP$3SUCCESS: { + IMarker mGROUP$3 = mark(); + GROUP$3FAILURE: { + GROUP$4SUCCESS: { + IMarker mGROUP$4 = mark(); + GROUP$4FAILURE: { + GROUP$5SUCCESS: { + IMarker mGROUP$5 = mark(); + GROUP$5FAILURE: { + GROUP$6SUCCESS: { + IMarker mGROUP$6 = mark(); + GROUP$6FAILURE: { + GROUP$7SUCCESS: { + IMarker mGROUP$7 = mark(); + GROUP$7FAILURE: { + KEYWORD$8SUCCESS: { + if (!consumeKeyword(getRule().ele0000000KeywordFamilie(), null, false, false)) + break KEYWORD$8SUCCESS; + break GROUP$7FAILURE; + } + mGROUP$7.rollback(); + break GROUP$7SUCCESS; + } + GROUP$7FAILURE: { + KEYWORD$9SUCCESS: { + if (!consumeKeyword(getRule().ele0000001KeywordLeftParenthesis(), null, false, false)) + break KEYWORD$9SUCCESS; + break GROUP$7FAILURE; + } + mGROUP$7.rollback(); + break GROUP$7SUCCESS; + } + break GROUP$6FAILURE; + } + mGROUP$6.rollback(); + break GROUP$6SUCCESS; + } + GROUP$6FAILURE: { + ASSIGNMENT$10SUCCESS: { + ASSIGNMENT$10FAILURE: { + if (consumeKeyword(getRule().ele000001000KeywordKeyword(), "name", false, false)) + break ASSIGNMENT$10FAILURE; + if (consumeTerminal(stringConsumer, "name", false, false, getRule().ele000001001LexerRuleCallSTRING())) + break ASSIGNMENT$10FAILURE; + if (consumeTerminal(idConsumer, "name", false, false, getRule().ele00000101LexerRuleCallID())) + break ASSIGNMENT$10FAILURE; + mGROUP$6.rollback(); + break ASSIGNMENT$10SUCCESS; + } + break GROUP$6FAILURE; + } + mGROUP$6.rollback(); + break GROUP$6SUCCESS; + } + break GROUP$5FAILURE; + } + mGROUP$5.rollback(); + break GROUP$5SUCCESS; + } + GROUP$5FAILURE: { + ASSIGNMENT$16SUCCESS: { + ASSIGNMENT$16FAILURE: { + if (consumeTerminal(idConsumer, null, false, false, getRule().ele000010CrossReferenceEStringErwachsener())) + break ASSIGNMENT$16FAILURE; + mGROUP$5.rollback(); + break ASSIGNMENT$16SUCCESS; + } + break GROUP$5FAILURE; + } + mGROUP$5.rollback(); + break GROUP$5SUCCESS; + } + break GROUP$4FAILURE; + } + mGROUP$4.rollback(); + break GROUP$4SUCCESS; + } + GROUP$4FAILURE: { + ASSIGNMENT$19SUCCESS: { + ASSIGNMENT$19FAILURE: { + if (consumeTerminal(idConsumer, null, false, false, getRule().ele00010CrossReferenceEStringErwachsener())) + break ASSIGNMENT$19FAILURE; + mGROUP$4.rollback(); + break ASSIGNMENT$19SUCCESS; + } + break GROUP$4FAILURE; + } + mGROUP$4.rollback(); + break GROUP$4SUCCESS; + } + break GROUP$3FAILURE; + } + mGROUP$3.rollback(); + break GROUP$3SUCCESS; + } + GROUP$3FAILURE: { + ASSIGNMENT$22SUCCESS: { + ASSIGNMENT$22FAILURE: { + if (consumeTerminal(idConsumer, null, true, false, getRule().ele0010CrossReferenceEStringKind())) + break ASSIGNMENT$22FAILURE; + mGROUP$3.rollback(); + break ASSIGNMENT$22SUCCESS; + } + break GROUP$3FAILURE; + } + mGROUP$3.rollback(); + break GROUP$3SUCCESS; + } + break GROUP$2FAILURE; + } + mGROUP$2.rollback(); + break GROUP$2SUCCESS; + } + GROUP$2FAILURE: { + GROUP$25SUCCESS: while(true) { + IMarker mGROUP$25 = mark(); + GROUP$25FAILURE: { + KEYWORD$26SUCCESS: { + if (!consumeKeyword(getRule().ele010KeywordComma(), null, false, false)) + break KEYWORD$26SUCCESS; + break GROUP$25FAILURE; + } + mGROUP$25.rollback(); + break GROUP$25SUCCESS; + } + GROUP$25FAILURE: { + ASSIGNMENT$27SUCCESS: { + ASSIGNMENT$27FAILURE: { + if (consumeTerminal(idConsumer, null, true, false, getRule().ele0110CrossReferenceEStringKind())) + break ASSIGNMENT$27FAILURE; + mGROUP$25.rollback(); + break ASSIGNMENT$27SUCCESS; + } + break GROUP$25FAILURE; + } + mGROUP$25.rollback(); + break GROUP$25SUCCESS; + } + continue GROUP$25SUCCESS; + } + } + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + GROUP$1FAILURE: { + KEYWORD$30SUCCESS: { + if (!consumeKeyword(getRule().ele1KeywordRightParenthesis(), null, false, false)) + break KEYWORD$30SUCCESS; + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + return true; + } + return false; + } + + public FamilieElements getRule() { + return ReferenceGrammarGrammarAccess.INSTANCE.prFamilie(); + } + + protected EObject getGrammarElement() { + return getRule().getRule(); + } + + @Override + protected String getDefaultTypeName() { + return "Familie"; + } + + public void setIdConsumer(XtextBuiltinIDConsumer idConsumer) { + this.idConsumer = idConsumer; + } + + public void setStringConsumer(XtextBuiltinSTRINGConsumer stringConsumer) { + this.stringConsumer = stringConsumer; + } + + +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarFarbeConsumer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarFarbeConsumer.java new file mode 100644 index 0000000..7603e99 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarFarbeConsumer.java @@ -0,0 +1,61 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat.consumers; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.IMarkerFactory.IMarker; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.NonTerminalConsumer; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.FarbeElements; + + +public final class ReferenceGrammarFarbeConsumer extends NonTerminalConsumer { + + + public ReferenceGrammarFarbeConsumer(ICharSequenceWithOffset input, IMarkerFactory markerFactory, + IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, IConsumerUtility consumerUtil, + ITerminalConsumer[] hiddenTokens) { + super(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil, hiddenTokens); + } + + @SuppressWarnings("unused") + protected boolean doConsume() throws Exception { + ASSIGNMENT$1SUCCESS: { + ASSIGNMENT$1FAILURE: { + if (consumeKeyword(getRule().ele0000KeywordROT(), "wert", false, false)) + break ASSIGNMENT$1FAILURE; + if (consumeKeyword(getRule().ele0001KeywordBLAU(), "wert", false, false)) + break ASSIGNMENT$1FAILURE; + if (consumeKeyword(getRule().ele001KeywordGELB(), "wert", false, false)) + break ASSIGNMENT$1FAILURE; + if (consumeKeyword(getRule().ele01KeywordGRÜN(), "wert", false, false)) + break ASSIGNMENT$1FAILURE; + break ASSIGNMENT$1SUCCESS; + } + return true; + } + return false; + } + + public FarbeElements getRule() { + return ReferenceGrammarGrammarAccess.INSTANCE.prFarbe(); + } + + protected EObject getGrammarElement() { + return getRule().getRule(); + } + + @Override + protected String getDefaultTypeName() { + return "Farbe"; + } + + +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarKindConsumer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarKindConsumer.java new file mode 100644 index 0000000..ed15305 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarKindConsumer.java @@ -0,0 +1,140 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat.consumers; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.IMarkerFactory.IMarker; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.NonTerminalConsumer; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.KindElements; + +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinIDConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinINTConsumer; + +public final class ReferenceGrammarKindConsumer extends NonTerminalConsumer { + + private XtextBuiltinIDConsumer idConsumer; + private XtextBuiltinINTConsumer intConsumer; + + public ReferenceGrammarKindConsumer(ICharSequenceWithOffset input, IMarkerFactory markerFactory, + IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, IConsumerUtility consumerUtil, + ITerminalConsumer[] hiddenTokens) { + super(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil, hiddenTokens); + } + + @SuppressWarnings("unused") + protected boolean doConsume() throws Exception { + GROUP$1SUCCESS: { + IMarker mGROUP$1 = mark(); + GROUP$1FAILURE: { + GROUP$2SUCCESS: { + IMarker mGROUP$2 = mark(); + GROUP$2FAILURE: { + GROUP$3SUCCESS: { + IMarker mGROUP$3 = mark(); + GROUP$3FAILURE: { + GROUP$4SUCCESS: { + IMarker mGROUP$4 = mark(); + GROUP$4FAILURE: { + KEYWORD$5SUCCESS: { + if (!consumeKeyword(getRule().ele0000KeywordKind(), null, false, false)) + break KEYWORD$5SUCCESS; + break GROUP$4FAILURE; + } + mGROUP$4.rollback(); + break GROUP$4SUCCESS; + } + GROUP$4FAILURE: { + KEYWORD$6SUCCESS: { + if (!consumeKeyword(getRule().ele0001KeywordLeftParenthesis(), null, false, false)) + break KEYWORD$6SUCCESS; + break GROUP$4FAILURE; + } + mGROUP$4.rollback(); + break GROUP$4SUCCESS; + } + break GROUP$3FAILURE; + } + mGROUP$3.rollback(); + break GROUP$3SUCCESS; + } + GROUP$3FAILURE: { + ASSIGNMENT$7SUCCESS: { + ASSIGNMENT$7FAILURE: { + if (consumeTerminal(idConsumer, "name", false, false, getRule().ele0010LexerRuleCallID())) + break ASSIGNMENT$7FAILURE; + mGROUP$3.rollback(); + break ASSIGNMENT$7SUCCESS; + } + break GROUP$3FAILURE; + } + mGROUP$3.rollback(); + break GROUP$3SUCCESS; + } + break GROUP$2FAILURE; + } + mGROUP$2.rollback(); + break GROUP$2SUCCESS; + } + GROUP$2FAILURE: { + ASSIGNMENT$9SUCCESS: { + ASSIGNMENT$9FAILURE: { + if (consumeTerminal(intConsumer, "age", false, false, getRule().ele010LexerRuleCallINT())) + break ASSIGNMENT$9FAILURE; + mGROUP$2.rollback(); + break ASSIGNMENT$9SUCCESS; + } + break GROUP$2FAILURE; + } + mGROUP$2.rollback(); + break GROUP$2SUCCESS; + } + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + GROUP$1FAILURE: { + KEYWORD$11SUCCESS: { + if (!consumeKeyword(getRule().ele1KeywordRightParenthesis(), null, false, false)) + break KEYWORD$11SUCCESS; + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + return true; + } + return false; + } + + public KindElements getRule() { + return ReferenceGrammarGrammarAccess.INSTANCE.prKind(); + } + + protected EObject getGrammarElement() { + return getRule().getRule(); + } + + @Override + protected String getDefaultTypeName() { + return "Kind"; + } + + public void setIdConsumer(XtextBuiltinIDConsumer idConsumer) { + this.idConsumer = idConsumer; + } + + public void setIntConsumer(XtextBuiltinINTConsumer intConsumer) { + this.intConsumer = intConsumer; + } + + +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarPersonConsumer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarPersonConsumer.java new file mode 100644 index 0000000..b514b73 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarPersonConsumer.java @@ -0,0 +1,75 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat.consumers; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.IMarkerFactory.IMarker; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.NonTerminalConsumer; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.PersonElements; + +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarErwachsenerConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarKindConsumer; + +public final class ReferenceGrammarPersonConsumer extends NonTerminalConsumer { + + private ReferenceGrammarErwachsenerConsumer erwachsenerConsumer; + private ReferenceGrammarKindConsumer kindConsumer; + + public ReferenceGrammarPersonConsumer(ICharSequenceWithOffset input, IMarkerFactory markerFactory, + IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, IConsumerUtility consumerUtil, + ITerminalConsumer[] hiddenTokens) { + super(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil, hiddenTokens); + } + + @SuppressWarnings("unused") + protected boolean doConsume() throws Exception { + ALTERNATIVES$1SUCCESS: { + ALTERNATIVES$1FAILURE: { + RULECALL$2SUCCESS: { + if (!consumeNonTerminal(kindConsumer, null, false, false, getRule().ele0ParserRuleCallKind())) + break RULECALL$2SUCCESS; + break ALTERNATIVES$1FAILURE; + } + RULECALL$3SUCCESS: { + if (!consumeNonTerminal(erwachsenerConsumer, null, false, false, getRule().ele1ParserRuleCallErwachsener())) + break RULECALL$3SUCCESS; + break ALTERNATIVES$1FAILURE; + } + break ALTERNATIVES$1SUCCESS; + } + return true; + } + return false; + } + + public PersonElements getRule() { + return ReferenceGrammarGrammarAccess.INSTANCE.prPerson(); + } + + protected EObject getGrammarElement() { + return getRule().getRule(); + } + + @Override + protected String getDefaultTypeName() { + return "Person"; + } + + public void setErwachsenerConsumer(ReferenceGrammarErwachsenerConsumer erwachsenerConsumer) { + this.erwachsenerConsumer = erwachsenerConsumer; + } + + public void setKindConsumer(ReferenceGrammarKindConsumer kindConsumer) { + this.kindConsumer = kindConsumer; + } + + +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarSpielplatzConsumer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarSpielplatzConsumer.java new file mode 100644 index 0000000..6dcdc7e --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarSpielplatzConsumer.java @@ -0,0 +1,241 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat.consumers; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.IMarkerFactory.IMarker; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.NonTerminalConsumer; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.SpielplatzElements; + +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarErwachsenerConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarSpielzeugConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinINTConsumer; +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinSTRINGConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarFamilieConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarKindConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarCustomTypeParserRuleConsumer; + +public final class ReferenceGrammarSpielplatzConsumer extends NonTerminalConsumer { + + private ReferenceGrammarErwachsenerConsumer erwachsenerConsumer; + private ReferenceGrammarSpielzeugConsumer spielzeugConsumer; + private XtextBuiltinINTConsumer intConsumer; + private XtextBuiltinSTRINGConsumer stringConsumer; + private ReferenceGrammarFamilieConsumer familieConsumer; + private ReferenceGrammarKindConsumer kindConsumer; + private ReferenceGrammarCustomTypeParserRuleConsumer customTypeParserRuleConsumer; + + public ReferenceGrammarSpielplatzConsumer(ICharSequenceWithOffset input, IMarkerFactory markerFactory, + IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, IConsumerUtility consumerUtil, + ITerminalConsumer[] hiddenTokens) { + super(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil, hiddenTokens); + } + + @SuppressWarnings("unused") + protected boolean doConsume() throws Exception { + GROUP$1SUCCESS: { + IMarker mGROUP$1 = mark(); + GROUP$1FAILURE: { + GROUP$2SUCCESS: { + IMarker mGROUP$2 = mark(); + GROUP$2FAILURE: { + GROUP$3SUCCESS: { + IMarker mGROUP$3 = mark(); + GROUP$3FAILURE: { + GROUP$4SUCCESS: { + IMarker mGROUP$4 = mark(); + GROUP$4FAILURE: { + GROUP$5SUCCESS: { + IMarker mGROUP$5 = mark(); + GROUP$5FAILURE: { + KEYWORD$6SUCCESS: { + if (!consumeKeyword(getRule().ele00000KeywordSpielplatz(), null, false, false)) + break KEYWORD$6SUCCESS; + break GROUP$5FAILURE; + } + mGROUP$5.rollback(); + break GROUP$5SUCCESS; + } + GROUP$5FAILURE: { + ASSIGNMENT$7SUCCESS: { + ASSIGNMENT$7FAILURE: { + if (consumeTerminal(intConsumer, "groesse", false, false, getRule().ele000010LexerRuleCallINT())) + break ASSIGNMENT$7FAILURE; + mGROUP$5.rollback(); + break ASSIGNMENT$7SUCCESS; + } + break GROUP$5FAILURE; + } + mGROUP$5.rollback(); + break GROUP$5SUCCESS; + } + break GROUP$4FAILURE; + } + mGROUP$4.rollback(); + break GROUP$4SUCCESS; + } + GROUP$4FAILURE: { + ASSIGNMENT$9SUCCESS: { + ASSIGNMENT$9FAILURE: { + if (consumeTerminal(stringConsumer, "beschreibung", false, false, getRule().ele00010LexerRuleCallSTRING())) + break ASSIGNMENT$9FAILURE; + break ASSIGNMENT$9SUCCESS; + } + break GROUP$4FAILURE; + } + } + break GROUP$3FAILURE; + } + mGROUP$3.rollback(); + break GROUP$3SUCCESS; + } + GROUP$3FAILURE: { + KEYWORD$11SUCCESS: { + if (!consumeKeyword(getRule().ele001KeywordLeftCurlyBracket(), null, false, false)) + break KEYWORD$11SUCCESS; + break GROUP$3FAILURE; + } + mGROUP$3.rollback(); + break GROUP$3SUCCESS; + } + break GROUP$2FAILURE; + } + mGROUP$2.rollback(); + break GROUP$2SUCCESS; + } + GROUP$2FAILURE: { + ALTERNATIVES$12SUCCESS: while(true) { + ALTERNATIVES$12FAILURE: { + ALTERNATIVES$13SUCCESS: { + ALTERNATIVES$13FAILURE: { + ALTERNATIVES$14SUCCESS: { + ALTERNATIVES$14FAILURE: { + ALTERNATIVES$15SUCCESS: { + ALTERNATIVES$15FAILURE: { + ASSIGNMENT$16SUCCESS: { + ASSIGNMENT$16FAILURE: { + if (consumeNonTerminal(kindConsumer, "kinder", true, false , getRule().ele0100000ParserRuleCallKind())) + break ASSIGNMENT$16FAILURE; + break ASSIGNMENT$16SUCCESS; + } + break ALTERNATIVES$15FAILURE; + } + ASSIGNMENT$18SUCCESS: { + ASSIGNMENT$18FAILURE: { + if (consumeNonTerminal(erwachsenerConsumer, "erzieher", true, false , getRule().ele0100010ParserRuleCallErwachsener())) + break ASSIGNMENT$18FAILURE; + break ASSIGNMENT$18SUCCESS; + } + break ALTERNATIVES$15FAILURE; + } + break ALTERNATIVES$15SUCCESS; + } + break ALTERNATIVES$14FAILURE; + } + ASSIGNMENT$20SUCCESS: { + ASSIGNMENT$20FAILURE: { + if (consumeNonTerminal(spielzeugConsumer, "spielzeuge", true, false , getRule().ele010010ParserRuleCallSpielzeug())) + break ASSIGNMENT$20FAILURE; + break ASSIGNMENT$20SUCCESS; + } + break ALTERNATIVES$14FAILURE; + } + break ALTERNATIVES$14SUCCESS; + } + break ALTERNATIVES$13FAILURE; + } + ASSIGNMENT$22SUCCESS: { + ASSIGNMENT$22FAILURE: { + if (consumeNonTerminal(familieConsumer, "familie", true, false , getRule().ele01010ParserRuleCallFamilie())) + break ASSIGNMENT$22FAILURE; + break ASSIGNMENT$22SUCCESS; + } + break ALTERNATIVES$13FAILURE; + } + break ALTERNATIVES$13SUCCESS; + } + break ALTERNATIVES$12FAILURE; + } + ASSIGNMENT$24SUCCESS: { + ASSIGNMENT$24FAILURE: { + if (consumeNonTerminal(customTypeParserRuleConsumer, "types", true, false , getRule().ele0110ParserRuleCallCustomTypeParserRule())) + break ASSIGNMENT$24FAILURE; + break ASSIGNMENT$24SUCCESS; + } + break ALTERNATIVES$12FAILURE; + } + break ALTERNATIVES$12SUCCESS; + } + continue ALTERNATIVES$12SUCCESS; + } + } + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + GROUP$1FAILURE: { + KEYWORD$26SUCCESS: { + if (!consumeKeyword(getRule().ele1KeywordRightCurlyBracket(), null, false, false)) + break KEYWORD$26SUCCESS; + break GROUP$1FAILURE; + } + mGROUP$1.rollback(); + break GROUP$1SUCCESS; + } + return true; + } + return true; + } + + public SpielplatzElements getRule() { + return ReferenceGrammarGrammarAccess.INSTANCE.prSpielplatz(); + } + + protected EObject getGrammarElement() { + return getRule().getRule(); + } + + @Override + protected String getDefaultTypeName() { + return "Spielplatz"; + } + + public void setErwachsenerConsumer(ReferenceGrammarErwachsenerConsumer erwachsenerConsumer) { + this.erwachsenerConsumer = erwachsenerConsumer; + } + + public void setSpielzeugConsumer(ReferenceGrammarSpielzeugConsumer spielzeugConsumer) { + this.spielzeugConsumer = spielzeugConsumer; + } + + public void setIntConsumer(XtextBuiltinINTConsumer intConsumer) { + this.intConsumer = intConsumer; + } + + public void setStringConsumer(XtextBuiltinSTRINGConsumer stringConsumer) { + this.stringConsumer = stringConsumer; + } + + public void setFamilieConsumer(ReferenceGrammarFamilieConsumer familieConsumer) { + this.familieConsumer = familieConsumer; + } + + public void setKindConsumer(ReferenceGrammarKindConsumer kindConsumer) { + this.kindConsumer = kindConsumer; + } + + public void setCustomTypeParserRuleConsumer(ReferenceGrammarCustomTypeParserRuleConsumer customTypeParserRuleConsumer) { + this.customTypeParserRuleConsumer = customTypeParserRuleConsumer; + } + + +} diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarSpielzeugConsumer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarSpielzeugConsumer.java new file mode 100644 index 0000000..46370a7 --- a/dev/null +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/consumers/ReferenceGrammarSpielzeugConsumer.java @@ -0,0 +1,140 @@ +/* +Generated with Xtext +*/ +package org.eclipse.xtext.reference.parser.packrat.consumers; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.packrat.ICharSequenceWithOffset; +import org.eclipse.xtext.parser.packrat.IHiddenTokenHandler; +import org.eclipse.xtext.parser.packrat.IMarkerFactory; +import org.eclipse.xtext.parser.packrat.IMarkerFactory.IMarker; +import org.eclipse.xtext.parser.packrat.consumers.IConsumerUtility; +import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.NonTerminalConsumer; +import org.eclipse.xtext.parser.packrat.tokens.IParsedTokenAcceptor; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess; +import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.SpielzeugElements; + +import org.eclipse.xtext.builtin.parser.packrat.consumers.XtextBuiltinIDConsumer; +import org.eclipse.xtext.reference.parser.packrat.consumers.ReferenceGrammarFarbeConsumer; + +public final class ReferenceGrammarSpielzeugConsumer extends NonTerminalConsumer { + + private XtextBuiltinIDConsumer idConsumer; + private ReferenceGrammarFarbeConsumer farbeConsumer; + + public ReferenceGrammarSpielzeugConsumer(ICharSequenceWithOffset input, IMarkerFactory markerFactory, + IParsedTokenAcceptor tokenAcceptor, IHiddenTokenHandler hiddenTokenHandler, IConsumerUtility consumerUtil, + ITerminalConsumer[] hiddenTokens) { + super(input, markerFactory, tokenAcceptor, hiddenTokenHandler, consumerUtil, hiddenTokens); + } + + @SuppressWarnings("unused") + protected boolean doConsume() throws Exception { + GROUP$1SUCCESS: { + IMarker mGROUP$1 = mark(); + GROUP$1FAILURE: { + GROUP$2SUCCESS: { + IMarker mGROUP$2 = mark(); + GROUP$2FAILURE: { + GROUP$3SUCCESS: { + IMarker mGROUP$3 = mark(); + GROUP$3FAILURE: { + GROUP$4SUCCESS: { + IMarker |

