aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorszarnekow2008-12-10 06:49:12 (EST)
committersefftinge2008-12-10 06:49:12 (EST)
commit837ffaddd3261495e9168136a0cdc9c26a4112b4 (patch)
treee65a255d198ec800995ff64007033cf1a01f0774
parent7140ccb354c7a073c2ac52ae38942379f961f472 (diff)
downloadorg.eclipse.xtext-837ffaddd3261495e9168136a0cdc9c26a4112b4.zip
org.eclipse.xtext-837ffaddd3261495e9168136a0cdc9c26a4112b4.tar.gz
org.eclipse.xtext-837ffaddd3261495e9168136a0cdc9c26a4112b4.tar.bz2
* CrossRefs for TypeRefs in xtext grammar (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=257255)
- TypeRefs link ecore::EClassifiers * Redesign: Metamodel aliases dont have to be unique * fixed UI Tests for outline
-rw-r--r--devtools/org.eclipse.xtext.reference.ui/src-gen/org/eclipse/xtext/reference/ReferenceGrammarGenProposalProvider.java15
-rw-r--r--devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/AbstractReferenceGrammarRuntimeConfig.java15
-rw-r--r--devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/ReferenceGrammar.xmi43
-rw-r--r--devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammarLexer.java2
-rw-r--r--devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammarParser.java2
-rw-r--r--devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parsetree/reconstr/ReferenceGrammarParseTreeConstructor.java65
-rw-r--r--devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/services/ReferenceGrammarGrammarAccess.java50
-rw-r--r--examples/org.eclipse.xtext.example.fowlerdsl.ui/src-gen/org/eclipse/xtext/example/FowlerDslGenProposalProvider.java13
-rw-r--r--examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/AbstractFowlerDslRuntimeConfig.java15
-rw-r--r--examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/FowlerDsl.xmi29
-rw-r--r--examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslLexer.java2
-rw-r--r--examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslParser.java2
-rw-r--r--examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parsetree/reconstr/FowlerDslParseTreeConstructor.java51
-rw-r--r--examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/services/FowlerDslGrammarAccess.java44
-rw-r--r--plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/AbstractProposalProvider.java4
-rw-r--r--plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/DefaultContentAssistProcessor.java2
-rw-r--r--plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/ProposalProviderInvokerSwitch.java2
-rw-r--r--plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/EditorSelectionChangedListener.java2
-rw-r--r--plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/XtextContentOutlinePage.java4
-rw-r--r--plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextHyperlinkDetector.java26
-rw-r--r--plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextSourceViewerConfiguration.java8
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/AbstractXtextGrammarTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguage.xmi96
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextTest.ecore40
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractImportUriTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractLangATestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/ImportUriTestLanguage.xmi15
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/LangATestLanguage.xmi15
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/ImportUriTestLanguageGrammarAccess.java6
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/LangATestLanguageGrammarAccess.java6
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/AbstractDummyTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/DummyTestLanguage.xmi8
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/services/DummyTestLanguageGrammarAccess.java4
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractAbstractTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractConcreteTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractTestLanguage.xmi16
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/ConcreteTestLanguage.xmi5
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/services/ConcreteTestLanguageGrammarAccess.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMetamodelRefTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMultiGenMMTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xmi17
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MultiGenMMTestLanguage.xmi9
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MetamodelRefTestLanguageParseTreeConstructor.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MultiGenMMTestLanguageParseTreeConstructor.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MetamodelRefTestLanguageGrammarAccess.java20
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MultiGenMMTestLanguageGrammarAccess.java6
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g38
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageLexer.java74
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageParser.java683
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage__.g14
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractComplexReconstrTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractSimpleReconstrTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/ComplexReconstrTestLanguage.xmi68
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/SimpleReconstrTestLanguage.xmi40
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/XtextGrammarTestLanguageParseTreeConstructor.java74
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/complexrewritetest.ecore42
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/ComplexReconstrTestLanguageGrammarAccess.java12
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/SimpleReconstrTestLanguageGrammarAccess.java12
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/simplerewritetest.ecore6
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/AbstractTransientValuesTestRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/TransientValuesTest.xmi14
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/services/TransientValuesTestGrammarAccess.java8
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageGrammarAccess.java126
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageMetamodelAccess.java4
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractActionTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractContentAssistTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractFowlerDslTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLexerTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLookaheadTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractOptionalEmptyTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractPartialParserTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractReferenceGrammarTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractSimpleExpressionsTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTreeTestLanguageRuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ActionTestLanguage.xmi21
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguage.xmi21
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/FowlerDslTestLanguage.xmi29
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LexerTestLanguage.xmi15
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadLang.ecore6
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadTestLanguage.xmi23
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/OptionalEmptyTestLanguage.xmi8
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/PartialParserTestLanguage.xmi40
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammar.ecore6
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguage.xmi39
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/SimpleExpressionsTestLanguage.xmi36
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TestLanguage.xmi26
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguage.xmi8
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageLexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageParser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/partialParserTestLanguage.ecore6
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ActionTestLanguageGrammarAccess.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ContentAssistTestLanguageGrammarAccess.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/FowlerDslTestLanguageGrammarAccess.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LexerTestLanguageGrammarAccess.java4
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LookaheadTestLanguageGrammarAccess.java14
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/OptionalEmptyTestLanguageGrammarAccess.java4
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/PartialParserTestLanguageGrammarAccess.java20
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ReferenceGrammarTestLanguageGrammarAccess.java14
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/SimpleExpressionsTestLanguageGrammarAccess.java4
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/TreeTestLanguageGrammarAccess.java4
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/simpleExpressions.ecore10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/AbstractBug250313RuntimeConfig.java10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/Bug250313.xmi5
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Lexer.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Parser.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/services/Bug250313GrammarAccess.java2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/GrammarUtilTests.java9
-rwxr-xr-xtests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/XtextGrammarTestLanguage.xtext10
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/grammarinheritance/ToEcoreTrafoTest.java5
-rwxr-xr-xtests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xtext2
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parser/XtextParserTest.java5
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parsetree/ParseTreeUtilTest.java130
-rw-r--r--tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/resource/metamodel/Xtext2EcoreTransformerTests.java25
-rw-r--r--tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguageGenProposalProvider.java31
-rw-r--r--tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguageGenProposalProvider.java5
-rw-r--r--tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguageGenProposalProvider.java15
-rw-r--r--tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguageGenProposalProvider.java2
-rw-r--r--tests/org.eclipse.xtext.ui.common.tests/src/org/eclipse/xtext/ui/common/editor/outline/OutlineViewTest.java2
-rw-r--r--tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/AbstractTestLanguageRuntimeConfig.java15
-rw-r--r--tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/TestLanguage.xmi8
-rw-r--r--tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageLexer.java36
-rw-r--r--tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageParser.java18
-rw-r--r--tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parsetree/reconstr/TestLanguageParseTreeConstructor.java5
-rw-r--r--tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/services/TestLanguageGrammarAccess.java4
163 files changed, 1777 insertions, 1139 deletions
diff --git a/devtools/org.eclipse.xtext.reference.ui/src-gen/org/eclipse/xtext/reference/ReferenceGrammarGenProposalProvider.java b/devtools/org.eclipse.xtext.reference.ui/src-gen/org/eclipse/xtext/reference/ReferenceGrammarGenProposalProvider.java
index 7eae0fb..c702b0a 100644
--- a/devtools/org.eclipse.xtext.reference.ui/src-gen/org/eclipse/xtext/reference/ReferenceGrammarGenProposalProvider.java
+++ b/devtools/org.eclipse.xtext.reference.ui/src-gen/org/eclipse/xtext/reference/ReferenceGrammarGenProposalProvider.java
@@ -219,6 +219,21 @@ public class ReferenceGrammarGenProposalProvider extends AbstractProposalProvid
}
+ public List<? extends ICompletionProposal> complete(RuleCall ruleCall, EObject model, String prefix,
+ IDocument doc, int offset) {
+ if (logger.isDebugEnabled()) {
+ logger.debug("complete '" + ruleCall.getRule().getName() + "' cardinality '" + ruleCall.getCardinality()
+ + "' for model '" + model + "' and prefix '" + prefix.trim() + "'");
+ }
+ return Collections.emptyList();
+ }
+
+
+
+
+
+
+
public List<? extends ICompletionProposal> completeReferenceModelCustomType(RuleCall ruleCall, EObject model, String prefix,
IDocument doc, int offset) {
if (logger.isDebugEnabled()) {
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 1fc099b..de21bdb 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
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractReferenceGrammarRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.reference.services.ReferenceGrammarMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -45,6 +45,10 @@ public abstract class AbstractReferenceGrammarRuntimeConfig extends AbstractServ
return org.eclipse.xtext.parsetree.reconstr.impl.SimpleCrossReferenceSerializer.class;
}
+ protected Class<? extends org.eclipse.xtext.parsetree.reconstr.ITransientValueService> getITransientValueService() {
+ return org.eclipse.xtext.parsetree.reconstr.impl.SimpleTransientValueService.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.antlr.Lexer> getLexer() {
return org.eclipse.xtext.reference.parser.internal.InternalReferenceGrammarLexer.class;
}
@@ -52,8 +56,8 @@ public abstract class AbstractReferenceGrammarRuntimeConfig extends AbstractServ
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.reference.IReferenceGrammar.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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())
@@ -61,6 +65,7 @@ public abstract class AbstractReferenceGrammarRuntimeConfig extends AbstractServ
.with(org.eclipse.xtext.parsetree.reconstr.IParseTreeConstructor.class, getIParseTreeConstructor())
.with(org.eclipse.xtext.parsetree.reconstr.ITokenSerializer.class, getITokenSerializer())
.with(org.eclipse.xtext.parsetree.reconstr.ICrossReferenceSerializer.class, getICrossReferenceSerializer())
+ .with(org.eclipse.xtext.parsetree.reconstr.ITransientValueService.class, getITransientValueService())
.with(org.eclipse.xtext.parser.antlr.Lexer.class, getLexer())
.registrations();
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 fa318d4..ff58520 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
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -8,6 +8,9 @@
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="ReferenceGrammar" nsURI="http://eclipse.org/xtext/reference/ReferenceGrammar"/>
<metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="ReferenceModel" uri="http://eclipse.org/xtext/reference/ReferenceModel"/>
<rules xsi:type="xtext:ParserRule" name="Spielplatz">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Spielplatz"/>
+ </type>
<alternatives xsi:type="xtext:Group" cardinality="?">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -56,12 +59,18 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Person">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Person"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.2"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.3"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Kind">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Kind"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -85,6 +94,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Erwachsener">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Erwachsener"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -108,6 +120,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Spielzeug">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Spielzeug"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -129,6 +144,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Familie">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Familie"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -155,19 +173,25 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="mutter" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Erwachsener"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Erwachsener"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="vater" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Erwachsener"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Erwachsener"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="kinder" operator="+=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Kind"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Kind"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
@@ -175,7 +199,9 @@
<abstractTokens xsi:type="xtext:Keyword" value=","/>
<abstractTokens xsi:type="xtext:Assignment" feature="kinder" operator="+=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Kind"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Kind"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
@@ -184,6 +210,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Farbe">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Farbe"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="wert" operator="=">
<terminal xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Alternatives">
@@ -198,7 +227,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="CustomTypeParserRule">
- <type metamodel="//@metamodelDeclarations.1" name="CustomType"/>
+ <type metamodel="//@metamodelDeclarations.1">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceModel#//CustomType"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="type"/>
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
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
index 939fab6..0926b23 100644
--- 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
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g 2008-12-06 10:56:39
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g 2008-12-10 08:46:05
package org.eclipse.xtext.reference.parser.internal;
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
index 74f4be5..4527029 100644
--- 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
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g 2008-12-06 10:56:39
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/reference/parser/internal/InternalReferenceGrammar.g 2008-12-10 08:46:05
package org.eclipse.xtext.reference.parser.internal;
diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parsetree/reconstr/ReferenceGrammarParseTreeConstructor.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parsetree/reconstr/ReferenceGrammarParseTreeConstructor.java
index 551a6d0..c56f216 100644
--- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parsetree/reconstr/ReferenceGrammarParseTreeConstructor.java
+++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parsetree/reconstr/ReferenceGrammarParseTreeConstructor.java
@@ -16,6 +16,7 @@ import org.eclipse.xtext.reference.services.ReferenceGrammarGrammarAccess;
public class ReferenceGrammarParseTreeConstructor extends AbstractParseTreeConstructor {
public IAbstractToken serialize(EObject object) {
+ if(object == null) throw new IllegalArgumentException("The to-be-serialialized model is null");
Solution t = internalSerialize(object);
if(t == null) throw new XtextSerializationException(getDescr(object), "No rule found for serialization");
return t.getPredecessor();
@@ -206,7 +207,7 @@ protected class Spielplatz_0_0_0_0_1_Assignment_groesse extends AssignmentToken
}
protected Solution createSolution() {
- if((value = current.getConsumable("groesse",required)) == null) return null;
+ if((value = current.getConsumable("groesse",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("groesse");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -230,7 +231,7 @@ protected class Spielplatz_0_0_0_1_Assignment_beschreibung extends AssignmentTok
}
protected Solution createSolution() {
- if((value = current.getConsumable("beschreibung",required)) == null) return null;
+ if((value = current.getConsumable("beschreibung",!IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("beschreibung");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -351,7 +352,7 @@ protected class Spielplatz_0_1_0_0_0_0_Assignment_kinder extends AssignmentToken
}
protected Solution createSolution() {
- if((value = current.getConsumable("kinder",required)) == null) return null;
+ if((value = current.getConsumable("kinder",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("kinder");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -379,7 +380,7 @@ protected class Spielplatz_0_1_0_0_0_1_Assignment_erzieher extends AssignmentTok
}
protected Solution createSolution() {
- if((value = current.getConsumable("erzieher",required)) == null) return null;
+ if((value = current.getConsumable("erzieher",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("erzieher");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -408,7 +409,7 @@ protected class Spielplatz_0_1_0_0_1_Assignment_spielzeuge extends AssignmentTok
}
protected Solution createSolution() {
- if((value = current.getConsumable("spielzeuge",required)) == null) return null;
+ if((value = current.getConsumable("spielzeuge",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("spielzeuge");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -437,7 +438,7 @@ protected class Spielplatz_0_1_0_1_Assignment_familie extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("familie",required)) == null) return null;
+ if((value = current.getConsumable("familie",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("familie");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -466,7 +467,7 @@ protected class Spielplatz_0_1_1_Assignment_types extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("types",required)) == null) return null;
+ if((value = current.getConsumable("types",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("types");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -722,7 +723,7 @@ protected class Kind_0_0_1_Assignment_name extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",required)) == null) return null;
+ if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("name");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -746,7 +747,7 @@ protected class Kind_0_1_Assignment_age extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("age",required)) == null) return null;
+ if((value = current.getConsumable("age",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("age");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -929,7 +930,7 @@ protected class Erwachsener_0_0_1_Assignment_name extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",required)) == null) return null;
+ if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("name");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -953,7 +954,7 @@ protected class Erwachsener_0_1_Assignment_age extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("age",required)) == null) return null;
+ if((value = current.getConsumable("age",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("age");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -1136,7 +1137,7 @@ protected class Spielzeug_0_0_1_Assignment_name extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",required)) == null) return null;
+ if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("name");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -1160,7 +1161,7 @@ protected class Spielzeug_0_1_Assignment_farbe extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("farbe",required)) == null) return null;
+ if((value = current.getConsumable("farbe",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("farbe");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -1194,12 +1195,12 @@ protected class Spielzeug_1_Keyword extends KeywordToken {
/************ begin Rule Familie ****************
*
- * (error)
+ * Familie : 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ] ( ',' kinder += [ Kind ] ) * ')' ;
*
**/
-// (error)
+// 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ] ( ',' kinder += [ Kind ] ) * ')'
protected class Familie_Group extends GroupToken {
public Familie_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -1227,7 +1228,7 @@ protected class Familie_Group extends GroupToken {
}
}
-// (error)
+// 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ] ( ',' kinder += [ Kind ] ) *
protected class Familie_0_Group extends GroupToken {
public Familie_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -1255,7 +1256,7 @@ protected class Familie_0_Group extends GroupToken {
}
}
-// (error)
+// 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ]
protected class Familie_0_0_Group extends GroupToken {
public Familie_0_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -1283,7 +1284,7 @@ protected class Familie_0_0_Group extends GroupToken {
}
}
-// (error)
+// 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ]
protected class Familie_0_0_0_Group extends GroupToken {
public Familie_0_0_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -1311,7 +1312,7 @@ protected class Familie_0_0_0_Group extends GroupToken {
}
}
-// (error)
+// 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ]
protected class Familie_0_0_0_0_Group extends GroupToken {
public Familie_0_0_0_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -1432,7 +1433,7 @@ protected class Familie_0_0_0_0_0_1_Assignment_name extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",required)) == null) return null;
+ if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("name");
if("keyword".equals(value)) { // xtext::Keyword
type = AssignmentType.KW;
@@ -1454,7 +1455,7 @@ protected class Familie_0_0_0_0_0_1_Assignment_name extends AssignmentToken {
}
-// (error)
+// mutter = [ Erwachsener ]
protected class Familie_0_0_0_0_1_Assignment_mutter extends AssignmentToken {
public Familie_0_0_0_0_1_Assignment_mutter(IInstanceDescription curr, AbstractToken pred) {
@@ -1466,7 +1467,7 @@ protected class Familie_0_0_0_0_1_Assignment_mutter extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("mutter",required)) == null) return null;
+ if((value = current.getConsumable("mutter",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("mutter");
if(value instanceof EObject) { // xtext::CrossReference
IInstanceDescription param = getDescr((EObject)value);
@@ -1481,7 +1482,7 @@ protected class Familie_0_0_0_0_1_Assignment_mutter extends AssignmentToken {
}
-// (error)
+// vater = [ Erwachsener ]
protected class Familie_0_0_0_1_Assignment_vater extends AssignmentToken {
public Familie_0_0_0_1_Assignment_vater(IInstanceDescription curr, AbstractToken pred) {
@@ -1493,7 +1494,7 @@ protected class Familie_0_0_0_1_Assignment_vater extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("vater",required)) == null) return null;
+ if((value = current.getConsumable("vater",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("vater");
if(value instanceof EObject) { // xtext::CrossReference
IInstanceDescription param = getDescr((EObject)value);
@@ -1508,7 +1509,7 @@ protected class Familie_0_0_0_1_Assignment_vater extends AssignmentToken {
}
-// (error)
+// kinder += [ Kind ]
protected class Familie_0_0_1_Assignment_kinder extends AssignmentToken {
public Familie_0_0_1_Assignment_kinder(IInstanceDescription curr, AbstractToken pred) {
@@ -1520,7 +1521,7 @@ protected class Familie_0_0_1_Assignment_kinder extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("kinder",required)) == null) return null;
+ if((value = current.getConsumable("kinder",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("kinder");
if(value instanceof EObject) { // xtext::CrossReference
IInstanceDescription param = getDescr((EObject)value);
@@ -1535,7 +1536,7 @@ protected class Familie_0_0_1_Assignment_kinder extends AssignmentToken {
}
-// (error)
+// ( ',' kinder += [ Kind ] ) *
protected class Familie_0_1_Group extends GroupToken {
public Familie_0_1_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -1575,7 +1576,7 @@ protected class Familie_0_1_0_Keyword extends KeywordToken {
}
}
-// (error)
+// kinder += [ Kind ]
protected class Familie_0_1_1_Assignment_kinder extends AssignmentToken {
public Familie_0_1_1_Assignment_kinder(IInstanceDescription curr, AbstractToken pred) {
@@ -1587,7 +1588,7 @@ protected class Familie_0_1_1_Assignment_kinder extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("kinder",required)) == null) return null;
+ if((value = current.getConsumable("kinder",!IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("kinder");
if(value instanceof EObject) { // xtext::CrossReference
IInstanceDescription param = getDescr((EObject)value);
@@ -1637,7 +1638,7 @@ protected class Farbe_Assignment_wert extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("wert",required)) == null) return null;
+ if((value = current.getConsumable("wert",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("wert");
if("ROT".equals(value)) { // xtext::Keyword
type = AssignmentType.KW;
@@ -1667,7 +1668,7 @@ protected class Farbe_Assignment_wert extends AssignmentToken {
/************ begin Rule CustomTypeParserRule ****************
*
- * CustomTypeParserRule returns ReferenceModel :: CustomType : 'type' name = ID ;
+ * CustomTypeParserRule returns CustomType : 'type' name = ID ;
*
**/
@@ -1724,7 +1725,7 @@ protected class CustomTypeParserRule_1_Assignment_name extends AssignmentToken
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",required)) == null) return null;
+ if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("name");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/services/ReferenceGrammarGrammarAccess.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/services/ReferenceGrammarGrammarAccess.java
index dcc2bf1..01d4679 100644
--- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/services/ReferenceGrammarGrammarAccess.java
+++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/services/ReferenceGrammarGrammarAccess.java
@@ -46,7 +46,7 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
// ( 'spielplatz' groesse = INT ( beschreibung = STRING ) ? '{' ( kinder += Kind | erzieher += Erwachsener | spielzeuge += Spielzeug | familie += Familie | types += CustomTypeParserRule ) * '}' ) ?
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'spielplatz' groesse = INT ( beschreibung = STRING ) ? '{' ( kinder += Kind | erzieher += Erwachsener | spielzeuge += Spielzeug | familie += Familie | types += CustomTypeParserRule ) *
@@ -188,7 +188,7 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
// Kind | Erwachsener
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// Kind
@@ -223,7 +223,7 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
// 'kind' '(' name = ID age = INT ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'kind' '(' name = ID age = INT
@@ -298,7 +298,7 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
// 'erwachsener' '(' name = ID age = INT ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'erwachsener' '(' name = ID age = INT
@@ -373,7 +373,7 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
// 'spielzeug' '(' name = ID farbe = Farbe ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'spielzeug' '(' name = ID farbe = Farbe
@@ -456,32 +456,32 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
private CrossReference c0110CrossReferenceKind;
private Keyword c1Keyword;
- // (error)
+ // Familie : 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ] ( ',' kinder += [ Kind ] ) * ')' ;
public ParserRule getRule() {
return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(7));
}
- // (error)
+ // 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ] ( ',' kinder += [ Kind ] ) * ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
- // (error)
+ // 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ] ( ',' kinder += [ Kind ] ) *
public Group ele0Group() {
return (c0Group != null) ? c0Group : (c0Group = (Group)eleGroup().eContents().get(0));
}
- // (error)
+ // 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ]
public Group ele00Group() {
return (c00Group != null) ? c00Group : (c00Group = (Group)ele0Group().eContents().get(0));
}
- // (error)
+ // 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ]
public Group ele000Group() {
return (c000Group != null) ? c000Group : (c000Group = (Group)ele00Group().eContents().get(0));
}
- // (error)
+ // 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ]
public Group ele0000Group() {
return (c0000Group != null) ? c0000Group : (c0000Group = (Group)ele000Group().eContents().get(0));
}
@@ -536,37 +536,37 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
return (c00000101LexerRuleCallID != null) ? c00000101LexerRuleCallID : (c00000101LexerRuleCallID = (RuleCall)ele0000010Alternatives().eContents().get(1));
}
- // (error)
+ // mutter = [ Erwachsener ]
public Assignment ele00001AssignmentMutter() {
return (c00001AssignmentMutter != null) ? c00001AssignmentMutter : (c00001AssignmentMutter = (Assignment)ele0000Group().eContents().get(1));
}
- // (error)
+ // [ Erwachsener ]
public CrossReference ele000010CrossReferenceErwachsener() {
return (c000010CrossReferenceErwachsener != null) ? c000010CrossReferenceErwachsener : (c000010CrossReferenceErwachsener = (CrossReference)ele00001AssignmentMutter().eContents().get(0));
}
- // (error)
+ // vater = [ Erwachsener ]
public Assignment ele0001AssignmentVater() {
return (c0001AssignmentVater != null) ? c0001AssignmentVater : (c0001AssignmentVater = (Assignment)ele000Group().eContents().get(1));
}
- // (error)
+ // [ Erwachsener ]
public CrossReference ele00010CrossReferenceErwachsener() {
return (c00010CrossReferenceErwachsener != null) ? c00010CrossReferenceErwachsener : (c00010CrossReferenceErwachsener = (CrossReference)ele0001AssignmentVater().eContents().get(0));
}
- // (error)
+ // kinder += [ Kind ]
public Assignment ele001AssignmentKinder() {
return (c001AssignmentKinder != null) ? c001AssignmentKinder : (c001AssignmentKinder = (Assignment)ele00Group().eContents().get(1));
}
- // (error)
+ // [ Kind ]
public CrossReference ele0010CrossReferenceKind() {
return (c0010CrossReferenceKind != null) ? c0010CrossReferenceKind : (c0010CrossReferenceKind = (CrossReference)ele001AssignmentKinder().eContents().get(0));
}
- // (error)
+ // ( ',' kinder += [ Kind ] ) *
public Group ele01Group() {
return (c01Group != null) ? c01Group : (c01Group = (Group)ele0Group().eContents().get(1));
}
@@ -576,12 +576,12 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
return (c010Keyword != null) ? c010Keyword : (c010Keyword = (Keyword)ele01Group().eContents().get(0));
}
- // (error)
+ // kinder += [ Kind ]
public Assignment ele011AssignmentKinder() {
return (c011AssignmentKinder != null) ? c011AssignmentKinder : (c011AssignmentKinder = (Assignment)ele01Group().eContents().get(1));
}
- // (error)
+ // [ Kind ]
public CrossReference ele0110CrossReferenceKind() {
return (c0110CrossReferenceKind != null) ? c0110CrossReferenceKind : (c0110CrossReferenceKind = (CrossReference)ele011AssignmentKinder().eContents().get(0));
}
@@ -610,7 +610,7 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
// wert = ( 'ROT' | 'BLAU' | 'GELB' | 'GRÜN' )
public Assignment eleAssignmentWert() {
- return (cAssignmentWert != null) ? cAssignmentWert : (cAssignmentWert = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentWert != null) ? cAssignmentWert : (cAssignmentWert = (Assignment)getRule().eContents().get(1));
}
// 'ROT' | 'BLAU' | 'GELB' | 'GRÜN'
@@ -656,7 +656,7 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
private Assignment c1AssignmentName;
private RuleCall c10LexerRuleCallID;
- // CustomTypeParserRule returns ReferenceModel :: CustomType : 'type' name = ID ;
+ // CustomTypeParserRule returns CustomType : 'type' name = ID ;
public ParserRule getRule() {
return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(9));
}
@@ -735,7 +735,7 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
return (pSpielzeug != null) ? pSpielzeug : (pSpielzeug = new SpielzeugElements());
}
- // (error)
+ // Familie : 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ] ( ',' kinder += [ Kind ] ) * ')' ;
public FamilieElements prFamilie() {
return (pFamilie != null) ? pFamilie : (pFamilie = new FamilieElements());
}
@@ -745,7 +745,7 @@ public class ReferenceGrammarGrammarAccess extends BaseEPackageAccess implements
return (pFarbe != null) ? pFarbe : (pFarbe = new FarbeElements());
}
- // CustomTypeParserRule returns ReferenceModel :: CustomType : 'type' name = ID ;
+ // CustomTypeParserRule returns CustomType : 'type' name = ID ;
public CustomTypeParserRuleElements prCustomTypeParserRule() {
return (pCustomTypeParserRule != null) ? pCustomTypeParserRule : (pCustomTypeParserRule = new CustomTypeParserRuleElements());
}
diff --git a/examples/org.eclipse.xtext.example.fowlerdsl.ui/src-gen/org/eclipse/xtext/example/FowlerDslGenProposalProvider.java b/examples/org.eclipse.xtext.example.fowlerdsl.ui/src-gen/org/eclipse/xtext/example/FowlerDslGenProposalProvider.java
index 05ee820..9fc04fe 100644
--- a/examples/org.eclipse.xtext.example.fowlerdsl.ui/src-gen/org/eclipse/xtext/example/FowlerDslGenProposalProvider.java
+++ b/examples/org.eclipse.xtext.example.fowlerdsl.ui/src-gen/org/eclipse/xtext/example/FowlerDslGenProposalProvider.java
@@ -163,6 +163,19 @@ public class FowlerDslGenProposalProvider extends AbstractProposalProvider {
return lookupCrossReference(((CrossReference)assignment.getTerminal()), model, prefix, offset);
}
+
+ public List<? extends ICompletionProposal> complete(RuleCall ruleCall, EObject model, String prefix,
+ IDocument doc, int offset) {
+ if (logger.isDebugEnabled()) {
+ logger.debug("complete '" + ruleCall.getRule().getName() + "' cardinality '" + ruleCall.getCardinality()
+ + "' for model '" + model + "' and prefix '" + prefix.trim() + "'");
+ }
+ return Collections.emptyList();
+ }
+
+
+
+
@Override
protected String getDefaultImageFilePath() {
return "icons/editor.gif";
diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/AbstractFowlerDslRuntimeConfig.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/AbstractFowlerDslRuntimeConfig.java
index 183d60c..6df7084 100644
--- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/AbstractFowlerDslRuntimeConfig.java
+++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/AbstractFowlerDslRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractFowlerDslRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.example.services.FowlerDslGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.example.services.FowlerDslMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.example.services.FowlerDslGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -45,6 +45,10 @@ public abstract class AbstractFowlerDslRuntimeConfig extends AbstractServiceRegi
return org.eclipse.xtext.parsetree.reconstr.impl.SimpleCrossReferenceSerializer.class;
}
+ protected Class<? extends org.eclipse.xtext.parsetree.reconstr.ITransientValueService> getITransientValueService() {
+ return org.eclipse.xtext.parsetree.reconstr.impl.SimpleTransientValueService.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.antlr.Lexer> getLexer() {
return org.eclipse.xtext.example.parser.internal.InternalFowlerDslLexer.class;
}
@@ -52,8 +56,8 @@ public abstract class AbstractFowlerDslRuntimeConfig extends AbstractServiceRegi
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.example.IFowlerDsl.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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())
@@ -61,6 +65,7 @@ public abstract class AbstractFowlerDslRuntimeConfig extends AbstractServiceRegi
.with(org.eclipse.xtext.parsetree.reconstr.IParseTreeConstructor.class, getIParseTreeConstructor())
.with(org.eclipse.xtext.parsetree.reconstr.ITokenSerializer.class, getITokenSerializer())
.with(org.eclipse.xtext.parsetree.reconstr.ICrossReferenceSerializer.class, getICrossReferenceSerializer())
+ .with(org.eclipse.xtext.parsetree.reconstr.ITransientValueService.class, getITransientValueService())
.with(org.eclipse.xtext.parser.antlr.Lexer.class, getLexer())
.registrations();
diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/FowlerDsl.xmi b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/FowlerDsl.xmi
index 1632167..1df8fa6 100644
--- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/FowlerDsl.xmi
+++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/FowlerDsl.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,6 +7,9 @@
<idElements>FowlerDsl</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="fowlerdsl" nsURI="http://example.xtext.org/FowlerDsl"/>
<rules xsi:type="xtext:ParserRule" name="Statemachine">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDsl#//Statemachine"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -34,6 +37,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Event">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDsl#//Event"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" cardinality="?" feature="resetting" operator="?=">
@@ -53,6 +59,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Command">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDsl#//Command"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
@@ -67,6 +76,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="State">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDsl#//State"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -86,7 +98,9 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" cardinality="+" feature="actions" operator="+=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Command"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDsl#//Command"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
@@ -101,18 +115,25 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Transition">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDsl#//Transition"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" feature="event" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Event"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDsl#//Event"/>
+ </type>
</terminal>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="=>"/>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="state" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="State"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDsl#//State"/>
+ </type>
</terminal>
</abstractTokens>
</alternatives>
diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslLexer.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslLexer.java
index f61d5df..ae4ff97 100644
--- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslLexer.java
+++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDsl.g 2008-12-06 11:02:16
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDsl.g 2008-12-10 08:45:46
package org.eclipse.xtext.example.parser.internal;
diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslParser.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslParser.java
index 0630869..19ec438 100644
--- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslParser.java
+++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDslParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDsl.g 2008-12-06 11:02:16
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/example/parser/internal/InternalFowlerDsl.g 2008-12-10 08:45:46
package org.eclipse.xtext.example.parser.internal;
diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parsetree/reconstr/FowlerDslParseTreeConstructor.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parsetree/reconstr/FowlerDslParseTreeConstructor.java
index e547e25..b2375f9 100644
--- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parsetree/reconstr/FowlerDslParseTreeConstructor.java
+++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parsetree/reconstr/FowlerDslParseTreeConstructor.java
@@ -16,6 +16,7 @@ import org.eclipse.xtext.example.services.FowlerDslGrammarAccess;
public class FowlerDslParseTreeConstructor extends AbstractParseTreeConstructor {
public IAbstractToken serialize(EObject object) {
+ if(object == null) throw new IllegalArgumentException("The to-be-serialialized model is null");
Solution t = internalSerialize(object);
if(t == null) throw new XtextSerializationException(getDescr(object), "No rule found for serialization");
return t.getPredecessor();
@@ -231,7 +232,7 @@ protected class Statemachine_0_0_0_0_0_1_Assignment_events extends AssignmentTok
}
protected Solution createSolution() {
- if((value = current.getConsumable("events",required)) == null) return null;
+ if((value = current.getConsumable("events",!IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("events");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -286,7 +287,7 @@ protected class Statemachine_0_0_1_Assignment_commands extends AssignmentToken
}
protected Solution createSolution() {
- if((value = current.getConsumable("commands",required)) == null) return null;
+ if((value = current.getConsumable("commands",!IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("commands");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -328,7 +329,7 @@ protected class Statemachine_1_Assignment_states extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("states",required)) == null) return null;
+ if((value = current.getConsumable("states",!IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("states");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -422,7 +423,7 @@ protected class Event_0_0_Assignment_resetting extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("resetting",required)) == null) return null;
+ if((value = current.getConsumable("resetting",!IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("resetting");
if("resetting".equals(value)) { // xtext::Keyword
type = AssignmentType.KW;
@@ -445,7 +446,7 @@ protected class Event_0_1_Assignment_name extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",required)) == null) return null;
+ if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("name");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -469,7 +470,7 @@ protected class Event_1_Assignment_code extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("code",required)) == null) return null;
+ if((value = current.getConsumable("code",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("code");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -530,7 +531,7 @@ protected class Command_0_Assignment_name extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",required)) == null) return null;
+ if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("name");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -553,7 +554,7 @@ protected class Command_1_Assignment_code extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("code",required)) == null) return null;
+ if((value = current.getConsumable("code",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("code");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -569,12 +570,12 @@ protected class Command_1_Assignment_code extends AssignmentToken {
/************ begin Rule State ****************
*
- * (error)
+ * State : 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ? ( transitions += Transition ) * 'end' ;
*
**/
-// (error)
+// 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ? ( transitions += Transition ) * 'end'
protected class State_Group extends GroupToken {
public State_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -602,7 +603,7 @@ protected class State_Group extends GroupToken {
}
}
-// (error)
+// 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ? ( transitions += Transition ) *
protected class State_0_Group extends GroupToken {
public State_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -630,7 +631,7 @@ protected class State_0_Group extends GroupToken {
}
}
-// (error)
+// 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ?
protected class State_0_0_Group extends GroupToken {
public State_0_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -710,7 +711,7 @@ protected class State_0_0_0_1_Assignment_name extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",required)) == null) return null;
+ if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("name");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
@@ -722,7 +723,7 @@ protected class State_0_0_0_1_Assignment_name extends AssignmentToken {
}
-// (error)
+// ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ?
protected class State_0_0_1_Group extends GroupToken {
public State_0_0_1_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -750,7 +751,7 @@ protected class State_0_0_1_Group extends GroupToken {
}
}
-// (error)
+// 'actions' '{' ( actions += [ Command ] ) +
protected class State_0_0_1_0_Group extends GroupToken {
public State_0_0_1_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -831,7 +832,7 @@ protected class State_0_0_1_0_0_1_Keyword extends KeywordToken {
}
-// (error)
+// ( actions += [ Command ] ) +
protected class State_0_0_1_0_1_Assignment_actions extends AssignmentToken {
public State_0_0_1_0_1_Assignment_actions(IInstanceDescription curr, AbstractToken pred) {
@@ -843,7 +844,7 @@ protected class State_0_0_1_0_1_Assignment_actions extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("actions",required)) == null) return null;
+ if((value = current.getConsumable("actions",!IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("actions");
if(value instanceof EObject) { // xtext::CrossReference
IInstanceDescription param = getDescr((EObject)value);
@@ -884,7 +885,7 @@ protected class State_0_1_Assignment_transitions extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("transitions",required)) == null) return null;
+ if((value = current.getConsumable("transitions",!IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("transitions");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -918,12 +919,12 @@ protected class State_1_Keyword_end extends KeywordToken {
/************ begin Rule Transition ****************
*
- * (error)
+ * Transition : event = [ Event ] '=>' state = [ State ] ;
*
**/
-// (error)
+// event = [ Event ] '=>' state = [ State ]
protected class Transition_Group extends GroupToken {
public Transition_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -951,7 +952,7 @@ protected class Transition_Group extends GroupToken {
}
}
-// (error)
+// event = [ Event ] '=>'
protected class Transition_0_Group extends GroupToken {
public Transition_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -979,7 +980,7 @@ protected class Transition_0_Group extends GroupToken {
}
}
-// (error)
+// event = [ Event ]
protected class Transition_0_0_Assignment_event extends AssignmentToken {
public Transition_0_0_Assignment_event(IInstanceDescription curr, AbstractToken pred) {
@@ -991,7 +992,7 @@ protected class Transition_0_0_Assignment_event extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("event",required)) == null) return null;
+ if((value = current.getConsumable("event",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("event");
if(value instanceof EObject) { // xtext::CrossReference
IInstanceDescription param = getDescr((EObject)value);
@@ -1018,7 +1019,7 @@ protected class Transition_0_1_Keyword extends KeywordToken {
}
-// (error)
+// state = [ State ]
protected class Transition_1_Assignment_state extends AssignmentToken {
public Transition_1_Assignment_state(IInstanceDescription curr, AbstractToken pred) {
@@ -1030,7 +1031,7 @@ protected class Transition_1_Assignment_state extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("state",required)) == null) return null;
+ if((value = current.getConsumable("state",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("state");
if(value instanceof EObject) { // xtext::CrossReference
IInstanceDescription param = getDescr((EObject)value);
diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/services/FowlerDslGrammarAccess.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/services/FowlerDslGrammarAccess.java
index f3c1f4c..4c101bf 100644
--- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/services/FowlerDslGrammarAccess.java
+++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/services/FowlerDslGrammarAccess.java
@@ -36,7 +36,7 @@ public class FowlerDslGrammarAccess extends BaseEPackageAccess implements IGramm
// 'events' ( events += Event ) * 'end' 'commands' ( commands += Command ) * 'end' ( states += State ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'events' ( events += Event ) * 'end' 'commands' ( commands += Command ) * 'end'
@@ -133,7 +133,7 @@ public class FowlerDslGrammarAccess extends BaseEPackageAccess implements IGramm
// ( resetting ?= 'resetting' ) ? name = ID code = ID
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// ( resetting ?= 'resetting' ) ? name = ID
@@ -187,7 +187,7 @@ public class FowlerDslGrammarAccess extends BaseEPackageAccess implements IGramm
// name = ID code = ID
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// name = ID
@@ -232,22 +232,22 @@ public class FowlerDslGrammarAccess extends BaseEPackageAccess implements IGramm
private RuleCall c010ParserRuleCallTransition;
private Keyword c1KeywordEnd;
- // (error)
+ // State : 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ? ( transitions += Transition ) * 'end' ;
public ParserRule getRule() {
return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(4));
}
- // (error)
+ // 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ? ( transitions += Transition ) * 'end'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
- // (error)
+ // 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ? ( transitions += Transition ) *
public Group ele0Group() {
return (c0Group != null) ? c0Group : (c0Group = (Group)eleGroup().eContents().get(0));
}
- // (error)
+ // 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ?
public Group ele00Group() {
return (c00Group != null) ? c00Group : (c00Group = (Group)ele0Group().eContents().get(0));
}
@@ -272,12 +272,12 @@ public class FowlerDslGrammarAccess extends BaseEPackageAccess implements IGramm
return (c00010LexerRuleCallID != null) ? c00010LexerRuleCallID : (c00010LexerRuleCallID = (RuleCall)ele0001AssignmentName().eContents().get(0));
}
- // (error)
+ // ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ?
public Group ele001Group() {
return (c001Group != null) ? c001Group : (c001Group = (Group)ele00Group().eContents().get(1));
}
- // (error)
+ // 'actions' '{' ( actions += [ Command ] ) +
public Group ele0010Group() {
return (c0010Group != null) ? c0010Group : (c0010Group = (Group)ele001Group().eContents().get(0));
}
@@ -297,12 +297,12 @@ public class FowlerDslGrammarAccess extends BaseEPackageAccess implements IGramm
return (c001001Keyword != null) ? c001001Keyword : (c001001Keyword = (Keyword)ele00100Group().eContents().get(1));
}
- // (error)
+ // ( actions += [ Command ] ) +
public Assignment ele00101AssignmentActions() {
return (c00101AssignmentActions != null) ? c00101AssignmentActions : (c00101AssignmentActions = (Assignment)ele0010Group().eContents().get(1));
}
- // (error)
+ // [ Command ]
public CrossReference ele001010CrossReferenceCommand() {
return (c001010CrossReferenceCommand != null) ? c001010CrossReferenceCommand : (c001010CrossReferenceCommand = (CrossReference)ele00101AssignmentActions().eContents().get(0));
}
@@ -338,27 +338,27 @@ public class FowlerDslGrammarAccess extends BaseEPackageAccess implements IGramm
private Assignment c1AssignmentState;
private CrossReference c10CrossReferenceState;
- // (error)
+ // Transition : event = [ Event ] '=>' state = [ State ] ;
public ParserRule getRule() {
return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(5));
}
- // (error)
+ // event = [ Event ] '=>' state = [ State ]
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
- // (error)
+ // event = [ Event ] '=>'
public Group ele0Group() {
return (c0Group != null) ? c0Group : (c0Group = (Group)eleGroup().eContents().get(0));
}
- // (error)
+ // event = [ Event ]
public Assignment ele00AssignmentEvent() {
return (c00AssignmentEvent != null) ? c00AssignmentEvent : (c00AssignmentEvent = (Assignment)ele0Group().eContents().get(0));
}
- // (error)
+ // [ Event ]
public CrossReference ele000CrossReferenceEvent() {
return (c000CrossReferenceEvent != null) ? c000CrossReferenceEvent : (c000CrossReferenceEvent = (CrossReference)ele00AssignmentEvent().eContents().get(0));
}
@@ -368,12 +368,12 @@ public class FowlerDslGrammarAccess extends BaseEPackageAccess implements IGramm
return (c01Keyword != null) ? c01Keyword : (c01Keyword = (Keyword)ele0Group().eContents().get(1));
}
- // (error)
+ // state = [ State ]
public Assignment ele1AssignmentState() {
return (c1AssignmentState != null) ? c1AssignmentState : (c1AssignmentState = (Assignment)eleGroup().eContents().get(1));
}
- // (error)
+ // [ State ]
public CrossReference ele10CrossReferenceState() {
return (c10CrossReferenceState != null) ? c10CrossReferenceState : (c10CrossReferenceState = (CrossReference)ele1AssignmentState().eContents().get(0));
}
@@ -419,12 +419,12 @@ public class FowlerDslGrammarAccess extends BaseEPackageAccess implements IGramm
return (pCommand != null) ? pCommand : (pCommand = new CommandElements());
}
- // (error)
+ // State : 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ? ( transitions += Transition ) * 'end' ;
public StateElements prState() {
return (pState != null) ? pState : (pState = new StateElements());
}
- // (error)
+ // Transition : event = [ Event ] '=>' state = [ State ] ;
public TransitionElements prTransition() {
return (pTransition != null) ? pTransition : (pTransition = new TransitionElements());
}
diff --git a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/AbstractProposalProvider.java b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/AbstractProposalProvider.java
index 3d84e4a..86b5465 100644
--- a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/AbstractProposalProvider.java
+++ b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/AbstractProposalProvider.java
@@ -195,7 +195,7 @@ public abstract class AbstractProposalProvider implements IProposalProvider {
String trimmedPrefix = prefix.trim();
for (IScopedElement candidate : candidates) {
- if (isCandidateMatchingPrefix(model, ref, candidate, trimmedPrefix)) {
+ if (candidate.name() != null && isCandidateMatchingPrefix(model, ref, candidate, trimmedPrefix)) {
completionProposalList.add(
createCompletionProposal(crossReference, model, candidate.name(), offset));
}
@@ -206,7 +206,7 @@ public abstract class AbstractProposalProvider implements IProposalProvider {
}
protected boolean isCandidateMatchingPrefix(EObject model, EReference ref, IScopedElement candidate, String prefix) {
- return candidate.name().regionMatches(true, 0, prefix, 0, prefix.length());
+ return Strings.emptyIfNull(candidate.name()).regionMatches(true, 0, prefix, 0, prefix.length());
}
protected String getLabel(EObject candidate, EReference ref, EObject context) {
diff --git a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/DefaultContentAssistProcessor.java b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/DefaultContentAssistProcessor.java
index 698773c..a5a3f75 100644
--- a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/DefaultContentAssistProcessor.java
+++ b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/DefaultContentAssistProcessor.java
@@ -84,7 +84,7 @@ public class DefaultContentAssistProcessor implements IContentAssistProcessor {
AbstractNode lastCompleteNode = ParseTreeUtil.getLastCompleteNodeByOffset(rootNode, offset);
- AbstractNode currentNode = ParseTreeUtil.getCurrentNodeByOffset(rootNode, offset);
+ AbstractNode currentNode = ParseTreeUtil.getCurrentOrFollowingNodeByOffset(rootNode, offset);
String prefix = calculatePrefix(viewer, offset, currentNode);
diff --git a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/ProposalProviderInvokerSwitch.java b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/ProposalProviderInvokerSwitch.java
index 924aba2..80041c2 100644
--- a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/ProposalProviderInvokerSwitch.java
+++ b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/codecompletion/ProposalProviderInvokerSwitch.java
@@ -147,7 +147,7 @@ public class ProposalProviderInvokerSwitch extends XtextSwitch<List<ICompletionP
TypeRef typeRef = calledRule.getType();
Method method = findMethod(proposalProvider.getClass(), "complete"
- + firstLetterCapitalized(typeRef.getMetamodel().getAlias()) + firstLetterCapitalized(typeRef.getName()),
+ + firstLetterCapitalized(typeRef.getMetamodel().getAlias()) + firstLetterCapitalized(typeRef.getType().getName()),
RuleCall.class, model==null? EObject.class : model.getClass(), String.class, document.getClass(), int.class);
Collection<? extends ICompletionProposal> proposalList = null == method ? null : invokeMethod(method,
diff --git a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/EditorSelectionChangedListener.java b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/EditorSelectionChangedListener.java
index 64aa662..7ef20c1 100644
--- a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/EditorSelectionChangedListener.java
+++ b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/EditorSelectionChangedListener.java
@@ -45,7 +45,7 @@ public final class EditorSelectionChangedListener extends AbstractSelectionChang
// Get the current element from the offset
int offset = textSel.getOffset();
- AbstractNode node = ParseTreeUtil.getCurrentNodeByOffset(rootNode, offset);
+ AbstractNode node = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, offset);
// Synchronize the outline page
outlinePage.synchronizeOutlinePage(node);
diff --git a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/XtextContentOutlinePage.java b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/XtextContentOutlinePage.java
index 91313d2..8f70113 100644
--- a/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/XtextContentOutlinePage.java
+++ b/plugins/org.eclipse.xtext.ui.common/src/org/eclipse/xtext/ui/common/editor/outline/XtextContentOutlinePage.java
@@ -205,8 +205,8 @@ public class XtextContentOutlinePage extends ContentOutlinePage implements ICont
ISelection selection = StructuredSelection.EMPTY;
if (shouldSynchronizeOutlinePage()) {
- if (node != null && node instanceof LeafNode) {
- CompositeNode compositeNode = node.getParent();
+ if (node != null) {
+ CompositeNode compositeNode = node instanceof CompositeNode? (CompositeNode) node : node.getParent();
EObject astElement = NodeUtil.getASTElementForRootNode(compositeNode);
if (astElement != null) {
URI uri = EcoreUtil.getURI(astElement);
diff --git a/plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextHyperlinkDetector.java b/plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextHyperlinkDetector.java
index ec3ff47..6b199ed 100644
--- a/plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextHyperlinkDetector.java
+++ b/plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextHyperlinkDetector.java
@@ -31,7 +31,6 @@ import org.eclipse.ui.ide.IDE;
import org.eclipse.ui.texteditor.ITextEditor;
import org.eclipse.xtext.CrossReference;
import org.eclipse.xtext.GrammarUtil;
-import org.eclipse.xtext.crossref.ILinkingService;
import org.eclipse.xtext.parser.IParseResult;
import org.eclipse.xtext.parsetree.CompositeNode;
import org.eclipse.xtext.parsetree.LeafNode;
@@ -56,12 +55,6 @@ public class XtextHyperlinkDetector implements IHyperlinkDetector {
// logger available to subclasses
protected final Logger logger = Logger.getLogger(getClass());
- private ILinkingService linkingService;
-
- public XtextHyperlinkDetector(ILinkingService linkingService) {
- this.linkingService = linkingService;
- }
-
/*
* (non-Javadoc)
*
@@ -72,18 +65,29 @@ public class XtextHyperlinkDetector implements IHyperlinkDetector {
*/
public IHyperlink[] detectHyperlinks(ITextViewer textViewer, IRegion region, boolean canShowMultipleHyperlinks) {
+ // TODO: should all of this be part of the read transaction?
CompositeNode rootNode = getRootNode(textViewer.getDocument());
- LeafNode currentNode = (LeafNode) ParseTreeUtil.getCurrentNodeByOffset(rootNode, region.getOffset());
+ LeafNode currentNode = (LeafNode) ParseTreeUtil.getCurrentOrFollowingNodeByOffset(rootNode, region.getOffset());
if (currentNode.getGrammarElement() instanceof CrossReference) {
EObject semanticModel = NodeUtil.getNearestSemanticObject(currentNode);
EReference eReference = GrammarUtil.getReference((CrossReference) currentNode.getGrammarElement(),
semanticModel.eClass());
- List<EObject> linkedObjects = this.linkingService.getLinkedObjects(semanticModel, eReference, currentNode);
+ EObject linkMe = null;
+ if (eReference.isMany()) {
+ List<?> values = (List<?>) semanticModel.eGet(eReference);
+ if (!values.isEmpty() && values.get(0) instanceof EObject)
+ linkMe = (EObject) values.get(0);
+ } else {
+ Object value = semanticModel.eGet(eReference);
+ if (value instanceof EObject)
+ linkMe = (EObject) value;
+ }
+// List<EObject> linkedObjects = this.linkingService.getLinkedObjects(semanticModel, eReference, currentNode);
- if (!linkedObjects.isEmpty()) {
- return createXtextHyperlink(currentNode, linkedObjects.iterator().next());
+ if (linkMe != null) {
+ return createXtextHyperlink(currentNode, linkMe);
}
}
diff --git a/plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextSourceViewerConfiguration.java b/plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextSourceViewerConfiguration.java
index d63ba88..1e2296e 100644
--- a/plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextSourceViewerConfiguration.java
+++ b/plugins/org.eclipse.xtext.ui.core/src/org/eclipse/xtext/ui/core/editor/XtextSourceViewerConfiguration.java
@@ -18,7 +18,6 @@ import org.eclipse.jface.text.rules.DefaultDamagerRepairer;
import org.eclipse.jface.text.rules.ITokenScanner;
import org.eclipse.jface.text.source.ISourceViewer;
import org.eclipse.ui.editors.text.TextSourceViewerConfiguration;
-import org.eclipse.xtext.crossref.ILinkingService;
import org.eclipse.xtext.service.Inject;
import org.eclipse.xtext.ui.core.editor.reconciler.XtextDocumentReconcileStrategy;
import org.eclipse.xtext.ui.core.editor.reconciler.XtextReconciler;
@@ -30,9 +29,6 @@ public class XtextSourceViewerConfiguration extends TextSourceViewerConfiguratio
@Inject(optional = true)
private IContentAssistProcessor contentAssistProcessor;
-
- @Inject(optional = true)
- private ILinkingService linkingService;
@Inject(optional = true)
private ITokenScanner tokenScanner;
@@ -55,8 +51,6 @@ public class XtextSourceViewerConfiguration extends TextSourceViewerConfiguratio
xtextReconciler.setDelay(500);
return xtextReconciler;
}
-
-
@Override
public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer) {
@@ -94,7 +88,7 @@ public class XtextSourceViewerConfiguration extends TextSourceViewerConfiguratio
});
}
}
- detectors.add(new XtextHyperlinkDetector(this.linkingService));
+ detectors.add(new XtextHyperlinkDetector());
return detectors.toArray(new IHyperlinkDetector[detectors.size()]);
}
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/AbstractXtextGrammarTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/AbstractXtextGrammarTestLanguageRuntimeConfig.java
index 1d1c109..2da43f2 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/AbstractXtextGrammarTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/AbstractXtextGrammarTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractXtextGrammarTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.services.XtextGrammarTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.services.XtextGrammarTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.services.XtextGrammarTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractXtextGrammarTestLanguageRuntimeConfig extends Abst
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.IXtextGrammarTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguage.xmi
index 3231399..3ad65b4 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguage.xmi
@@ -1,11 +1,15 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
<idElements>XtextGrammarTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="XtextTest" nsURI="http://www.eclipse.org/2008/Test/XtextTest"/>
+ <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="ecore" uri="http://www.eclipse.org/emf/2002/Ecore"/>
<rules xsi:type="xtext:ParserRule" name="Grammar">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//Grammar"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -61,18 +65,27 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AbstractRule">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractRule"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.5"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.6"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AbstractMetamodelDeclaration">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractMetamodelDeclaration"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.3"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.4"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="GeneratedMetamodel">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//GeneratedMetamodel"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -100,6 +113,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="ReferencedMetamodel">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//ReferencedMetamodel"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="import"/>
@@ -120,6 +136,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="LexerRule">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//LexerRule"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -154,6 +173,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="ParserRule">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//ParserRule"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -180,30 +202,41 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TypeRef">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//TypeRef"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group" cardinality="?">
- <abstractTokens xsi:type="xtext:Assignment" feature="alias" operator="=">
- <terminal xsi:type="xtext:RuleCall">
- <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/>
+ <abstractTokens xsi:type="xtext:Assignment" feature="metamodel" operator="=">
+ <terminal xsi:type="xtext:CrossReference">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractMetamodelDeclaration"/>
+ </type>
</terminal>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="::"/>
</abstractTokens>
- <abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
- <terminal xsi:type="xtext:RuleCall">
- <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/>
+ <abstractTokens xsi:type="xtext:Assignment" feature="type" operator="=">
+ <terminal xsi:type="xtext:CrossReference">
+ <type metamodel="//@metamodelDeclarations.1">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EClassifier"/>
+ </type>
</terminal>
</abstractTokens>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Alternatives">
- <type metamodel="//@metamodelDeclarations.0" name="AbstractElement"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractElement"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:RuleCall" rule="//@rules.9"/>
<abstractTokens xsi:type="xtext:Group" cardinality="*">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Action" feature="groups" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Alternatives"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//Alternatives"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="|"/>
</abstractTokens>
@@ -214,12 +247,16 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Group">
- <type metamodel="//@metamodelDeclarations.0" name="AbstractElement"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractElement"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:RuleCall" rule="//@rules.10"/>
<abstractTokens xsi:type="xtext:Group" cardinality="*">
<abstractTokens xsi:type="xtext:Action" feature="abstractTokens" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Group"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//Group"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="abstractTokens" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.10"/>
@@ -228,7 +265,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AbstractToken">
- <type metamodel="//@metamodelDeclarations.0" name="AbstractElement"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractElement"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Alternatives">
@@ -249,7 +288,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Assignment">
- <type metamodel="//@metamodelDeclarations.0" name="Assignment"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//Assignment"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" feature="feature" operator="=">
@@ -273,7 +314,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Action">
- <type metamodel="//@metamodelDeclarations.0" name="Action"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//Action"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -312,7 +355,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AbstractTerminal">
- <type metamodel="//@metamodelDeclarations.0" name="AbstractElement"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractElement"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Alternatives">
@@ -325,6 +370,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="CrossReference">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//CrossReference"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -337,7 +385,9 @@
<abstractTokens xsi:type="xtext:Keyword" value="|"/>
<abstractTokens xsi:type="xtext:Assignment" feature="rule" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="LexerRule"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractRule"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
@@ -346,7 +396,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="ParenthesizedElement">
- <type metamodel="//@metamodelDeclarations.0" name="AbstractElement"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractElement"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="("/>
@@ -356,6 +408,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Keyword">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//Keyword"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="value" operator="=">
<terminal xsi:type="xtext:RuleCall">
<rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.2"/>
@@ -363,9 +418,14 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="RuleCall">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//RuleCall"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="rule" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="AbstractRule"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractRule"/>
+ </type>
</terminal>
</alternatives>
</rules>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextTest.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextTest.ecore
index 50079e4..e39b7fa 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextTest.ecore
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextTest.ecore
@@ -19,14 +19,6 @@
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="//TypeRef" containment="true"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="LexerRule" eSuperTypes="//AbstractRule">
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="body">
- <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- </eStructuralFeatures>
- </eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="ParserRule" eSuperTypes="//AbstractRule">
- <eStructuralFeatures xsi:type="ecore:EReference" name="alternatives" eType="//AbstractElement" containment="true"/>
- </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AbstractMetamodelDeclaration">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="alias">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -45,12 +37,18 @@
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="TypeRef">
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="alias">
+ <eClassifiers xsi:type="ecore:EClass" name="LexerRule" eSuperTypes="//AbstractRule">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="body">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="name">
- <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ParserRule" eSuperTypes="//AbstractRule">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="alternatives" eType="//AbstractElement" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TypeRef">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="metamodel" eType="//AbstractMetamodelDeclaration"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EClassifier"/>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AbstractElement">
@@ -58,12 +56,6 @@
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Alternatives" eSuperTypes="//AbstractElement">
- <eStructuralFeatures xsi:type="ecore:EReference" name="groups" upperBound="-1" eType="//AbstractElement" containment="true"/>
- </eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Group" eSuperTypes="//AbstractElement">
- <eStructuralFeatures xsi:type="ecore:EReference" name="abstractTokens" upperBound="-1" eType="//AbstractElement" containment="true"/>
- </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Assignment" eSuperTypes="//AbstractElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="feature">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -82,6 +74,10 @@
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CrossReference" eSuperTypes="//AbstractElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="//TypeRef" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="rule" eType="//AbstractRule"/>
+ </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Keyword" eSuperTypes="//AbstractElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="value">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -90,8 +86,10 @@
<eClassifiers xsi:type="ecore:EClass" name="RuleCall" eSuperTypes="//AbstractElement">
<eStructuralFeatures xsi:type="ecore:EReference" name="rule" eType="//AbstractRule"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="CrossReference" eSuperTypes="//AbstractElement">
- <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="//TypeRef" containment="true"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="rule" eType="//LexerRule"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Alternatives" eSuperTypes="//AbstractElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="groups" upperBound="-1" eType="//AbstractElement" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Group" eSuperTypes="//AbstractElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="abstractTokens" upperBound="-1" eType="//AbstractElement" containment="true"/>
</eClassifiers>
</ecore:EPackage>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractImportUriTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractImportUriTestLanguageRuntimeConfig.java
index abe69ed..a664faf 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractImportUriTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractImportUriTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractImportUriTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.crossrefs.services.ImportUriTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.crossrefs.services.ImportUriTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.crossrefs.services.ImportUriTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractImportUriTestLanguageRuntimeConfig extends Abstrac
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.crossrefs.IImportUriTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractLangATestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractLangATestLanguageRuntimeConfig.java
index 13e396b..72ce481 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractLangATestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/AbstractLangATestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractLangATestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.crossrefs.services.LangATestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.crossrefs.services.LangATestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.crossrefs.services.LangATestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractLangATestLanguageRuntimeConfig extends AbstractSer
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.crossrefs.ILangATestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/ImportUriTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/ImportUriTestLanguage.xmi
index 35ce9a2..0d5a9e2 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/ImportUriTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/ImportUriTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,6 +7,9 @@
<idElements>ImportUriTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="importedURI" nsURI="http://eclipse.org/xtext/importUriTestLanguage"/>
<rules xsi:type="xtext:ParserRule" name="Main">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/importUriTestLanguage#//Main"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" cardinality="*" feature="imports" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
@@ -17,6 +20,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Import">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/importUriTestLanguage#//Import"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="import"/>
<abstractTokens xsi:type="xtext:Assignment" feature="importURI" operator="=">
@@ -27,6 +33,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Type">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/importUriTestLanguage#//Type"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -41,7 +50,9 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="extends" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Type"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/importUriTestLanguage#//Type"/>
+ </type>
</terminal>
</abstractTokens>
</alternatives>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/LangATestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/LangATestLanguage.xmi
index aea02b1..e29a553 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/LangATestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/LangATestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,6 +7,9 @@
<idElements>LangATestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="langATestLanguage" nsURI="http://eclipse.org/xtext/langATestLanguage"/>
<rules xsi:type="xtext:ParserRule" name="Main">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/langATestLanguage#//Main"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" cardinality="*" feature="imports" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
@@ -17,6 +20,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Import">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/langATestLanguage#//Import"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="import"/>
<abstractTokens xsi:type="xtext:Assignment" feature="uri" operator="=">
@@ -27,6 +33,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Type">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/langATestLanguage#//Type"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -41,7 +50,9 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="extends" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Type"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/langATestLanguage#//Type"/>
+ </type>
</terminal>
</abstractTokens>
</alternatives>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageLexer.java
index 6794932..77487a7 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguage.g 2008-12-08 18:03:00
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguage.g 2008-12-10 12:15:46
package org.eclipse.xtext.crossrefs.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageParser.java
index fdd4cc9..1c2a508 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguage.g 2008-12-08 18:03:00
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalImportUriTestLanguage.g 2008-12-10 12:15:45
package org.eclipse.xtext.crossrefs.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageLexer.java
index ae71b82..a7a2494 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguage.g 2008-12-08 18:02:47
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguage.g 2008-12-10 12:15:32
package org.eclipse.xtext.crossrefs.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageParser.java
index 3080641..63d1a24 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguage.g 2008-12-08 18:02:47
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/crossrefs/parser/internal/InternalLangATestLanguage.g 2008-12-10 12:15:32
package org.eclipse.xtext.crossrefs.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/ImportUriTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/ImportUriTestLanguageGrammarAccess.java
index 4ba4b69..87626e5 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/ImportUriTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/ImportUriTestLanguageGrammarAccess.java
@@ -25,7 +25,7 @@ public class ImportUriTestLanguageGrammarAccess extends BaseEPackageAccess imple
// ( imports += Import ) * ( types += Type ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// ( imports += Import ) *
@@ -63,7 +63,7 @@ public class ImportUriTestLanguageGrammarAccess extends BaseEPackageAccess imple
// 'import' importURI = STRING
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'import'
@@ -101,7 +101,7 @@ public class ImportUriTestLanguageGrammarAccess extends BaseEPackageAccess imple
// 'type' name = ID 'extends' ^extends = [ Type ]
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'type' name = ID 'extends'
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/LangATestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/LangATestLanguageGrammarAccess.java
index 084791d..25b0052 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/LangATestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/services/LangATestLanguageGrammarAccess.java
@@ -25,7 +25,7 @@ public class LangATestLanguageGrammarAccess extends BaseEPackageAccess implement
// ( imports += Import ) * ( types += Type ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// ( imports += Import ) *
@@ -63,7 +63,7 @@ public class LangATestLanguageGrammarAccess extends BaseEPackageAccess implement
// 'import' uri = STRING
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'import'
@@ -101,7 +101,7 @@ public class LangATestLanguageGrammarAccess extends BaseEPackageAccess implement
// 'type' name = ID 'extends' ^extends = [ Type ]
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'type' name = ID 'extends'
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/AbstractDummyTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/AbstractDummyTestLanguageRuntimeConfig.java
index 8ca3472..49ac464 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/AbstractDummyTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/AbstractDummyTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractDummyTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.dummy.services.DummyTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.dummy.services.DummyTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.dummy.services.DummyTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractDummyTestLanguageRuntimeConfig extends AbstractSer
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.dummy.IDummyTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/DummyTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/DummyTestLanguage.xmi
index 2904349..dc9a3d0 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/DummyTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/DummyTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,11 +7,17 @@
<idElements>DummyTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="DummyLang" nsURI="http://www.eclipse.org/2008/xtext/DummyLang"/>
<rules xsi:type="xtext:ParserRule" name="Model">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/DummyLang#//Model"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" cardinality="*" feature="elements" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Element">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/DummyLang#//Element"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageLexer.java
index 48175fe..131caae 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguage.g 2008-12-08 18:02:52
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguage.g 2008-12-10 12:15:37
package org.eclipse.xtext.dummy.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageParser.java
index 2f83426..58d5b35 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguage.g 2008-12-08 18:02:52
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/dummy/parser/internal/InternalDummyTestLanguage.g 2008-12-10 12:15:37
package org.eclipse.xtext.dummy.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/services/DummyTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/services/DummyTestLanguageGrammarAccess.java
index 7189601..69573c2 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/services/DummyTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/services/DummyTestLanguageGrammarAccess.java
@@ -22,7 +22,7 @@ public class DummyTestLanguageGrammarAccess extends BaseEPackageAccess implement
// ( elements += Element ) *
public Assignment eleAssignmentElements() {
- return (cAssignmentElements != null) ? cAssignmentElements : (cAssignmentElements = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentElements != null) ? cAssignmentElements : (cAssignmentElements = (Assignment)getRule().eContents().get(1));
}
// Element
@@ -53,7 +53,7 @@ public class DummyTestLanguageGrammarAccess extends BaseEPackageAccess implement
// ( optional ?= 'optional' ) ? 'element' name = ID ( descriptions += STRING ) * ';'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// ( optional ?= 'optional' ) ? 'element' name = ID ( descriptions += STRING ) *
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractAbstractTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractAbstractTestLanguageRuntimeConfig.java
index 798fed2..280e792 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractAbstractTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractAbstractTestLanguageRuntimeConfig.java
@@ -9,19 +9,19 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractAbstractTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.grammarinheritance.services.AbstractTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.grammarinheritance.services.AbstractTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.grammarinheritance.services.AbstractTestLanguageGrammarAccess.class;
+ }
+
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.grammarinheritance.IAbstractTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.registrations();
}
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractConcreteTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractConcreteTestLanguageRuntimeConfig.java
index ee989c1..c3c3291 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractConcreteTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractConcreteTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractConcreteTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.grammarinheritance.services.ConcreteTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.grammarinheritance.services.ConcreteTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.grammarinheritance.services.ConcreteTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractConcreteTestLanguageRuntimeConfig extends Abstract
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.grammarinheritance.IConcreteTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractTestLanguage.xmi
index 89f1a7a..ac6fcf9 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/AbstractTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext" abstract="true">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext" abstract="true">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -8,7 +8,9 @@
<metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="mm" uri="classpath:/org/eclipse/xtext/grammarinheritance/ametamodel.ecore"/>
<metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="ecore" uri="http://www.eclipse.org/emf/2002/Ecore"/>
<rules xsi:type="xtext:ParserRule" name="InheritedParserRule">
- <type metamodel="//@metamodelDeclarations.0" name="AType"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="classpath:/org/eclipse/xtext/grammarinheritance/ametamodel.ecore#//AType"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="element"/>
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
@@ -17,7 +19,13 @@
</alternatives>
</rules>
<rules xsi:type="xtext:LexerRule" name="REAL" body="RULE_INT '.' RULE_INT">
- <type metamodel="//@metamodelDeclarations.1" name="EDouble"/>
+ <type metamodel="//@metamodelDeclarations.1">
+ <type xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
+ </type>
+ </rules>
+ <rules xsi:type="xtext:LexerRule" name="ID" body="('^')?('a'..'z'|'A'..'Z'|'&#xf6;'|'&#xe4;'|'&#xfc;'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*">
+ <type metamodel="//@metamodelDeclarations.1">
+ <type xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </type>
</rules>
- <rules xsi:type="xtext:LexerRule" name="ID" body="('^')?('a'..'z'|'A'..'Z'|'&#xf6;'|'&#xe4;'|'&#xfc;'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*"/>
</xtext:Grammar>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/ConcreteTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/ConcreteTestLanguage.xmi
index 3e36bcd..da8e595 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/ConcreteTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/ConcreteTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -12,6 +12,9 @@
<superGrammarIdElements>AbstractTestLanguage</superGrammarIdElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="foo" nsURI="http://holla"/>
<rules xsi:type="xtext:ParserRule" name="ConcreteParserRule">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://holla#//ConcreteParserRule"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageLexer.java
index bef3078..2b7a0d6 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguage.g 2008-12-08 18:02:48
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguage.g 2008-12-10 12:15:33
package org.eclipse.xtext.grammarinheritance.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageParser.java
index 5a87bad..27e01ea 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguage.g 2008-12-08 18:02:48
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/grammarinheritance/parser/internal/InternalConcreteTestLanguage.g 2008-12-10 12:15:33
package org.eclipse.xtext.grammarinheritance.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/services/ConcreteTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/services/ConcreteTestLanguageGrammarAccess.java
index f91c04d..ca7d3ac 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/services/ConcreteTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/services/ConcreteTestLanguageGrammarAccess.java
@@ -29,7 +29,7 @@ public class ConcreteTestLanguageGrammarAccess extends BaseEPackageAccess implem
// 'model' magicNumber = REAL ':' ( elements += InheritedParserRule ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'model' magicNumber = REAL ':'
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMetamodelRefTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMetamodelRefTestLanguageRuntimeConfig.java
index dfe0ffe..70e5c5c 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMetamodelRefTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMetamodelRefTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractMetamodelRefTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.metamodelreferencing.tests.services.MetamodelRefTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.metamodelreferencing.tests.services.MetamodelRefTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.metamodelreferencing.tests.services.MetamodelRefTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractMetamodelRefTestLanguageRuntimeConfig extends Abst
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.metamodelreferencing.tests.IMetamodelRefTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMultiGenMMTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMultiGenMMTestLanguageRuntimeConfig.java
index e6b4c2f2..f39210c 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMultiGenMMTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/AbstractMultiGenMMTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractMultiGenMMTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.metamodelreferencing.tests.services.MultiGenMMTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.metamodelreferencing.tests.services.MultiGenMMTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.metamodelreferencing.tests.services.MultiGenMMTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractMultiGenMMTestLanguageRuntimeConfig extends Abstra
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.metamodelreferencing.tests.IMultiGenMMTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xmi
index 902e2bb..e161777 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -9,6 +9,9 @@
<metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="xtext" uri="http://www.eclipse.org/2008/Xtext"/>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="SimpleTest" nsURI="http://eclipse.org/xtext/tests/SimpleTest"/>
<rules xsi:type="xtext:ParserRule" name="Foo">
+ <type metamodel="//@metamodelDeclarations.1">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/tests/SimpleTest#//Foo"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
@@ -21,15 +24,21 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="NameRef">
- <type metamodel="//@metamodelDeclarations.0" name="RuleCall"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Xtext#//RuleCall"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="rule" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.1" name="MyRule"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Xtext#//ParserRule"/>
+ </type>
</terminal>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="MyRule">
- <type metamodel="//@metamodelDeclarations.0" name="ParserRule"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Xtext#//ParserRule"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
<rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MultiGenMMTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MultiGenMMTestLanguage.xmi
index f07b2dc..eb3a88c 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MultiGenMMTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/MultiGenMMTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -9,6 +9,9 @@
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="SimpleTest" nsURI="http://eclipse.org/xtext/tests/SimpleTest"/>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" alias="other" name="OtherTest" nsURI="http://eclipse.org/xtext/tests/OtherTest"/>
<rules xsi:type="xtext:ParserRule" name="Foo">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/tests/SimpleTest#//Foo"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
@@ -21,7 +24,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="NameRef">
- <type metamodel="//@metamodelDeclarations.1" name="FooBar"/>
+ <type metamodel="//@metamodelDeclarations.1">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/tests/OtherTest#//FooBar"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
<rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.2"/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageLexer.java
index 31e3178..1a01337 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguage.g 2008-12-08 18:02:51
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguage.g 2008-12-10 12:15:36
package org.eclipse.xtext.metamodelreferencing.tests.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageParser.java
index 27078db..a3a57b1 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguage.g 2008-12-08 18:02:51
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMetamodelRefTestLanguage.g 2008-12-10 12:15:36
package org.eclipse.xtext.metamodelreferencing.tests.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageLexer.java
index d5df275..e006e16 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguage.g 2008-12-08 18:02:51
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguage.g 2008-12-10 12:15:37
package org.eclipse.xtext.metamodelreferencing.tests.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageParser.java
index 3fb959a..c7523cf 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguage.g 2008-12-08 18:02:51
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/internal/InternalMultiGenMMTestLanguage.g 2008-12-10 12:15:37
package org.eclipse.xtext.metamodelreferencing.tests.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MetamodelRefTestLanguageParseTreeConstructor.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MetamodelRefTestLanguageParseTreeConstructor.java
index a62ad85..3cc4d71 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MetamodelRefTestLanguageParseTreeConstructor.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MetamodelRefTestLanguageParseTreeConstructor.java
@@ -122,12 +122,12 @@ protected class Foo_1_Assignment_nameRefs extends AssignmentToken {
/************ begin Rule NameRef ****************
*
- * NameRef returns xtext :: RuleCall : rule = [ MyRule ] ;
+ * NameRef returns RuleCall : rule = [ ParserRule ] ;
*
**/
-// rule = [ MyRule ]
+// rule = [ ParserRule ]
protected class NameRef_Assignment_rule extends AssignmentToken {
public NameRef_Assignment_rule(IInstanceDescription curr, AbstractToken pred) {
@@ -143,9 +143,9 @@ protected class NameRef_Assignment_rule extends AssignmentToken {
IInstanceDescription obj = current.cloneAndConsume("rule");
if(value instanceof EObject) { // xtext::CrossReference
IInstanceDescription param = getDescr((EObject)value);
- if(param.isInstanceOf("MyRule")) {
+ if(param.isInstanceOf("ParserRule")) {
type = AssignmentType.CR;
- element = MetamodelRefTestLanguageGrammarAccess.INSTANCE.prNameRef().ele0CrossReferenceMyRule();
+ element = MetamodelRefTestLanguageGrammarAccess.INSTANCE.prNameRef().ele0CrossReferenceParserRule();
return new Solution(obj);
}
}
@@ -157,7 +157,7 @@ protected class NameRef_Assignment_rule extends AssignmentToken {
/************ begin Rule MyRule ****************
*
- * MyRule returns xtext :: ParserRule : name = ID ;
+ * MyRule returns ParserRule : name = ID ;
*
**/
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MultiGenMMTestLanguageParseTreeConstructor.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MultiGenMMTestLanguageParseTreeConstructor.java
index 0637076..575bed2 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MultiGenMMTestLanguageParseTreeConstructor.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parsetree/reconstr/MultiGenMMTestLanguageParseTreeConstructor.java
@@ -121,7 +121,7 @@ protected class Foo_1_Assignment_nameRefs extends AssignmentToken {
/************ begin Rule NameRef ****************
*
- * NameRef returns other :: FooBar : name = STRING ;
+ * NameRef returns FooBar : name = STRING ;
*
**/
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MetamodelRefTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MetamodelRefTestLanguageGrammarAccess.java
index 594632a..8ce334d 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MetamodelRefTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MetamodelRefTestLanguageGrammarAccess.java
@@ -25,7 +25,7 @@ public class MetamodelRefTestLanguageGrammarAccess extends BaseEPackageAccess im
// name = ID ( nameRefs += NameRef ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// name = ID
@@ -52,21 +52,21 @@ public class MetamodelRefTestLanguageGrammarAccess extends BaseEPackageAccess im
public class NameRefElements implements IParserRuleAccess {
private ParserRule rule;
private Assignment cAssignmentRule;
- private CrossReference c0CrossReferenceMyRule;
+ private CrossReference c0CrossReferenceParserRule;
- // NameRef returns xtext :: RuleCall : rule = [ MyRule ] ;
+ // NameRef returns RuleCall : rule = [ ParserRule ] ;
public ParserRule getRule() {
return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(3));
}
- // rule = [ MyRule ]
+ // rule = [ ParserRule ]
public Assignment eleAssignmentRule() {
return (cAssignmentRule != null) ? cAssignmentRule : (cAssignmentRule = (Assignment)getRule().eContents().get(1));
}
- // [ MyRule ]
- public CrossReference ele0CrossReferenceMyRule() {
- return (c0CrossReferenceMyRule != null) ? c0CrossReferenceMyRule : (c0CrossReferenceMyRule = (CrossReference)eleAssignmentRule().eContents().get(0));
+ // [ ParserRule ]
+ public CrossReference ele0CrossReferenceParserRule() {
+ return (c0CrossReferenceParserRule != null) ? c0CrossReferenceParserRule : (c0CrossReferenceParserRule = (CrossReference)eleAssignmentRule().eContents().get(0));
}
}
@@ -75,7 +75,7 @@ public class MetamodelRefTestLanguageGrammarAccess extends BaseEPackageAccess im
private Assignment cAssignmentName;
private RuleCall c0LexerRuleCallID;
- // MyRule returns xtext :: ParserRule : name = ID ;
+ // MyRule returns ParserRule : name = ID ;
public ParserRule getRule() {
return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(4));
}
@@ -119,12 +119,12 @@ public class MetamodelRefTestLanguageGrammarAccess extends BaseEPackageAccess im
return (pFoo != null) ? pFoo : (pFoo = new FooElements());
}
- // NameRef returns xtext :: RuleCall : rule = [ MyRule ] ;
+ // NameRef returns RuleCall : rule = [ ParserRule ] ;
public NameRefElements prNameRef() {
return (pNameRef != null) ? pNameRef : (pNameRef = new NameRefElements());
}
- // MyRule returns xtext :: ParserRule : name = ID ;
+ // MyRule returns ParserRule : name = ID ;
public MyRuleElements prMyRule() {
return (pMyRule != null) ? pMyRule : (pMyRule = new MyRuleElements());
}
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MultiGenMMTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MultiGenMMTestLanguageGrammarAccess.java
index aaefc36..0022130 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MultiGenMMTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/services/MultiGenMMTestLanguageGrammarAccess.java
@@ -25,7 +25,7 @@ public class MultiGenMMTestLanguageGrammarAccess extends BaseEPackageAccess impl
// name = ID ( nameRefs += NameRef ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// name = ID
@@ -54,7 +54,7 @@ public class MultiGenMMTestLanguageGrammarAccess extends BaseEPackageAccess impl
private Assignment cAssignmentName;
private RuleCall c0LexerRuleCallSTRING;
- // NameRef returns other :: FooBar : name = STRING ;
+ // NameRef returns FooBar : name = STRING ;
public ParserRule getRule() {
return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(3));
}
@@ -97,7 +97,7 @@ public class MultiGenMMTestLanguageGrammarAccess extends BaseEPackageAccess impl
return (pFoo != null) ? pFoo : (pFoo = new FooElements());
}
- // NameRef returns other :: FooBar : name = STRING ;
+ // NameRef returns FooBar : name = STRING ;
public NameRefElements prNameRef() {
return (pNameRef != null) ? pNameRef : (pNameRef = new NameRefElements());
}
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g
index 8b7c80e..8194fd1 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g
@@ -581,19 +581,18 @@ ruleTypeRef returns [EObject current=null]
@after { resetLookahead(); }:
(((
- lv_alias=RULE_ID
- {
- createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::RuleCall */, "alias");
- }
-
- {
- if ($current==null) {
+
+ {
+ if ($current==null) {
$current = factory.create("TypeRef");
associateNodeWithAstElement(currentNode, $current);
}
-
- factory.set($current, "alias", lv_alias,"ID");
- }
+ }
+(
+ RULE_ID {
+ createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::CrossReference */, "metamodel");
+ }
+)
)'::'
{
@@ -601,19 +600,18 @@ ruleTypeRef returns [EObject current=null]
}
)?(
- lv_name=RULE_ID
- {
- createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name");
- }
-
- {
- if ($current==null) {
+
+ {
+ if ($current==null) {
$current = factory.create("TypeRef");
associateNodeWithAstElement(currentNode, $current);
}
-
- factory.set($current, "name", lv_name,"ID");
- }
+ }
+(
+ RULE_ID {
+ createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "type");
+ }
+)
));
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageLexer.java
index f08737f..16f26de 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g 2008-12-08 18:02:50
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g 2008-12-10 12:15:35
package org.eclipse.xtext.parser.internal;
@@ -558,10 +558,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
public final void mRULE_ID() throws RecognitionException {
try {
int _type = RULE_ID;
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1186:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1186:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1184:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1184:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1186:11: ( '^' )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1184:11: ( '^' )?
int alt1=2;
int LA1_0 = input.LA(1);
@@ -570,7 +570,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
}
switch (alt1) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1186:12: '^'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1184:12: '^'
{
match('^');
@@ -589,7 +589,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
recover(mse); throw mse;
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1186:41: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1184:41: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
loop2:
do {
int alt2=2;
@@ -637,10 +637,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
public final void mRULE_INT() throws RecognitionException {
try {
int _type = RULE_INT;
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:10: ( ( '0' .. '9' )+ )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:12: ( '0' .. '9' )+
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1186:10: ( ( '0' .. '9' )+ )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1186:12: ( '0' .. '9' )+
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:12: ( '0' .. '9' )+
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1186:12: ( '0' .. '9' )+
int cnt3=0;
loop3:
do {
@@ -654,7 +654,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
switch (alt3) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:13: '0' .. '9'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1186:13: '0' .. '9'
{
matchRange('0','9');
@@ -684,7 +684,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
public final void mRULE_STRING() throws RecognitionException {
try {
int _type = RULE_STRING;
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:13: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:13: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' )
int alt6=2;
int LA6_0 = input.LA(1);
@@ -696,16 +696,16 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
}
else {
NoViableAltException nvae =
- new NoViableAltException("1190:1: RULE_STRING : ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' );", 6, 0, input);
+ new NoViableAltException("1188: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/parser/internal/InternalXtextGrammarTestLanguage.g:1190:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"'
{
match('\"');
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )*
loop4:
do {
int alt4=3;
@@ -721,7 +721,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
switch (alt4) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188: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' ) {
@@ -738,7 +738,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:65: ~ ( '\\\\' | '\"' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:65: ~ ( '\\\\' | '\"' )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
input.consume();
@@ -764,10 +764,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\''
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\''
{
match('\'');
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )*
loop5:
do {
int alt5=3;
@@ -783,7 +783,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
switch (alt5) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188: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' ) {
@@ -800,7 +800,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:152: ~ ( '\\\\' | '\\'' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1188:152: ~ ( '\\\\' | '\\'' )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
input.consume();
@@ -838,12 +838,12 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
public final void mRULE_ML_COMMENT() throws RecognitionException {
try {
int _type = RULE_ML_COMMENT;
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:19: '/*' ( options {greedy=false; } : . )* '*/'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:19: '/*' ( options {greedy=false; } : . )* '*/'
{
match("/*");
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:24: ( options {greedy=false; } : . )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:24: ( options {greedy=false; } : . )*
loop7:
do {
int alt7=2;
@@ -868,7 +868,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
switch (alt7) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:52: .
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1190:52: .
{
matchAny();
@@ -897,12 +897,12 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
public final void mRULE_SL_COMMENT() throws RecognitionException {
try {
int _type = RULE_SL_COMMENT;
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )?
{
match("//");
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:24: (~ ( '\\n' | '\\r' ) )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:24: (~ ( '\\n' | '\\r' ) )*
loop8:
do {
int alt8=2;
@@ -915,7 +915,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
switch (alt8) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:24: ~ ( '\\n' | '\\r' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192: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();
@@ -936,7 +936,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
}
} while (true);
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:38: ( ( '\\r' )? '\\n' )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:38: ( ( '\\r' )? '\\n' )?
int alt10=2;
int LA10_0 = input.LA(1);
@@ -945,9 +945,9 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
}
switch (alt10) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:39: ( '\\r' )? '\\n'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:39: ( '\\r' )? '\\n'
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:39: ( '\\r' )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:39: ( '\\r' )?
int alt9=2;
int LA9_0 = input.LA(1);
@@ -956,7 +956,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
}
switch (alt9) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:39: '\\r'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1192:39: '\\r'
{
match('\r');
@@ -987,10 +987,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
public final void mRULE_WS() throws RecognitionException {
try {
int _type = RULE_WS;
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1196:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1196:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1196:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1194:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
int cnt11=0;
loop11:
do {
@@ -1044,8 +1044,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer {
public final void mRULE_ANY_OTHER() throws RecognitionException {
try {
int _type = RULE_ANY_OTHER;
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1198:16: ( . )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1198:18: .
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1196:16: ( . )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1196:18: .
{
matchAny();
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageParser.java
index 1179eb0..9ecc67c 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g 2008-12-08 18:02:49
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g 2008-12-10 12:15:35
package org.eclipse.xtext.parser.internal;
@@ -1453,22 +1453,19 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleTypeRef
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:579:1: ruleTypeRef returns [EObject current=null] : ( ( (lv_alias= RULE_ID ) '::' )? (lv_name= RULE_ID ) ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:579:1: ruleTypeRef returns [EObject current=null] : ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) ;
public final EObject ruleTypeRef() throws RecognitionException {
EObject current = null;
- Token lv_alias=null;
- Token lv_name=null;
-
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:581:33: ( ( ( (lv_alias= RULE_ID ) '::' )? (lv_name= RULE_ID ) ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:1: ( ( (lv_alias= RULE_ID ) '::' )? (lv_name= RULE_ID ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:581:33: ( ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:1: ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:1: ( ( (lv_alias= RULE_ID ) '::' )? (lv_name= RULE_ID ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:2: ( (lv_alias= RULE_ID ) '::' )? (lv_name= RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:1: ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:2: ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:2: ( (lv_alias= RULE_ID ) '::' )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:2: ( ( ( RULE_ID ) ) '::' )?
int alt14=2;
int LA14_0 = input.LA(1);
@@ -1481,28 +1478,31 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
switch (alt14) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:3: (lv_alias= RULE_ID ) '::'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:3: ( ( RULE_ID ) ) '::'
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:3: (lv_alias= RULE_ID )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:584:6: lv_alias= RULE_ID
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:582:3: ( ( RULE_ID ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:585:3: ( RULE_ID )
{
- lv_alias=(Token)input.LT(1);
- match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTypeRef1533);
-
- createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::RuleCall */, "alias");
-
- if (current==null) {
+ if (current==null) {
current = factory.create("TypeRef");
associateNodeWithAstElement(currentNode, current);
}
-
- factory.set(current, "alias", lv_alias,"ID");
-
+
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:591:1: ( RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:592:2: RULE_ID
+ {
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTypeRef1536);
+
+ createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::CrossReference */, "metamodel");
+
}
- match(input,23,FOLLOW_23_in_ruleTypeRef1553);
+
+ }
+
+ match(input,23,FOLLOW_23_in_ruleTypeRef1549);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null);
@@ -1512,22 +1512,25 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:602:3: (lv_name= RULE_ID )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:604:6: lv_name= RULE_ID
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:601:3: ( ( RULE_ID ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:604:3: ( RULE_ID )
{
- lv_name=(Token)input.LT(1);
- match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTypeRef1576);
-
- createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name");
-
- if (current==null) {
+ if (current==null) {
current = factory.create("TypeRef");
associateNodeWithAstElement(currentNode, current);
}
-
- factory.set(current, "name", lv_name,"ID");
-
+
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:610:1: ( RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:611:2: RULE_ID
+ {
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTypeRef1575);
+
+ createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "type");
+
+
+ }
+
}
@@ -1552,7 +1555,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleAlternatives
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:623:1: entryRuleAlternatives returns [EObject current=null] : iv_ruleAlternatives= ruleAlternatives EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:621:1: entryRuleAlternatives returns [EObject current=null] : iv_ruleAlternatives= ruleAlternatives EOF ;
public final EObject entryRuleAlternatives() throws RecognitionException {
EObject current = null;
@@ -1560,16 +1563,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:623:54: (iv_ruleAlternatives= ruleAlternatives EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:624:2: iv_ruleAlternatives= ruleAlternatives EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:621:54: (iv_ruleAlternatives= ruleAlternatives EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:622:2: iv_ruleAlternatives= ruleAlternatives EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.8" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleAlternatives_in_entryRuleAlternatives1622);
+ pushFollow(FOLLOW_ruleAlternatives_in_entryRuleAlternatives1614);
iv_ruleAlternatives=ruleAlternatives();
_fsp--;
current =iv_ruleAlternatives;
- match(input,EOF,FOLLOW_EOF_in_entryRuleAlternatives1632);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAlternatives1624);
}
@@ -1587,7 +1590,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleAlternatives
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:631:1: ruleAlternatives returns [EObject current=null] : (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:629:1: ruleAlternatives returns [EObject current=null] : (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* ) ;
public final EObject ruleAlternatives() throws RecognitionException {
EObject current = null;
@@ -1598,16 +1601,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:633:33: ( (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:634:1: (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:631:33: ( (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:632:1: (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:634:1: (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:635:5: this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:632:1: (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:633:5: this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )*
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.8/@alternatives/@abstractTokens.0" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleGroup_in_ruleAlternatives1679);
+ pushFollow(FOLLOW_ruleGroup_in_ruleAlternatives1671);
this_Group=ruleGroup();
_fsp--;
@@ -1615,7 +1618,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
current = this_Group;
currentNode = currentNode.getParent();
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:643:1: ( ( () '|' ) (lv_groups= ruleGroup ) )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:641:1: ( ( () '|' ) (lv_groups= ruleGroup ) )*
loop15:
do {
int alt15=2;
@@ -1628,13 +1631,13 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
switch (alt15) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:643:2: ( () '|' ) (lv_groups= ruleGroup )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:641:2: ( () '|' ) (lv_groups= ruleGroup )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:643:2: ( () '|' )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:643:3: () '|'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:641:2: ( () '|' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:641:3: () '|'
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:643:3: ()
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:644:5:
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:641:3: ()
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:642:5:
{
temp=factory.create("Alternatives");
@@ -1650,20 +1653,20 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- match(input,24,FOLLOW_24_in_ruleAlternatives1698);
+ match(input,24,FOLLOW_24_in_ruleAlternatives1690);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.8/@alternatives/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null);
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:659:2: (lv_groups= ruleGroup )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:662:6: lv_groups= ruleGroup
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:657:2: (lv_groups= ruleGroup )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:660:6: lv_groups= ruleGroup
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.8/@alternatives/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleGroup_in_ruleAlternatives1733);
+ pushFollow(FOLLOW_ruleGroup_in_ruleAlternatives1725);
lv_groups=ruleGroup();
_fsp--;
@@ -1709,7 +1712,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleGroup
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:681:1: entryRuleGroup returns [EObject current=null] : iv_ruleGroup= ruleGroup EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:679:1: entryRuleGroup returns [EObject current=null] : iv_ruleGroup= ruleGroup EOF ;
public final EObject entryRuleGroup() throws RecognitionException {
EObject current = null;
@@ -1717,16 +1720,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:681:47: (iv_ruleGroup= ruleGroup EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:682:2: iv_ruleGroup= ruleGroup EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:679:47: (iv_ruleGroup= ruleGroup EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:680:2: iv_ruleGroup= ruleGroup EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.9" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleGroup_in_entryRuleGroup1774);
+ pushFollow(FOLLOW_ruleGroup_in_entryRuleGroup1766);
iv_ruleGroup=ruleGroup();
_fsp--;
current =iv_ruleGroup;
- match(input,EOF,FOLLOW_EOF_in_entryRuleGroup1784);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleGroup1776);
}
@@ -1744,7 +1747,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleGroup
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:689:1: ruleGroup returns [EObject current=null] : (this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )* ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:687:1: ruleGroup returns [EObject current=null] : (this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )* ) ;
public final EObject ruleGroup() throws RecognitionException {
EObject current = null;
@@ -1755,16 +1758,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:691:33: ( (this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )* ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:692:1: (this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )* )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:689:33: ( (this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )* ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:690:1: (this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )* )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:692:1: (this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )* )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:693:5: this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:690:1: (this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )* )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:691:5: this_AbstractToken= ruleAbstractToken ( () (lv_abstractTokens= ruleAbstractToken ) )*
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.9/@alternatives/@abstractTokens.0" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleAbstractToken_in_ruleGroup1831);
+ pushFollow(FOLLOW_ruleAbstractToken_in_ruleGroup1823);
this_AbstractToken=ruleAbstractToken();
_fsp--;
@@ -1772,7 +1775,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
current = this_AbstractToken;
currentNode = currentNode.getParent();
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:701:1: ( () (lv_abstractTokens= ruleAbstractToken ) )*
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:699:1: ( () (lv_abstractTokens= ruleAbstractToken ) )*
loop16:
do {
int alt16=2;
@@ -1785,10 +1788,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
switch (alt16) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:701:2: () (lv_abstractTokens= ruleAbstractToken )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:699:2: () (lv_abstractTokens= ruleAbstractToken )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:701:2: ()
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:702:5:
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:699:2: ()
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:700:5:
{
temp=factory.create("Group");
@@ -1804,13 +1807,13 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:713:2: (lv_abstractTokens= ruleAbstractToken )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:716:6: lv_abstractTokens= ruleAbstractToken
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:711:2: (lv_abstractTokens= ruleAbstractToken )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:714:6: lv_abstractTokens= ruleAbstractToken
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.9/@alternatives/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleAbstractToken_in_ruleGroup1874);
+ pushFollow(FOLLOW_ruleAbstractToken_in_ruleGroup1866);
lv_abstractTokens=ruleAbstractToken();
_fsp--;
@@ -1856,7 +1859,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleAbstractToken
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:735:1: entryRuleAbstractToken returns [EObject current=null] : iv_ruleAbstractToken= ruleAbstractToken EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:733:1: entryRuleAbstractToken returns [EObject current=null] : iv_ruleAbstractToken= ruleAbstractToken EOF ;
public final EObject entryRuleAbstractToken() throws RecognitionException {
EObject current = null;
@@ -1864,16 +1867,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:735:55: (iv_ruleAbstractToken= ruleAbstractToken EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:736:2: iv_ruleAbstractToken= ruleAbstractToken EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:733:55: (iv_ruleAbstractToken= ruleAbstractToken EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:734:2: iv_ruleAbstractToken= ruleAbstractToken EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.10" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleAbstractToken_in_entryRuleAbstractToken1915);
+ pushFollow(FOLLOW_ruleAbstractToken_in_entryRuleAbstractToken1907);
iv_ruleAbstractToken=ruleAbstractToken();
_fsp--;
current =iv_ruleAbstractToken;
- match(input,EOF,FOLLOW_EOF_in_entryRuleAbstractToken1925);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAbstractToken1917);
}
@@ -1891,7 +1894,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleAbstractToken
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:743:1: ruleAbstractToken returns [EObject current=null] : ( ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )? ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:741:1: ruleAbstractToken returns [EObject current=null] : ( ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )? ) ;
public final EObject ruleAbstractToken() throws RecognitionException {
EObject current = null;
@@ -1905,28 +1908,28 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:745:33: ( ( ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )? ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:746:1: ( ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )? )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:743:33: ( ( ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )? ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:744:1: ( ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )? )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:746:1: ( ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )? )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:746:2: ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:744:1: ( ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )? )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:744:2: ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal ) (lv_cardinality= ( ( '?' | '*' ) | '+' ) )?
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:746:2: ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:744:2: ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal )
int alt18=2;
switch ( input.LA(1) ) {
case RULE_ID:
{
int LA18_1 = input.LA(2);
- if ( ((LA18_1>=28 && LA18_1<=30)) ) {
- alt18=1;
- }
- else if ( (LA18_1==EOF||(LA18_1>=RULE_ID && LA18_1<=RULE_STRING)||LA18_1==22||(LA18_1>=24 && LA18_1<=27)||LA18_1==31||LA18_1==34||(LA18_1>=36 && LA18_1<=37)) ) {
+ if ( (LA18_1==EOF||(LA18_1>=RULE_ID && LA18_1<=RULE_STRING)||LA18_1==22||(LA18_1>=24 && LA18_1<=27)||LA18_1==31||LA18_1==34||(LA18_1>=36 && LA18_1<=37)) ) {
alt18=2;
}
+ else if ( ((LA18_1>=28 && LA18_1<=30)) ) {
+ alt18=1;
+ }
else {
NoViableAltException nvae =
- new NoViableAltException("746:2: ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal )", 18, 1, input);
+ new NoViableAltException("744:2: ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal )", 18, 1, input);
throw nvae;
}
@@ -1946,16 +1949,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
break;
default:
NoViableAltException nvae =
- new NoViableAltException("746:2: ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal )", 18, 0, input);
+ new NoViableAltException("744:2: ( (this_Assignment= ruleAssignment | this_Action= ruleAction ) | this_AbstractTerminal= ruleAbstractTerminal )", 18, 0, input);
throw nvae;
}
switch (alt18) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:746:3: (this_Assignment= ruleAssignment | this_Action= ruleAction )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:744:3: (this_Assignment= ruleAssignment | this_Action= ruleAction )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:746:3: (this_Assignment= ruleAssignment | this_Action= ruleAction )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:744:3: (this_Assignment= ruleAssignment | this_Action= ruleAction )
int alt17=2;
int LA17_0 = input.LA(1);
@@ -1967,18 +1970,18 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
else {
NoViableAltException nvae =
- new NoViableAltException("746:3: (this_Assignment= ruleAssignment | this_Action= ruleAction )", 17, 0, input);
+ new NoViableAltException("744:3: (this_Assignment= ruleAssignment | this_Action= ruleAction )", 17, 0, input);
throw nvae;
}
switch (alt17) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:747:5: this_Assignment= ruleAssignment
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:745:5: this_Assignment= ruleAssignment
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.10/@alternatives/@abstractTokens.0/@groups.0/@groups.0" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleAssignment_in_ruleAbstractToken1974);
+ pushFollow(FOLLOW_ruleAssignment_in_ruleAbstractToken1966);
this_Assignment=ruleAssignment();
_fsp--;
@@ -1990,12 +1993,12 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:757:5: this_Action= ruleAction
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:755:5: this_Action= ruleAction
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.10/@alternatives/@abstractTokens.0/@groups.0/@groups.1" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleAction_in_ruleAbstractToken2001);
+ pushFollow(FOLLOW_ruleAction_in_ruleAbstractToken1993);
this_Action=ruleAction();
_fsp--;
@@ -2013,12 +2016,12 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:767:5: this_AbstractTerminal= ruleAbstractTerminal
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:765:5: this_AbstractTerminal= ruleAbstractTerminal
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.10/@alternatives/@abstractTokens.0/@groups.1" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleAbstractTerminal_in_ruleAbstractToken2029);
+ pushFollow(FOLLOW_ruleAbstractTerminal_in_ruleAbstractToken2021);
this_AbstractTerminal=ruleAbstractTerminal();
_fsp--;
@@ -2032,7 +2035,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:775:2: (lv_cardinality= ( ( '?' | '*' ) | '+' ) )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:773:2: (lv_cardinality= ( ( '?' | '*' ) | '+' ) )?
int alt21=2;
int LA21_0 = input.LA(1);
@@ -2041,9 +2044,9 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
switch (alt21) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:777:6: lv_cardinality= ( ( '?' | '*' ) | '+' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:775:6: lv_cardinality= ( ( '?' | '*' ) | '+' )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:777:21: ( ( '?' | '*' ) | '+' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:775:21: ( ( '?' | '*' ) | '+' )
int alt20=2;
int LA20_0 = input.LA(1);
@@ -2055,15 +2058,15 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
else {
NoViableAltException nvae =
- new NoViableAltException("777:21: ( ( '?' | '*' ) | '+' )", 20, 0, input);
+ new NoViableAltException("775:21: ( ( '?' | '*' ) | '+' )", 20, 0, input);
throw nvae;
}
switch (alt20) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:777:22: ( '?' | '*' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:775:22: ( '?' | '*' )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:777:22: ( '?' | '*' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:775:22: ( '?' | '*' )
int alt19=2;
int LA19_0 = input.LA(1);
@@ -2075,15 +2078,15 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
else {
NoViableAltException nvae =
- new NoViableAltException("777:22: ( '?' | '*' )", 19, 0, input);
+ new NoViableAltException("775:22: ( '?' | '*' )", 19, 0, input);
throw nvae;
}
switch (alt19) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:777:23: '?'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:775:23: '?'
{
- match(input,25,FOLLOW_25_in_ruleAbstractToken2052);
+ match(input,25,FOLLOW_25_in_ruleAbstractToken2044);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.10/@alternatives/@abstractTokens.1/@terminal/@groups.0/@groups.0" /* xtext::Keyword */, "cardinality");
@@ -2091,9 +2094,9 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:782:6: '*'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:780:6: '*'
{
- match(input,26,FOLLOW_26_in_ruleAbstractToken2067);
+ match(input,26,FOLLOW_26_in_ruleAbstractToken2059);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.10/@alternatives/@abstractTokens.1/@terminal/@groups.0/@groups.1" /* xtext::Keyword */, "cardinality");
@@ -2107,9 +2110,9 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:787:6: '+'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:785:6: '+'
{
- match(input,27,FOLLOW_27_in_ruleAbstractToken2083);
+ match(input,27,FOLLOW_27_in_ruleAbstractToken2075);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.10/@alternatives/@abstractTokens.1/@terminal/@groups.1" /* xtext::Keyword */, "cardinality");
@@ -2154,7 +2157,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleAssignment
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:806:1: entryRuleAssignment returns [EObject current=null] : iv_ruleAssignment= ruleAssignment EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:804:1: entryRuleAssignment returns [EObject current=null] : iv_ruleAssignment= ruleAssignment EOF ;
public final EObject entryRuleAssignment() throws RecognitionException {
EObject current = null;
@@ -2162,16 +2165,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:806:52: (iv_ruleAssignment= ruleAssignment EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:807:2: iv_ruleAssignment= ruleAssignment EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:804:52: (iv_ruleAssignment= ruleAssignment EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:805:2: iv_ruleAssignment= ruleAssignment EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.11" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleAssignment_in_entryRuleAssignment2132);
+ pushFollow(FOLLOW_ruleAssignment_in_entryRuleAssignment2124);
iv_ruleAssignment=ruleAssignment();
_fsp--;
current =iv_ruleAssignment;
- match(input,EOF,FOLLOW_EOF_in_entryRuleAssignment2142);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAssignment2134);
}
@@ -2189,7 +2192,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleAssignment
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:814:1: ruleAssignment returns [EObject current=null] : ( ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal ) ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:812:1: ruleAssignment returns [EObject current=null] : ( ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal ) ) ;
public final EObject ruleAssignment() throws RecognitionException {
EObject current = null;
@@ -2200,20 +2203,20 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:816:33: ( ( ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal ) ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:817:1: ( ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:814:33: ( ( ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal ) ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:815:1: ( ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal ) )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:817:1: ( ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:817:2: ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:815:1: ( ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:815:2: ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) ) (lv_terminal= ruleAbstractTerminal )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:817:2: ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:817:3: (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:815:2: ( (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:815:3: (lv_feature= RULE_ID ) (lv_operator= ( ( '+=' | '=' ) | '?=' ) )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:817:3: (lv_feature= RULE_ID )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:819:6: lv_feature= RULE_ID
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:815:3: (lv_feature= RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:817:6: lv_feature= RULE_ID
{
lv_feature=(Token)input.LT(1);
- match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleAssignment2189);
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleAssignment2181);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.11/@alternatives/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::RuleCall */, "feature");
@@ -2228,10 +2231,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:833:2: (lv_operator= ( ( '+=' | '=' ) | '?=' ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:835:6: lv_operator= ( ( '+=' | '=' ) | '?=' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:831:2: (lv_operator= ( ( '+=' | '=' ) | '?=' ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:833:6: lv_operator= ( ( '+=' | '=' ) | '?=' )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:835:18: ( ( '+=' | '=' ) | '?=' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:833:18: ( ( '+=' | '=' ) | '?=' )
int alt23=2;
int LA23_0 = input.LA(1);
@@ -2243,15 +2246,15 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
else {
NoViableAltException nvae =
- new NoViableAltException("835:18: ( ( '+=' | '=' ) | '?=' )", 23, 0, input);
+ new NoViableAltException("833:18: ( ( '+=' | '=' ) | '?=' )", 23, 0, input);
throw nvae;
}
switch (alt23) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:835:19: ( '+=' | '=' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:833:19: ( '+=' | '=' )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:835:19: ( '+=' | '=' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:833:19: ( '+=' | '=' )
int alt22=2;
int LA22_0 = input.LA(1);
@@ -2263,15 +2266,15 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
else {
NoViableAltException nvae =
- new NoViableAltException("835:19: ( '+=' | '=' )", 22, 0, input);
+ new NoViableAltException("833:19: ( '+=' | '=' )", 22, 0, input);
throw nvae;
}
switch (alt22) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:835:20: '+='
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:833:20: '+='
{
- match(input,28,FOLLOW_28_in_ruleAssignment2223);
+ match(input,28,FOLLOW_28_in_ruleAssignment2215);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.11/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.0" /* xtext::Keyword */, "operator");
@@ -2279,9 +2282,9 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:840:6: '='
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:838:6: '='
{
- match(input,29,FOLLOW_29_in_ruleAssignment2238);
+ match(input,29,FOLLOW_29_in_ruleAssignment2230);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.11/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0/@groups.1" /* xtext::Keyword */, "operator");
@@ -2295,9 +2298,9 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:845:6: '?='
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:843:6: '?='
{
- match(input,30,FOLLOW_30_in_ruleAssignment2254);
+ match(input,30,FOLLOW_30_in_ruleAssignment2246);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.11/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.1" /* xtext::Keyword */, "operator");
@@ -2321,13 +2324,13 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:859:3: (lv_terminal= ruleAbstractTerminal )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:862:6: lv_terminal= ruleAbstractTerminal
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:857:3: (lv_terminal= ruleAbstractTerminal )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:860:6: lv_terminal= ruleAbstractTerminal
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.11/@alternatives/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleAbstractTerminal_in_ruleAssignment2302);
+ pushFollow(FOLLOW_ruleAbstractTerminal_in_ruleAssignment2294);
lv_terminal=ruleAbstractTerminal();
_fsp--;
@@ -2364,7 +2367,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleAction
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:881:1: entryRuleAction returns [EObject current=null] : iv_ruleAction= ruleAction EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:879:1: entryRuleAction returns [EObject current=null] : iv_ruleAction= ruleAction EOF ;
public final EObject entryRuleAction() throws RecognitionException {
EObject current = null;
@@ -2372,16 +2375,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:881:48: (iv_ruleAction= ruleAction EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:882:2: iv_ruleAction= ruleAction EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:879:48: (iv_ruleAction= ruleAction EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:880:2: iv_ruleAction= ruleAction EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleAction_in_entryRuleAction2341);
+ pushFollow(FOLLOW_ruleAction_in_entryRuleAction2333);
iv_ruleAction=ruleAction();
_fsp--;
current =iv_ruleAction;
- match(input,EOF,FOLLOW_EOF_in_entryRuleAction2351);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAction2343);
}
@@ -2399,7 +2402,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleAction
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:889:1: ruleAction returns [EObject current=null] : ( ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}' ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:887:1: ruleAction returns [EObject current=null] : ( ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}' ) ;
public final EObject ruleAction() throws RecognitionException {
EObject current = null;
@@ -2410,35 +2413,35 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:891:33: ( ( ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}' ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:1: ( ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:889:33: ( ( ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}' ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:1: ( ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}' )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:1: ( ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}' )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:2: ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:1: ( ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:2: ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' ) '}'
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:2: ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:3: ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:2: ( ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:3: ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) ) 'current'
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:3: ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:4: ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:3: ( ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:4: ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) ) (lv_operator= ( '=' | '+=' ) )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:4: ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:5: ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:4: ( ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:5: ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' ) (lv_feature= RULE_ID )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:5: ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:6: ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:5: ( ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:6: ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) ) '.'
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:6: ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:7: ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:6: ( ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:7: ( '{' ( 'current' '=' )? ) (lv_typeName= ruleTypeRef )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:7: ( '{' ( 'current' '=' )? )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:892:8: '{' ( 'current' '=' )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:7: ( '{' ( 'current' '=' )? )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:890:8: '{' ( 'current' '=' )?
{
- match(input,31,FOLLOW_31_in_ruleAction2391);
+ match(input,31,FOLLOW_31_in_ruleAction2383);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null);
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:896:1: ( 'current' '=' )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:894:1: ( 'current' '=' )?
int alt24=2;
int LA24_0 = input.LA(1);
@@ -2447,13 +2450,13 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
switch (alt24) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:896:2: 'current' '='
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:894:2: 'current' '='
{
- match(input,32,FOLLOW_32_in_ruleAction2401);
+ match(input,32,FOLLOW_32_in_ruleAction2393);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null);
- match(input,29,FOLLOW_29_in_ruleAction2410);
+ match(input,29,FOLLOW_29_in_ruleAction2402);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1" /* xtext::Keyword */, null);
@@ -2466,13 +2469,13 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:904:4: (lv_typeName= ruleTypeRef )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:907:6: lv_typeName= ruleTypeRef
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:902:4: (lv_typeName= ruleTypeRef )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:905:6: lv_typeName= ruleTypeRef
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleTypeRef_in_ruleAction2447);
+ pushFollow(FOLLOW_ruleTypeRef_in_ruleAction2439);
lv_typeName=ruleTypeRef();
_fsp--;
@@ -2491,18 +2494,18 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- match(input,13,FOLLOW_13_in_ruleAction2461);
+ match(input,13,FOLLOW_13_in_ruleAction2453);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null);
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:925:2: (lv_feature= RULE_ID )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:927:6: lv_feature= RULE_ID
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:923:2: (lv_feature= RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:925:6: lv_feature= RULE_ID
{
lv_feature=(Token)input.LT(1);
- match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleAction2483);
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleAction2475);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "feature");
@@ -2520,10 +2523,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:941:3: (lv_operator= ( '=' | '+=' ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:943:6: lv_operator= ( '=' | '+=' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:939:3: (lv_operator= ( '=' | '+=' ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:941:6: lv_operator= ( '=' | '+=' )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:943:18: ( '=' | '+=' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:941:18: ( '=' | '+=' )
int alt25=2;
int LA25_0 = input.LA(1);
@@ -2535,15 +2538,15 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
else {
NoViableAltException nvae =
- new NoViableAltException("943:18: ( '=' | '+=' )", 25, 0, input);
+ new NoViableAltException("941:18: ( '=' | '+=' )", 25, 0, input);
throw nvae;
}
switch (alt25) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:943:19: '='
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:941:19: '='
{
- match(input,29,FOLLOW_29_in_ruleAction2517);
+ match(input,29,FOLLOW_29_in_ruleAction2509);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.0" /* xtext::Keyword */, "operator");
@@ -2551,9 +2554,9 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:948:6: '+='
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:946:6: '+='
{
- match(input,28,FOLLOW_28_in_ruleAction2532);
+ match(input,28,FOLLOW_28_in_ruleAction2524);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal/@groups.1" /* xtext::Keyword */, "operator");
@@ -2577,14 +2580,14 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- match(input,32,FOLLOW_32_in_ruleAction2555);
+ match(input,32,FOLLOW_32_in_ruleAction2547);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null);
}
- match(input,33,FOLLOW_33_in_ruleAction2565);
+ match(input,33,FOLLOW_33_in_ruleAction2557);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.12/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null);
@@ -2609,7 +2612,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleAbstractTerminal
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:975:1: entryRuleAbstractTerminal returns [EObject current=null] : iv_ruleAbstractTerminal= ruleAbstractTerminal EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:973:1: entryRuleAbstractTerminal returns [EObject current=null] : iv_ruleAbstractTerminal= ruleAbstractTerminal EOF ;
public final EObject entryRuleAbstractTerminal() throws RecognitionException {
EObject current = null;
@@ -2617,16 +2620,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:975:58: (iv_ruleAbstractTerminal= ruleAbstractTerminal EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:976:2: iv_ruleAbstractTerminal= ruleAbstractTerminal EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:973:58: (iv_ruleAbstractTerminal= ruleAbstractTerminal EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:974:2: iv_ruleAbstractTerminal= ruleAbstractTerminal EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.13" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleAbstractTerminal_in_entryRuleAbstractTerminal2600);
+ pushFollow(FOLLOW_ruleAbstractTerminal_in_entryRuleAbstractTerminal2592);
iv_ruleAbstractTerminal=ruleAbstractTerminal();
_fsp--;
current =iv_ruleAbstractTerminal;
- match(input,EOF,FOLLOW_EOF_in_entryRuleAbstractTerminal2610);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleAbstractTerminal2602);
}
@@ -2644,7 +2647,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleAbstractTerminal
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:983:1: ruleAbstractTerminal returns [EObject current=null] : ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:981:1: ruleAbstractTerminal returns [EObject current=null] : ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference ) ;
public final EObject ruleAbstractTerminal() throws RecognitionException {
EObject current = null;
@@ -2659,10 +2662,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:985:33: ( ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:986:1: ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:983:33: ( ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:984:1: ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:986:1: ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:984:1: ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference )
int alt28=2;
int LA28_0 = input.LA(1);
@@ -2674,15 +2677,15 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
else {
NoViableAltException nvae =
- new NoViableAltException("986:1: ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference )", 28, 0, input);
+ new NoViableAltException("984:1: ( ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement ) | this_CrossReference= ruleCrossReference )", 28, 0, input);
throw nvae;
}
switch (alt28) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:986:2: ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:984:2: ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:986:2: ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:984:2: ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement )
int alt27=2;
int LA27_0 = input.LA(1);
@@ -2694,15 +2697,15 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
else {
NoViableAltException nvae =
- new NoViableAltException("986:2: ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement )", 27, 0, input);
+ new NoViableAltException("984:2: ( (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall ) | this_ParenthesizedElement= ruleParenthesizedElement )", 27, 0, input);
throw nvae;
}
switch (alt27) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:986:3: (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:984:3: (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:986:3: (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:984:3: (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall )
int alt26=2;
int LA26_0 = input.LA(1);
@@ -2714,18 +2717,18 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
else {
NoViableAltException nvae =
- new NoViableAltException("986:3: (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall )", 26, 0, input);
+ new NoViableAltException("984:3: (this_Keyword= ruleKeyword | this_RuleCall= ruleRuleCall )", 26, 0, input);
throw nvae;
}
switch (alt26) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:987:5: this_Keyword= ruleKeyword
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:985:5: this_Keyword= ruleKeyword
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.13/@alternatives/@groups.0/@groups.0/@groups.0" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleKeyword_in_ruleAbstractTerminal2659);
+ pushFollow(FOLLOW_ruleKeyword_in_ruleAbstractTerminal2651);
this_Keyword=ruleKeyword();
_fsp--;
@@ -2737,12 +2740,12 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:997:5: this_RuleCall= ruleRuleCall
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:995:5: this_RuleCall= ruleRuleCall
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.13/@alternatives/@groups.0/@groups.0/@groups.1" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleRuleCall_in_ruleAbstractTerminal2686);
+ pushFollow(FOLLOW_ruleRuleCall_in_ruleAbstractTerminal2678);
this_RuleCall=ruleRuleCall();
_fsp--;
@@ -2760,12 +2763,12 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1007:5: this_ParenthesizedElement= ruleParenthesizedElement
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1005:5: this_ParenthesizedElement= ruleParenthesizedElement
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.13/@alternatives/@groups.0/@groups.1" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleParenthesizedElement_in_ruleAbstractTerminal2714);
+ pushFollow(FOLLOW_ruleParenthesizedElement_in_ruleAbstractTerminal2706);
this_ParenthesizedElement=ruleParenthesizedElement();
_fsp--;
@@ -2783,12 +2786,12 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
break;
case 2 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1017:5: this_CrossReference= ruleCrossReference
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1015:5: this_CrossReference= ruleCrossReference
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.13/@alternatives/@groups.1" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleCrossReference_in_ruleAbstractTerminal2742);
+ pushFollow(FOLLOW_ruleCrossReference_in_ruleAbstractTerminal2734);
this_CrossReference=ruleCrossReference();
_fsp--;
@@ -2820,7 +2823,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleCrossReference
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1030:1: entryRuleCrossReference returns [EObject current=null] : iv_ruleCrossReference= ruleCrossReference EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1028:1: entryRuleCrossReference returns [EObject current=null] : iv_ruleCrossReference= ruleCrossReference EOF ;
public final EObject entryRuleCrossReference() throws RecognitionException {
EObject current = null;
@@ -2828,16 +2831,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1030:56: (iv_ruleCrossReference= ruleCrossReference EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1031:2: iv_ruleCrossReference= ruleCrossReference EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1028:56: (iv_ruleCrossReference= ruleCrossReference EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1029:2: iv_ruleCrossReference= ruleCrossReference EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.14" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleCrossReference_in_entryRuleCrossReference2776);
+ pushFollow(FOLLOW_ruleCrossReference_in_entryRuleCrossReference2768);
iv_ruleCrossReference=ruleCrossReference();
_fsp--;
current =iv_ruleCrossReference;
- match(input,EOF,FOLLOW_EOF_in_entryRuleCrossReference2786);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleCrossReference2778);
}
@@ -2855,7 +2858,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleCrossReference
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1038:1: ruleCrossReference returns [EObject current=null] : ( ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']' ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1036:1: ruleCrossReference returns [EObject current=null] : ( ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']' ) ;
public final EObject ruleCrossReference() throws RecognitionException {
EObject current = null;
@@ -2864,29 +2867,29 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1040:33: ( ( ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']' ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1041:1: ( ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1038:33: ( ( ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']' ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1039:1: ( ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']' )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1041:1: ( ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']' )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1041:2: ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1039:1: ( ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1039:2: ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? ) ']'
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1041:2: ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1041:3: ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1039:2: ( ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )? )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1039:3: ( '[' (lv_type= ruleTypeRef ) ) ( '|' ( ( RULE_ID ) ) )?
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1041:3: ( '[' (lv_type= ruleTypeRef ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1041:4: '[' (lv_type= ruleTypeRef )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1039:3: ( '[' (lv_type= ruleTypeRef ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1039:4: '[' (lv_type= ruleTypeRef )
{
- match(input,34,FOLLOW_34_in_ruleCrossReference2822);
+ match(input,34,FOLLOW_34_in_ruleCrossReference2814);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.14/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null);
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1045:1: (lv_type= ruleTypeRef )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1048:6: lv_type= ruleTypeRef
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1043:1: (lv_type= ruleTypeRef )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1046:6: lv_type= ruleTypeRef
{
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.14/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleTypeRef_in_ruleCrossReference2856);
+ pushFollow(FOLLOW_ruleTypeRef_in_ruleCrossReference2848);
lv_type=ruleTypeRef();
_fsp--;
@@ -2905,7 +2908,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1062:3: ( '|' ( ( RULE_ID ) ) )?
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1060:3: ( '|' ( ( RULE_ID ) ) )?
int alt29=2;
int LA29_0 = input.LA(1);
@@ -2914,14 +2917,14 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
switch (alt29) {
case 1 :
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1062:4: '|' ( ( RULE_ID ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1060:4: '|' ( ( RULE_ID ) )
{
- match(input,24,FOLLOW_24_in_ruleCrossReference2871);
+ match(input,24,FOLLOW_24_in_ruleCrossReference2863);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.14/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null);
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1066:1: ( ( RULE_ID ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1069:3: ( RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1064:1: ( ( RULE_ID ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1067:3: ( RULE_ID )
{
if (current==null) {
@@ -2929,10 +2932,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
associateNodeWithAstElement(currentNode, current);
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1075:1: ( RULE_ID )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1076:2: RULE_ID
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1073:1: ( RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1074:2: RULE_ID
{
- match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleCrossReference2895);
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleCrossReference2887);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.14/@alternatives/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "rule");
@@ -2951,7 +2954,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- match(input,35,FOLLOW_35_in_ruleCrossReference2911);
+ match(input,35,FOLLOW_35_in_ruleCrossReference2903);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.14/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null);
@@ -2976,7 +2979,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleParenthesizedElement
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1090:1: entryRuleParenthesizedElement returns [EObject current=null] : iv_ruleParenthesizedElement= ruleParenthesizedElement EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1088:1: entryRuleParenthesizedElement returns [EObject current=null] : iv_ruleParenthesizedElement= ruleParenthesizedElement EOF ;
public final EObject entryRuleParenthesizedElement() throws RecognitionException {
EObject current = null;
@@ -2984,16 +2987,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1090:62: (iv_ruleParenthesizedElement= ruleParenthesizedElement EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1091:2: iv_ruleParenthesizedElement= ruleParenthesizedElement EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1088:62: (iv_ruleParenthesizedElement= ruleParenthesizedElement EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1089:2: iv_ruleParenthesizedElement= ruleParenthesizedElement EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.15" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleParenthesizedElement_in_entryRuleParenthesizedElement2946);
+ pushFollow(FOLLOW_ruleParenthesizedElement_in_entryRuleParenthesizedElement2938);
iv_ruleParenthesizedElement=ruleParenthesizedElement();
_fsp--;
current =iv_ruleParenthesizedElement;
- match(input,EOF,FOLLOW_EOF_in_entryRuleParenthesizedElement2956);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleParenthesizedElement2948);
}
@@ -3011,7 +3014,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleParenthesizedElement
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1098:1: ruleParenthesizedElement returns [EObject current=null] : ( ( '(' this_Alternatives= ruleAlternatives ) ')' ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1096:1: ruleParenthesizedElement returns [EObject current=null] : ( ( '(' this_Alternatives= ruleAlternatives ) ')' ) ;
public final EObject ruleParenthesizedElement() throws RecognitionException {
EObject current = null;
@@ -3020,23 +3023,23 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1100:33: ( ( ( '(' this_Alternatives= ruleAlternatives ) ')' ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1101:1: ( ( '(' this_Alternatives= ruleAlternatives ) ')' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1098:33: ( ( ( '(' this_Alternatives= ruleAlternatives ) ')' ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1099:1: ( ( '(' this_Alternatives= ruleAlternatives ) ')' )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1101:1: ( ( '(' this_Alternatives= ruleAlternatives ) ')' )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1101:2: ( '(' this_Alternatives= ruleAlternatives ) ')'
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1099:1: ( ( '(' this_Alternatives= ruleAlternatives ) ')' )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1099:2: ( '(' this_Alternatives= ruleAlternatives ) ')'
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1101:2: ( '(' this_Alternatives= ruleAlternatives )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1101:3: '(' this_Alternatives= ruleAlternatives
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1099:2: ( '(' this_Alternatives= ruleAlternatives )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1099:3: '(' this_Alternatives= ruleAlternatives
{
- match(input,36,FOLLOW_36_in_ruleParenthesizedElement2991);
+ match(input,36,FOLLOW_36_in_ruleParenthesizedElement2983);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.15/@alternatives/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null);
currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.15/@alternatives/@abstractTokens.0/@abstractTokens.1" /* xtext::RuleCall */, currentNode);
- pushFollow(FOLLOW_ruleAlternatives_in_ruleParenthesizedElement3013);
+ pushFollow(FOLLOW_ruleAlternatives_in_ruleParenthesizedElement3005);
this_Alternatives=ruleAlternatives();
_fsp--;
@@ -3047,7 +3050,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
}
- match(input,37,FOLLOW_37_in_ruleParenthesizedElement3022);
+ match(input,37,FOLLOW_37_in_ruleParenthesizedElement3014);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.15/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null);
@@ -3072,7 +3075,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleKeyword
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1123:1: entryRuleKeyword returns [EObject current=null] : iv_ruleKeyword= ruleKeyword EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1121:1: entryRuleKeyword returns [EObject current=null] : iv_ruleKeyword= ruleKeyword EOF ;
public final EObject entryRuleKeyword() throws RecognitionException {
EObject current = null;
@@ -3080,16 +3083,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1123:49: (iv_ruleKeyword= ruleKeyword EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1124:2: iv_ruleKeyword= ruleKeyword EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1121:49: (iv_ruleKeyword= ruleKeyword EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1122:2: iv_ruleKeyword= ruleKeyword EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.16" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleKeyword_in_entryRuleKeyword3057);
+ pushFollow(FOLLOW_ruleKeyword_in_entryRuleKeyword3049);
iv_ruleKeyword=ruleKeyword();
_fsp--;
current =iv_ruleKeyword;
- match(input,EOF,FOLLOW_EOF_in_entryRuleKeyword3067);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleKeyword3059);
}
@@ -3107,7 +3110,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleKeyword
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1131:1: ruleKeyword returns [EObject current=null] : (lv_value= RULE_STRING ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1129:1: ruleKeyword returns [EObject current=null] : (lv_value= RULE_STRING ) ;
public final EObject ruleKeyword() throws RecognitionException {
EObject current = null;
@@ -3115,14 +3118,14 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1133:33: ( (lv_value= RULE_STRING ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1134:1: (lv_value= RULE_STRING )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1131:33: ( (lv_value= RULE_STRING ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1132:1: (lv_value= RULE_STRING )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1134:1: (lv_value= RULE_STRING )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1136:6: lv_value= RULE_STRING
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1132:1: (lv_value= RULE_STRING )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1134:6: lv_value= RULE_STRING
{
lv_value=(Token)input.LT(1);
- match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleKeyword3112);
+ match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleKeyword3104);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.16/@alternatives/@terminal" /* xtext::RuleCall */, "value");
@@ -3155,7 +3158,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start entryRuleRuleCall
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1155:1: entryRuleRuleCall returns [EObject current=null] : iv_ruleRuleCall= ruleRuleCall EOF ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1153:1: entryRuleRuleCall returns [EObject current=null] : iv_ruleRuleCall= ruleRuleCall EOF ;
public final EObject entryRuleRuleCall() throws RecognitionException {
EObject current = null;
@@ -3163,16 +3166,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1155:50: (iv_ruleRuleCall= ruleRuleCall EOF )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1156:2: iv_ruleRuleCall= ruleRuleCall EOF
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1153:50: (iv_ruleRuleCall= ruleRuleCall EOF )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1154:2: iv_ruleRuleCall= ruleRuleCall EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.17" /* xtext::ParserRule */, currentNode);
- pushFollow(FOLLOW_ruleRuleCall_in_entryRuleRuleCall3157);
+ pushFollow(FOLLOW_ruleRuleCall_in_entryRuleRuleCall3149);
iv_ruleRuleCall=ruleRuleCall();
_fsp--;
current =iv_ruleRuleCall;
- match(input,EOF,FOLLOW_EOF_in_entryRuleRuleCall3167);
+ match(input,EOF,FOLLOW_EOF_in_entryRuleRuleCall3159);
}
@@ -3190,17 +3193,17 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
// $ANTLR start ruleRuleCall
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1163:1: ruleRuleCall returns [EObject current=null] : ( ( RULE_ID ) ) ;
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1161:1: ruleRuleCall returns [EObject current=null] : ( ( RULE_ID ) ) ;
public final EObject ruleRuleCall() throws RecognitionException {
EObject current = null;
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1165:33: ( ( ( RULE_ID ) ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1166:1: ( ( RULE_ID ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1163:33: ( ( ( RULE_ID ) ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1164:1: ( ( RULE_ID ) )
{
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1166:1: ( ( RULE_ID ) )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1169:3: ( RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1164:1: ( ( RULE_ID ) )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1167:3: ( RULE_ID )
{
if (current==null) {
@@ -3208,10 +3211,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
associateNodeWithAstElement(currentNode, current);
}
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1175:1: ( RULE_ID )
- // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1176:2: RULE_ID
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1173:1: ( RULE_ID )
+ // ./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g:1174:2: RULE_ID
{
- match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRuleCall3215);
+ match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRuleCall3207);
createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.17/@alternatives/@terminal" /* xtext::CrossReference */, "rule");
@@ -3294,68 +3297,68 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractAntlrParser
public static final BitSet FOLLOW_22_in_ruleParserRule1441 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleTypeRef_in_entryRuleTypeRef1476 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleTypeRef1486 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleTypeRef1533 = new BitSet(new long[]{0x0000000000800000L});
- public static final BitSet FOLLOW_23_in_ruleTypeRef1553 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleTypeRef1576 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAlternatives_in_entryRuleAlternatives1622 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleAlternatives1632 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleGroup_in_ruleAlternatives1679 = new BitSet(new long[]{0x0000000001000002L});
- public static final BitSet FOLLOW_24_in_ruleAlternatives1698 = new BitSet(new long[]{0x0000001480000030L});
- public static final BitSet FOLLOW_ruleGroup_in_ruleAlternatives1733 = new BitSet(new long[]{0x0000000001000002L});
- public static final BitSet FOLLOW_ruleGroup_in_entryRuleGroup1774 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleGroup1784 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAbstractToken_in_ruleGroup1831 = new BitSet(new long[]{0x0000001480000032L});
- public static final BitSet FOLLOW_ruleAbstractToken_in_ruleGroup1874 = new BitSet(new long[]{0x0000001480000032L});
- public static final BitSet FOLLOW_ruleAbstractToken_in_entryRuleAbstractToken1915 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleAbstractToken1925 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAssignment_in_ruleAbstractToken1974 = new BitSet(new long[]{0x000000000E000002L});
- public static final BitSet FOLLOW_ruleAction_in_ruleAbstractToken2001 = new BitSet(new long[]{0x000000000E000002L});
- public static final BitSet FOLLOW_ruleAbstractTerminal_in_ruleAbstractToken2029 = new BitSet(new long[]{0x000000000E000002L});
- public static final BitSet FOLLOW_25_in_ruleAbstractToken2052 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_26_in_ruleAbstractToken2067 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_27_in_ruleAbstractToken2083 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAssignment_in_entryRuleAssignment2132 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleAssignment2142 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleAssignment2189 = new BitSet(new long[]{0x0000000070000000L});
- public static final BitSet FOLLOW_28_in_ruleAssignment2223 = new BitSet(new long[]{0x0000001400000030L});
- public static final BitSet FOLLOW_29_in_ruleAssignment2238 = new BitSet(new long[]{0x0000001400000030L});
- public static final BitSet FOLLOW_30_in_ruleAssignment2254 = new BitSet(new long[]{0x0000001400000030L});
- public static final BitSet FOLLOW_ruleAbstractTerminal_in_ruleAssignment2302 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAction_in_entryRuleAction2341 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleAction2351 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_31_in_ruleAction2391 = new BitSet(new long[]{0x0000000100000010L});
- public static final BitSet FOLLOW_32_in_ruleAction2401 = new BitSet(new long[]{0x0000000020000000L});
- public static final BitSet FOLLOW_29_in_ruleAction2410 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_ruleTypeRef_in_ruleAction2447 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_13_in_ruleAction2461 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleAction2483 = new BitSet(new long[]{0x0000000030000000L});
- public static final BitSet FOLLOW_29_in_ruleAction2517 = new BitSet(new long[]{0x0000000100000000L});
- public static final BitSet FOLLOW_28_in_ruleAction2532 = new BitSet(new long[]{0x0000000100000000L});
- public static final BitSet FOLLOW_32_in_ruleAction2555 = new BitSet(new long[]{0x0000000200000000L});
- public static final BitSet FOLLOW_33_in_ruleAction2565 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleAbstractTerminal_in_entryRuleAbstractTerminal2600 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleAbstractTerminal2610 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleKeyword_in_ruleAbstractTerminal2659 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleRuleCall_in_ruleAbstractTerminal2686 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleParenthesizedElement_in_ruleAbstractTerminal2714 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleCrossReference_in_ruleAbstractTerminal2742 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleCrossReference_in_entryRuleCrossReference2776 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleCrossReference2786 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_34_in_ruleCrossReference2822 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_ruleTypeRef_in_ruleCrossReference2856 = new BitSet(new long[]{0x0000000801000000L});
- public static final BitSet FOLLOW_24_in_ruleCrossReference2871 = new BitSet(new long[]{0x0000000000000010L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleCrossReference2895 = new BitSet(new long[]{0x0000000800000000L});
- public static final BitSet FOLLOW_35_in_ruleCrossReference2911 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleParenthesizedElement_in_entryRuleParenthesizedElement2946 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleParenthesizedElement2956 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_36_in_ruleParenthesizedElement2991 = new BitSet(new long[]{0x0000001480000030L});
- public static final BitSet FOLLOW_ruleAlternatives_in_ruleParenthesizedElement3013 = new BitSet(new long[]{0x0000002000000000L});
- public static final BitSet FOLLOW_37_in_ruleParenthesizedElement3022 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleKeyword_in_entryRuleKeyword3057 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleKeyword3067 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_STRING_in_ruleKeyword3112 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ruleRuleCall_in_entryRuleRuleCall3157 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_EOF_in_entryRuleRuleCall3167 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RULE_ID_in_ruleRuleCall3215 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleTypeRef1536 = new BitSet(new long[]{0x0000000000800000L});
+ public static final BitSet FOLLOW_23_in_ruleTypeRef1549 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleTypeRef1575 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAlternatives_in_entryRuleAlternatives1614 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAlternatives1624 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleGroup_in_ruleAlternatives1671 = new BitSet(new long[]{0x0000000001000002L});
+ public static final BitSet FOLLOW_24_in_ruleAlternatives1690 = new BitSet(new long[]{0x0000001480000030L});
+ public static final BitSet FOLLOW_ruleGroup_in_ruleAlternatives1725 = new BitSet(new long[]{0x0000000001000002L});
+ public static final BitSet FOLLOW_ruleGroup_in_entryRuleGroup1766 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleGroup1776 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAbstractToken_in_ruleGroup1823 = new BitSet(new long[]{0x0000001480000032L});
+ public static final BitSet FOLLOW_ruleAbstractToken_in_ruleGroup1866 = new BitSet(new long[]{0x0000001480000032L});
+ public static final BitSet FOLLOW_ruleAbstractToken_in_entryRuleAbstractToken1907 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAbstractToken1917 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAssignment_in_ruleAbstractToken1966 = new BitSet(new long[]{0x000000000E000002L});
+ public static final BitSet FOLLOW_ruleAction_in_ruleAbstractToken1993 = new BitSet(new long[]{0x000000000E000002L});
+ public static final BitSet FOLLOW_ruleAbstractTerminal_in_ruleAbstractToken2021 = new BitSet(new long[]{0x000000000E000002L});
+ public static final BitSet FOLLOW_25_in_ruleAbstractToken2044 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_26_in_ruleAbstractToken2059 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_27_in_ruleAbstractToken2075 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAssignment_in_entryRuleAssignment2124 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAssignment2134 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleAssignment2181 = new BitSet(new long[]{0x0000000070000000L});
+ public static final BitSet FOLLOW_28_in_ruleAssignment2215 = new BitSet(new long[]{0x0000001400000030L});
+ public static final BitSet FOLLOW_29_in_ruleAssignment2230 = new BitSet(new long[]{0x0000001400000030L});
+ public static final BitSet FOLLOW_30_in_ruleAssignment2246 = new BitSet(new long[]{0x0000001400000030L});
+ public static final BitSet FOLLOW_ruleAbstractTerminal_in_ruleAssignment2294 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAction_in_entryRuleAction2333 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAction2343 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_31_in_ruleAction2383 = new BitSet(new long[]{0x0000000100000010L});
+ public static final BitSet FOLLOW_32_in_ruleAction2393 = new BitSet(new long[]{0x0000000020000000L});
+ public static final BitSet FOLLOW_29_in_ruleAction2402 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_ruleTypeRef_in_ruleAction2439 = new BitSet(new long[]{0x0000000000002000L});
+ public static final BitSet FOLLOW_13_in_ruleAction2453 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleAction2475 = new BitSet(new long[]{0x0000000030000000L});
+ public static final BitSet FOLLOW_29_in_ruleAction2509 = new BitSet(new long[]{0x0000000100000000L});
+ public static final BitSet FOLLOW_28_in_ruleAction2524 = new BitSet(new long[]{0x0000000100000000L});
+ public static final BitSet FOLLOW_32_in_ruleAction2547 = new BitSet(new long[]{0x0000000200000000L});
+ public static final BitSet FOLLOW_33_in_ruleAction2557 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleAbstractTerminal_in_entryRuleAbstractTerminal2592 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleAbstractTerminal2602 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleKeyword_in_ruleAbstractTerminal2651 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRuleCall_in_ruleAbstractTerminal2678 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleParenthesizedElement_in_ruleAbstractTerminal2706 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleCrossReference_in_ruleAbstractTerminal2734 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleCrossReference_in_entryRuleCrossReference2768 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleCrossReference2778 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_34_in_ruleCrossReference2814 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_ruleTypeRef_in_ruleCrossReference2848 = new BitSet(new long[]{0x0000000801000000L});
+ public static final BitSet FOLLOW_24_in_ruleCrossReference2863 = new BitSet(new long[]{0x0000000000000010L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleCrossReference2887 = new BitSet(new long[]{0x0000000800000000L});
+ public static final BitSet FOLLOW_35_in_ruleCrossReference2903 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleParenthesizedElement_in_entryRuleParenthesizedElement2938 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleParenthesizedElement2948 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_36_in_ruleParenthesizedElement2983 = new BitSet(new long[]{0x0000001480000030L});
+ public static final BitSet FOLLOW_ruleAlternatives_in_ruleParenthesizedElement3005 = new BitSet(new long[]{0x0000002000000000L});
+ public static final BitSet FOLLOW_37_in_ruleParenthesizedElement3014 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleKeyword_in_entryRuleKeyword3049 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleKeyword3059 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_STRING_in_ruleKeyword3104 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_ruleRuleCall_in_entryRuleRuleCall3149 = new BitSet(new long[]{0x0000000000000000L});
+ public static final BitSet FOLLOW_EOF_in_entryRuleRuleCall3159 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_RULE_ID_in_ruleRuleCall3207 = new BitSet(new long[]{0x0000000000000002L});
} \ No newline at end of file
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage__.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage__.g
index 0c09f8f..ce523dc 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage__.g
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage__.g
@@ -35,25 +35,25 @@ T35 : ']' ;
T36 : '(' ;
T37 : ')' ;
-// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1186
+// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1184
RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
-// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1188
+// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1186
RULE_INT : ('0'..'9')+;
-// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1190
+// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1188
RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'';
-// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1192
+// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1190
RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;};
-// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1194
+// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1192
RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;};
-// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1196
+// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1194
RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;};
-// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1198
+// $ANTLR src "./src-gen/org/eclipse/xtext/parser/internal/InternalXtextGrammarTestLanguage.g" 1196
RULE_ANY_OTHER : .;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractComplexReconstrTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractComplexReconstrTestLanguageRuntimeConfig.java
index 5b09ace..08fef97 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractComplexReconstrTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractComplexReconstrTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractComplexReconstrTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.parsetree.reconstr.services.ComplexReconstrTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.parsetree.reconstr.services.ComplexReconstrTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.parsetree.reconstr.services.ComplexReconstrTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractComplexReconstrTestLanguageRuntimeConfig extends A
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.parsetree.reconstr.IComplexReconstrTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractSimpleReconstrTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractSimpleReconstrTestLanguageRuntimeConfig.java
index eb2aa37..9c62ec7 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractSimpleReconstrTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/AbstractSimpleReconstrTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractSimpleReconstrTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.parsetree.reconstr.services.SimpleReconstrTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.parsetree.reconstr.services.SimpleReconstrTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.parsetree.reconstr.services.SimpleReconstrTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractSimpleReconstrTestLanguageRuntimeConfig extends Ab
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.parsetree.reconstr.ISimpleReconstrTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/ComplexReconstrTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/ComplexReconstrTestLanguage.xmi
index dd9b2c6..bbdb5f9 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/ComplexReconstrTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/ComplexReconstrTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -8,14 +8,18 @@
<idElements>ComplexReconstrTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="complexrewritetest" nsURI="http://complex/rewrite/test"/>
<rules xsi:type="xtext:ParserRule" name="Op">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:RuleCall" rule="//@rules.1"/>
<abstractTokens xsi:type="xtext:Alternatives" cardinality="*">
<groups xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Action" feature="addOperands" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Add"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//Add"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="+"/>
</abstractTokens>
@@ -26,7 +30,9 @@
<groups xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Action" feature="minusOperands" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Minus"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//Minus"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="-"/>
</abstractTokens>
@@ -38,13 +44,18 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Term">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.2"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.3"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Atom">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//Atom"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
<rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/>
@@ -52,7 +63,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Parens">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -67,7 +80,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TrickyA">
- <type metamodel="//@metamodelDeclarations.0" name="TypeA1"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//TypeA1"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -84,13 +99,17 @@
<abstractTokens xsi:type="xtext:Alternatives" cardinality="?">
<groups xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Action" feature="x" operator="=">
- <typeName metamodel="//@metamodelDeclarations.0" name="TypeB"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//TypeB"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="x"/>
</groups>
<groups xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Action" feature="x" operator="=">
- <typeName metamodel="//@metamodelDeclarations.0" name="TypeC"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//TypeC"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="y"/>
</groups>
@@ -104,7 +123,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TrickyA1">
- <type metamodel="//@metamodelDeclarations.0" name="TypeD"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//TypeD"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="name" operator="+=">
<terminal xsi:type="xtext:RuleCall">
<rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/>
@@ -112,6 +133,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TrickyB">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//TrickyB"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="TB"/>
@@ -136,6 +160,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TrickyC">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//TrickyC"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -149,27 +176,36 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Group" cardinality="?">
<abstractTokens xsi:type="xtext:Action" feature="x" operator="=">
- <typeName metamodel="//@metamodelDeclarations.0" name="C1"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//C1"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="x"/>
</abstractTokens>
</abstractTokens>
<abstractTokens xsi:type="xtext:Group" cardinality="?">
<abstractTokens xsi:type="xtext:Action" feature="y" operator="=">
- <typeName metamodel="//@metamodelDeclarations.0" name="C2"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//C2"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="y"/>
</abstractTokens>
</abstractTokens>
<abstractTokens xsi:type="xtext:Group" cardinality="?">
<abstractTokens xsi:type="xtext:Action" feature="z" operator="=">
- <typeName metamodel="//@metamodelDeclarations.0" name="C3"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//C3"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="z"/>
</abstractTokens>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TrickyD">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//TrickyD"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -215,6 +251,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TrickyE">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//TrickyE"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -256,6 +295,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TrickyF">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://complex/rewrite/test#//TrickyF"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="TF"/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/SimpleReconstrTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/SimpleReconstrTestLanguage.xmi
index 13679f8..dfaefc9 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/SimpleReconstrTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/SimpleReconstrTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -8,12 +8,16 @@
<idElements>SimpleReconstrTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="simplerewritetest" nsURI="http://simple/rewrite/test"/>
<rules xsi:type="xtext:ParserRule" name="Op">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:RuleCall" rule="//@rules.1"/>
<abstractTokens xsi:type="xtext:Group" cardinality="*">
<abstractTokens xsi:type="xtext:Action" feature="values" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Op"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//Op"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="values" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
@@ -22,7 +26,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Term">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Alternatives">
@@ -44,6 +50,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Atom">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//Atom"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
<rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/>
@@ -51,7 +60,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Parens">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -66,6 +77,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TwoNumbers">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//TwoNumbers"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" feature="num1" operator="=">
@@ -90,6 +104,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="ManyStrings">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//ManyStrings"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="="/>
@@ -107,6 +124,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Type">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//Type"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -121,12 +141,17 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="extends" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Type"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//Type"/>
+ </type>
</terminal>
</abstractTokens>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Ref2">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//Ref2"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="#2"/>
<abstractTokens xsi:type="xtext:Assignment" feature="ref2" operator="=">
@@ -143,6 +168,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Spare">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/rewrite/test#//Spare"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="#3"/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/XtextGrammarTestLanguageParseTreeConstructor.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/XtextGrammarTestLanguageParseTreeConstructor.java
index e6ece1c..6511e29 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/XtextGrammarTestLanguageParseTreeConstructor.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/XtextGrammarTestLanguageParseTreeConstructor.java
@@ -1685,12 +1685,12 @@ protected class ParserRule_1_Keyword extends KeywordToken {
/************ begin Rule TypeRef ****************
*
- * TypeRef : ( alias = ID '::' ) ? name = ID ;
+ * TypeRef : ( metamodel = [ AbstractMetamodelDeclaration ] '::' ) ? type = [ EClassifier ] ;
*
**/
-// ( alias = ID '::' ) ? name = ID
+// ( metamodel = [ AbstractMetamodelDeclaration ] '::' ) ? type = [ EClassifier ]
protected class TypeRef_Group extends GroupToken {
public TypeRef_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -1702,7 +1702,7 @@ protected class TypeRef_Group extends GroupToken {
}
protected Solution createSolution() {
- Solution s1 = new TypeRef_1_Assignment_name(current, this).firstSolution();
+ Solution s1 = new TypeRef_1_Assignment_type(current, this).firstSolution();
while(s1 != null) {
Solution s2 = new TypeRef_0_Group(s1.getCurrent(), s1.getPredecessor()).firstSolution();
if(s2 == null) {
@@ -1718,7 +1718,7 @@ protected class TypeRef_Group extends GroupToken {
}
}
-// ( alias = ID '::' ) ?
+// ( metamodel = [ AbstractMetamodelDeclaration ] '::' ) ?
protected class TypeRef_0_Group extends GroupToken {
public TypeRef_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -1732,7 +1732,7 @@ protected class TypeRef_0_Group extends GroupToken {
protected Solution createSolution() {
Solution s1 = new TypeRef_0_1_Keyword(current, this).firstSolution();
while(s1 != null) {
- Solution s2 = new TypeRef_0_0_Assignment_alias(s1.getCurrent(), s1.getPredecessor()).firstSolution();
+ Solution s2 = new TypeRef_0_0_Assignment_metamodel(s1.getCurrent(), s1.getPredecessor()).firstSolution();
if(s2 == null) {
s1 = s1.getPredecessor().nextSolution(this);
if(s1 == null) return null;
@@ -1746,24 +1746,27 @@ protected class TypeRef_0_Group extends GroupToken {
}
}
-// alias = ID
-protected class TypeRef_0_0_Assignment_alias extends AssignmentToken {
+// metamodel = [ AbstractMetamodelDeclaration ]
+protected class TypeRef_0_0_Assignment_metamodel extends AssignmentToken {
- public TypeRef_0_0_Assignment_alias(IInstanceDescription curr, AbstractToken pred) {
+ public TypeRef_0_0_Assignment_metamodel(IInstanceDescription curr, AbstractToken pred) {
super(curr, pred, !IS_MANY, IS_REQUIRED);
}
public Assignment getGrammarElement() {
- return XtextGrammarTestLanguageGrammarAccess.INSTANCE.prTypeRef().ele00AssignmentAlias();
+ return XtextGrammarTestLanguageGrammarAccess.INSTANCE.prTypeRef().ele00AssignmentMetamodel();
}
protected Solution createSolution() {
- if((value = current.getConsumable("alias",!IS_REQUIRED)) == null) return null;
- IInstanceDescription obj = current.cloneAndConsume("alias");
- if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
- type = AssignmentType.LRC;
- element = XtextGrammarTestLanguageGrammarAccess.INSTANCE.prTypeRef().ele000LexerRuleCallID();
- return new Solution(obj);
+ if((value = current.getConsumable("metamodel",!IS_REQUIRED)) == null) return null;
+ IInstanceDescription obj = current.cloneAndConsume("metamodel");
+ if(value instanceof EObject) { // xtext::CrossReference
+ IInstanceDescription param = getDescr((EObject)value);
+ if(param.isInstanceOf("AbstractMetamodelDeclaration")) {
+ type = AssignmentType.CR;
+ element = XtextGrammarTestLanguageGrammarAccess.INSTANCE.prTypeRef().ele000CrossReferenceAbstractMetamodelDeclaration();
+ return new Solution(obj);
+ }
}
return null;
}
@@ -1782,24 +1785,27 @@ protected class TypeRef_0_1_Keyword extends KeywordToken {
}
-// name = ID
-protected class TypeRef_1_Assignment_name extends AssignmentToken {
+// type = [ EClassifier ]
+protected class TypeRef_1_Assignment_type extends AssignmentToken {
- public TypeRef_1_Assignment_name(IInstanceDescription curr, AbstractToken pred) {
+ public TypeRef_1_Assignment_type(IInstanceDescription curr, AbstractToken pred) {
super(curr, pred, !IS_MANY, IS_REQUIRED);
}
public Assignment getGrammarElement() {
- return XtextGrammarTestLanguageGrammarAccess.INSTANCE.prTypeRef().ele1AssignmentName();
+ return XtextGrammarTestLanguageGrammarAccess.INSTANCE.prTypeRef().ele1AssignmentType();
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
- IInstanceDescription obj = current.cloneAndConsume("name");
- if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
- type = AssignmentType.LRC;
- element = XtextGrammarTestLanguageGrammarAccess.INSTANCE.prTypeRef().ele10LexerRuleCallID();
- return new Solution(obj);
+ if((value = current.getConsumable("type",IS_REQUIRED)) == null) return null;
+ IInstanceDescription obj = current.cloneAndConsume("type");
+ if(value instanceof EObject) { // xtext::CrossReference
+ IInstanceDescription param = getDescr((EObject)value);
+ if(param.isInstanceOf("EClassifier")) {
+ type = AssignmentType.CR;
+ element = XtextGrammarTestLanguageGrammarAccess.INSTANCE.prTypeRef().ele10CrossReferenceEClassifier();
+ return new Solution(obj);
+ }
}
return null;
}
@@ -2286,7 +2292,7 @@ protected class AbstractToken_1_Assignment_cardinality extends AssignmentToken
/************ begin Rule Assignment ****************
*
- * Assignment returns Assignment : feature = ID operator = ( '+=' | '=' | '?=' ) terminal = AbstractTerminal ;
+ * Assignment : feature = ID operator = ( '+=' | '=' | '?=' ) terminal = AbstractTerminal ;
*
**/
@@ -2437,7 +2443,7 @@ protected class Assignment_1_Assignment_terminal extends AssignmentToken {
/************ begin Rule Action ****************
*
- * Action returns Action : '{' ( 'current' '=' ) ? typeName = TypeRef '.' feature = ID operator = ( '=' | '+=' ) 'current' '}' ;
+ * Action : '{' ( 'current' '=' ) ? typeName = TypeRef '.' feature = ID operator = ( '=' | '+=' ) 'current' '}' ;
*
**/
@@ -2976,12 +2982,12 @@ protected class AbstractTerminal_1_RuleCall_CrossReference extends RuleCallToken
/************ begin Rule CrossReference ****************
*
- * CrossReference : '[' type = TypeRef ( '|' rule = [ LexerRule ] ) ? ']' ;
+ * CrossReference : '[' type = TypeRef ( '|' rule = [ AbstractRule ] ) ? ']' ;
*
**/
-// '[' type = TypeRef ( '|' rule = [ LexerRule ] ) ? ']'
+// '[' type = TypeRef ( '|' rule = [ AbstractRule ] ) ? ']'
protected class CrossReference_Group extends GroupToken {
public CrossReference_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -3009,7 +3015,7 @@ protected class CrossReference_Group extends GroupToken {
}
}
-// '[' type = TypeRef ( '|' rule = [ LexerRule ] ) ?
+// '[' type = TypeRef ( '|' rule = [ AbstractRule ] ) ?
protected class CrossReference_0_Group extends GroupToken {
public CrossReference_0_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -3106,7 +3112,7 @@ protected class CrossReference_0_0_1_Assignment_type extends AssignmentToken {
}
-// ( '|' rule = [ LexerRule ] ) ?
+// ( '|' rule = [ AbstractRule ] ) ?
protected class CrossReference_0_1_Group extends GroupToken {
public CrossReference_0_1_Group(IInstanceDescription curr, AbstractToken pred) {
@@ -3146,7 +3152,7 @@ protected class CrossReference_0_1_0_Keyword extends KeywordToken {
}
}
-// rule = [ LexerRule ]
+// rule = [ AbstractRule ]
protected class CrossReference_0_1_1_Assignment_rule extends AssignmentToken {
public CrossReference_0_1_1_Assignment_rule(IInstanceDescription curr, AbstractToken pred) {
@@ -3162,9 +3168,9 @@ protected class CrossReference_0_1_1_Assignment_rule extends AssignmentToken {
IInstanceDescription obj = current.cloneAndConsume("rule");
if(value instanceof EObject) { // xtext::CrossReference
IInstanceDescription param = getDescr((EObject)value);
- if(param.isInstanceOf("LexerRule")) {
+ if(param.isInstanceOf("AbstractRule")) {
type = AssignmentType.CR;
- element = XtextGrammarTestLanguageGrammarAccess.INSTANCE.prCrossReference().ele0110CrossReferenceLexerRule();
+ element = XtextGrammarTestLanguageGrammarAccess.INSTANCE.prCrossReference().ele0110CrossReferenceAbstractRule();
return new Solution(obj);
}
}
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/complexrewritetest.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/complexrewritetest.ecore
index 2dc4629..4ba654b 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/complexrewritetest.ecore
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/complexrewritetest.ecore
@@ -5,12 +5,6 @@
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Add" eSuperTypes="//Expression">
- <eStructuralFeatures xsi:type="ecore:EReference" name="addOperands" upperBound="-1" eType="//Expression" containment="true"/>
- </eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Minus" eSuperTypes="//Expression">
- <eStructuralFeatures xsi:type="ecore:EReference" name="minusOperands" upperBound="-1" eType="//Expression" containment="true"/>
- </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Atom" eSuperTypes="//Expression">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -22,12 +16,6 @@
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="TypeB" eSuperTypes="//TypeA1">
- <eStructuralFeatures xsi:type="ecore:EReference" name="x" eType="//TypeD" containment="true"/>
- </eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="TypeC" eSuperTypes="//TypeA1">
- <eStructuralFeatures xsi:type="ecore:EReference" name="x" eType="//TypeD" containment="true"/>
- </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TrickyB">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -41,15 +29,6 @@
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="C1" eSuperTypes="//TrickyC">
- <eStructuralFeatures xsi:type="ecore:EReference" name="x" eType="//TrickyC" containment="true"/>
- </eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="C2" eSuperTypes="//TrickyC">
- <eStructuralFeatures xsi:type="ecore:EReference" name="y" eType="//C1" containment="true"/>
- </eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="C3" eSuperTypes="//TrickyC">
- <eStructuralFeatures xsi:type="ecore:EReference" name="z" eType="//C2" containment="true"/>
- </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TrickyD">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" upperBound="-1">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
@@ -80,4 +59,25 @@
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
</eStructuralFeatures>
</eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Add" eSuperTypes="//Expression">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="addOperands" upperBound="-1" eType="//Expression" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Minus" eSuperTypes="//Expression">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="minusOperands" upperBound="-1" eType="//Expression" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TypeB" eSuperTypes="//TypeA1">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="x" eType="//TypeD" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TypeC" eSuperTypes="//TypeA1">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="x" eType="//TypeD" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="C1" eSuperTypes="//TrickyC">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="x" eType="//TrickyC" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="C2" eSuperTypes="//TrickyC">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="y" eType="//C1" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="C3" eSuperTypes="//TrickyC">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="z" eType="//C2" containment="true"/>
+ </eClassifiers>
</ecore:EPackage>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageLexer.java
index ada7c7f..fc2ef22 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguage.g 2008-12-08 18:02:54
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguage.g 2008-12-10 12:15:40
package org.eclipse.xtext.parsetree.reconstr.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageParser.java
index 1e633a2..2c6b5a9 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguage.g 2008-12-08 18:02:54
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalComplexReconstrTestLanguage.g 2008-12-10 12:15:40
package org.eclipse.xtext.parsetree.reconstr.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageLexer.java
index fde873b..14fd12b 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguage.g 2008-12-08 18:02:53
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguage.g 2008-12-10 12:15:39
package org.eclipse.xtext.parsetree.reconstr.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageParser.java
index 4232a5b..57d621c 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguage.g 2008-12-08 18:02:53
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/reconstr/parser/internal/InternalSimpleReconstrTestLanguage.g 2008-12-10 12:15:39
package org.eclipse.xtext.parsetree.reconstr.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/ComplexReconstrTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/ComplexReconstrTestLanguageGrammarAccess.java
index f8d91e9..4ae7b25 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/ComplexReconstrTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/ComplexReconstrTestLanguageGrammarAccess.java
@@ -148,7 +148,7 @@ public class ComplexReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// name = ID
public Assignment eleAssignmentName() {
- return (cAssignmentName != null) ? cAssignmentName : (cAssignmentName = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentName != null) ? cAssignmentName : (cAssignmentName = (Assignment)getRule().eContents().get(1));
}
// ID
@@ -366,7 +366,7 @@ public class ComplexReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// 'TB' ( name = ID type += INT ) ? ( type += ID ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'TB' ( name = ID type += INT ) ?
@@ -441,7 +441,7 @@ public class ComplexReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// 'TC' name = ID ( { current = C1 . x = current } 'x' ) ? ( { current = C2 . y = current } 'y' ) ? ( { current = C3 . z = current } 'z' ) ?
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'TC' name = ID ( { current = C1 . x = current } 'x' ) ? ( { current = C2 . y = current } 'y' ) ?
@@ -549,7 +549,7 @@ public class ComplexReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// 'TD' ( name += INT foo = STRING type += ID ) ? ( name += INT type += ID ) ? ( type += ID ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'TD' ( name += INT foo = STRING type += ID ) ? ( name += INT type += ID ) ?
@@ -671,7 +671,7 @@ public class ComplexReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// 'TE' ( name += INT foo += STRING type += ID ) * 'x' ( name += INT type += ID ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'TE' ( name += INT foo += STRING type += ID ) * 'x'
@@ -783,7 +783,7 @@ public class ComplexReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// 'TF' ( name += ID type += INT ) * ( name += ID | type += INT )
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'TF' ( name += ID type += INT ) *
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/SimpleReconstrTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/SimpleReconstrTestLanguageGrammarAccess.java
index 3b01ea8..50ed4a9 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/SimpleReconstrTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/services/SimpleReconstrTestLanguageGrammarAccess.java
@@ -154,7 +154,7 @@ public class SimpleReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// name = ID
public Assignment eleAssignmentName() {
- return (cAssignmentName != null) ? cAssignmentName : (cAssignmentName = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentName != null) ? cAssignmentName : (cAssignmentName = (Assignment)getRule().eContents().get(1));
}
// ID
@@ -240,7 +240,7 @@ public class SimpleReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// num1 = INT num2 = INT ( '#' num3 += INT ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// num1 = INT num2 = INT
@@ -306,7 +306,7 @@ public class SimpleReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// '=' ( str1 += STRING ) * str2 += STRING
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// '=' ( str1 += STRING ) *
@@ -359,7 +359,7 @@ public class SimpleReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// 'type' name = ID 'extends' ^extends = [ Type ]
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'type' name = ID 'extends'
@@ -421,7 +421,7 @@ public class SimpleReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// '#2' ref2 = ( 'mykeyword1' | STRING | 'mykeyword2' )
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// '#2'
@@ -479,7 +479,7 @@ public class SimpleReconstrTestLanguageGrammarAccess extends BaseEPackageAccess
// '#3' id += ID ( '.' id += ID ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// '#3' id += ID
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/simplerewritetest.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/simplerewritetest.ecore
index 4e03d68..50fbbf8 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/simplerewritetest.ecore
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/reconstr/simplerewritetest.ecore
@@ -5,9 +5,6 @@
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Op" eSuperTypes="//Expression">
- <eStructuralFeatures xsi:type="ecore:EReference" name="values" upperBound="-1" eType="//Expression" containment="true"/>
- </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Atom" eSuperTypes="//Expression">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -48,4 +45,7 @@
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Op" eSuperTypes="//Expression">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="values" upperBound="-1" eType="//Expression" containment="true"/>
+ </eClassifiers>
</ecore:EPackage>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/AbstractTransientValuesTestRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/AbstractTransientValuesTestRuntimeConfig.java
index 6e4edbc..e3d8a06 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/AbstractTransientValuesTestRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/AbstractTransientValuesTestRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractTransientValuesTestRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.parsetree.transientvalues.services.TransientValuesTestGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.parsetree.transientvalues.services.TransientValuesTestMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.parsetree.transientvalues.services.TransientValuesTestGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractTransientValuesTestRuntimeConfig extends AbstractS
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.parsetree.transientvalues.ITransientValuesTest.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/TransientValuesTest.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/TransientValuesTest.xmi
index 342885a..344d363 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/TransientValuesTest.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/TransientValuesTest.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -8,6 +8,9 @@
<idElements>TransientValuesTest</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="transientvaluestest" nsURI="http://simple/transientvaluestest"/>
<rules xsi:type="xtext:ParserRule" name="Root">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/transientvaluestest#//Root"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="test"/>
<abstractTokens xsi:type="xtext:Alternatives">
@@ -20,6 +23,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TestRequired">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/transientvaluestest#//TestRequired"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="required"/>
@@ -37,6 +43,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TestOptional">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/transientvaluestest#//TestOptional"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="optional"/>
@@ -57,6 +66,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TestList">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://simple/transientvaluestest#//TestList"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="list"/>
<abstractTokens xsi:type="xtext:Assignment" cardinality="*" feature="item" operator="+=">
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestLexer.java
index 682f23b..4e9b9b9 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTest.g 2008-12-08 18:03:02
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTest.g 2008-12-10 12:15:47
package org.eclipse.xtext.parsetree.transientvalues.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestParser.java
index f4af952..ac50a10 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTestParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTest.g 2008-12-08 18:03:02
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/parsetree/transientvalues/parser/internal/InternalTransientValuesTest.g 2008-12-10 12:15:47
package org.eclipse.xtext.parsetree.transientvalues.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/services/TransientValuesTestGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/services/TransientValuesTestGrammarAccess.java
index 1ccab43..a339185 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/services/TransientValuesTestGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parsetree/transientvalues/services/TransientValuesTestGrammarAccess.java
@@ -27,7 +27,7 @@ public class TransientValuesTestGrammarAccess extends BaseEPackageAccess impleme
// 'test' ( TestRequired | TestOptional | TestList )
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'test'
@@ -78,7 +78,7 @@ public class TransientValuesTestGrammarAccess extends BaseEPackageAccess impleme
// 'required' required1 = INT required2 = INT
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'required' required1 = INT
@@ -131,7 +131,7 @@ public class TransientValuesTestGrammarAccess extends BaseEPackageAccess impleme
// 'optional' ( opt1 = INT ) ? ( ':' opt2 = INT ) ?
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'optional' ( opt1 = INT ) ?
@@ -189,7 +189,7 @@ public class TransientValuesTestGrammarAccess extends BaseEPackageAccess impleme
// 'list' ( item += INT ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'list'
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageGrammarAccess.java
index b126628..93ac29b 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageGrammarAccess.java
@@ -43,12 +43,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// Grammar : ( abstract ?= 'abstract language' | 'language' ) idElements += ID ( '.' idElements += ID ) * ( 'extends' superGrammarIdElements += ID ( '.' superGrammarIdElements += ID ) * ) ? ( metamodelDeclarations += AbstractMetamodelDeclaration ) * ( rules += AbstractRule ) + ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(1));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(2));
}
// ( abstract ?= 'abstract language' | 'language' ) idElements += ID ( '.' idElements += ID ) * ( 'extends' superGrammarIdElements += ID ( '.' superGrammarIdElements += ID ) * ) ? ( metamodelDeclarations += AbstractMetamodelDeclaration ) * ( rules += AbstractRule ) +
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// ( abstract ?= 'abstract language' | 'language' ) idElements += ID ( '.' idElements += ID ) * ( 'extends' superGrammarIdElements += ID ( '.' superGrammarIdElements += ID ) * ) ? ( metamodelDeclarations += AbstractMetamodelDeclaration ) *
@@ -195,12 +195,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// AbstractRule : LexerRule | ParserRule ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(2));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(3));
}
// LexerRule | ParserRule
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// LexerRule
@@ -222,12 +222,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// AbstractMetamodelDeclaration : GeneratedMetamodel | ReferencedMetamodel ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(3));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(4));
}
// GeneratedMetamodel | ReferencedMetamodel
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// GeneratedMetamodel
@@ -258,12 +258,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// GeneratedMetamodel : 'generate' name = ID nsURI = STRING ( 'as' alias = ID ) ? ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(4));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(5));
}
// 'generate' name = ID nsURI = STRING ( 'as' alias = ID ) ?
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'generate' name = ID nsURI = STRING
@@ -336,12 +336,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// ReferencedMetamodel : 'import' uri = STRING ( 'as' alias = ID ) ? ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(5));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(6));
}
// 'import' uri = STRING ( 'as' alias = ID ) ?
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'import' uri = STRING
@@ -408,12 +408,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// LexerRule : ( 'native' | 'lexer' ) name = ID ( 'returns' type = TypeRef ) ? ':' body = STRING ';' ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(6));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(7));
}
// ( 'native' | 'lexer' ) name = ID ( 'returns' type = TypeRef ) ? ':' body = STRING ';'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// ( 'native' | 'lexer' ) name = ID ( 'returns' type = TypeRef ) ? ':' body = STRING
@@ -521,12 +521,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// ParserRule : name = ID ( 'returns' type = TypeRef ) ? ':' alternatives = Alternatives ';' ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(7));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(8));
}
// name = ID ( 'returns' type = TypeRef ) ? ':' alternatives = Alternatives ';'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// name = ID ( 'returns' type = TypeRef ) ? ':' alternatives = Alternatives
@@ -599,35 +599,35 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
private ParserRule rule;
private Group cGroup;
private Group c0Group;
- private Assignment c00AssignmentAlias;
- private RuleCall c000LexerRuleCallID;
+ private Assignment c00AssignmentMetamodel;
+ private CrossReference c000CrossReferenceAbstractMetamodelDeclaration;
private Keyword c01Keyword;
- private Assignment c1AssignmentName;
- private RuleCall c10LexerRuleCallID;
+ private Assignment c1AssignmentType;
+ private CrossReference c10CrossReferenceEClassifier;
- // TypeRef : ( alias = ID '::' ) ? name = ID ;
+ // TypeRef : ( metamodel = [ AbstractMetamodelDeclaration ] '::' ) ? type = [ EClassifier ] ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(8));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(9));
}
- // ( alias = ID '::' ) ? name = ID
+ // ( metamodel = [ AbstractMetamodelDeclaration ] '::' ) ? type = [ EClassifier ]
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
- // ( alias = ID '::' ) ?
+ // ( metamodel = [ AbstractMetamodelDeclaration ] '::' ) ?
public Group ele0Group() {
return (c0Group != null) ? c0Group : (c0Group = (Group)eleGroup().eContents().get(0));
}
- // alias = ID
- public Assignment ele00AssignmentAlias() {
- return (c00AssignmentAlias != null) ? c00AssignmentAlias : (c00AssignmentAlias = (Assignment)ele0Group().eContents().get(0));
+ // metamodel = [ AbstractMetamodelDeclaration ]
+ public Assignment ele00AssignmentMetamodel() {
+ return (c00AssignmentMetamodel != null) ? c00AssignmentMetamodel : (c00AssignmentMetamodel = (Assignment)ele0Group().eContents().get(0));
}
- // ID
- public RuleCall ele000LexerRuleCallID() {
- return (c000LexerRuleCallID != null) ? c000LexerRuleCallID : (c000LexerRuleCallID = (RuleCall)ele00AssignmentAlias().eContents().get(0));
+ // [ AbstractMetamodelDeclaration ]
+ public CrossReference ele000CrossReferenceAbstractMetamodelDeclaration() {
+ return (c000CrossReferenceAbstractMetamodelDeclaration != null) ? c000CrossReferenceAbstractMetamodelDeclaration : (c000CrossReferenceAbstractMetamodelDeclaration = (CrossReference)ele00AssignmentMetamodel().eContents().get(0));
}
// '::'
@@ -635,14 +635,14 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
return (c01Keyword != null) ? c01Keyword : (c01Keyword = (Keyword)ele0Group().eContents().get(1));
}
- // name = ID
- public Assignment ele1AssignmentName() {
- return (c1AssignmentName != null) ? c1AssignmentName : (c1AssignmentName = (Assignment)eleGroup().eContents().get(1));
+ // type = [ EClassifier ]
+ public Assignment ele1AssignmentType() {
+ return (c1AssignmentType != null) ? c1AssignmentType : (c1AssignmentType = (Assignment)eleGroup().eContents().get(1));
}
- // ID
- public RuleCall ele10LexerRuleCallID() {
- return (c10LexerRuleCallID != null) ? c10LexerRuleCallID : (c10LexerRuleCallID = (RuleCall)ele1AssignmentName().eContents().get(0));
+ // [ EClassifier ]
+ public CrossReference ele10CrossReferenceEClassifier() {
+ return (c10CrossReferenceEClassifier != null) ? c10CrossReferenceEClassifier : (c10CrossReferenceEClassifier = (CrossReference)ele1AssignmentType().eContents().get(0));
}
}
@@ -659,7 +659,7 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// Alternatives returns AbstractElement : Group ( { current = Alternatives . groups += current } '|' groups += Group ) * ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(9));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(10));
}
// Group ( { current = Alternatives . groups += current } '|' groups += Group ) *
@@ -714,7 +714,7 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// Group returns AbstractElement : AbstractToken ( { current = Group . abstractTokens += current } abstractTokens += AbstractToken ) * ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(10));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(11));
}
// AbstractToken ( { current = Group . abstractTokens += current } abstractTokens += AbstractToken ) *
@@ -765,7 +765,7 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// AbstractToken returns AbstractElement : ( Assignment | Action | AbstractTerminal ) ( cardinality = ( '?' | '*' | '+' ) ) ? ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(11));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(12));
}
// ( Assignment | Action | AbstractTerminal ) ( cardinality = ( '?' | '*' | '+' ) ) ?
@@ -844,9 +844,9 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
private Assignment c1AssignmentTerminal;
private RuleCall c10ParserRuleCallAbstractTerminal;
- // Assignment returns Assignment : feature = ID operator = ( '+=' | '=' | '?=' ) terminal = AbstractTerminal ;
+ // Assignment : feature = ID operator = ( '+=' | '=' | '?=' ) terminal = AbstractTerminal ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(12));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(13));
}
// feature = ID operator = ( '+=' | '=' | '?=' ) terminal = AbstractTerminal
@@ -935,9 +935,9 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
private Keyword c01KeywordCurrent;
private Keyword c1Keyword;
- // Action returns Action : '{' ( 'current' '=' ) ? typeName = TypeRef '.' feature = ID operator = ( '=' | '+=' ) 'current' '}' ;
+ // Action : '{' ( 'current' '=' ) ? typeName = TypeRef '.' feature = ID operator = ( '=' | '+=' ) 'current' '}' ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(13));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(14));
}
// '{' ( 'current' '=' ) ? typeName = TypeRef '.' feature = ID operator = ( '=' | '+=' ) 'current' '}'
@@ -1063,7 +1063,7 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// AbstractTerminal returns AbstractElement : Keyword | RuleCall | ParenthesizedElement | CrossReference ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(14));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(15));
}
// Keyword | RuleCall | ParenthesizedElement | CrossReference
@@ -1113,20 +1113,20 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
private Group c01Group;
private Keyword c010Keyword;
private Assignment c011AssignmentRule;
- private CrossReference c0110CrossReferenceLexerRule;
+ private CrossReference c0110CrossReferenceAbstractRule;
private Keyword c1Keyword;
- // CrossReference : '[' type = TypeRef ( '|' rule = [ LexerRule ] ) ? ']' ;
+ // CrossReference : '[' type = TypeRef ( '|' rule = [ AbstractRule ] ) ? ']' ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(15));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(16));
}
- // '[' type = TypeRef ( '|' rule = [ LexerRule ] ) ? ']'
+ // '[' type = TypeRef ( '|' rule = [ AbstractRule ] ) ? ']'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
- // '[' type = TypeRef ( '|' rule = [ LexerRule ] ) ?
+ // '[' type = TypeRef ( '|' rule = [ AbstractRule ] ) ?
public Group ele0Group() {
return (c0Group != null) ? c0Group : (c0Group = (Group)eleGroup().eContents().get(0));
}
@@ -1151,7 +1151,7 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
return (c0010ParserRuleCallTypeRef != null) ? c0010ParserRuleCallTypeRef : (c0010ParserRuleCallTypeRef = (RuleCall)ele001AssignmentType().eContents().get(0));
}
- // ( '|' rule = [ LexerRule ] ) ?
+ // ( '|' rule = [ AbstractRule ] ) ?
public Group ele01Group() {
return (c01Group != null) ? c01Group : (c01Group = (Group)ele0Group().eContents().get(1));
}
@@ -1161,14 +1161,14 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
return (c010Keyword != null) ? c010Keyword : (c010Keyword = (Keyword)ele01Group().eContents().get(0));
}
- // rule = [ LexerRule ]
+ // rule = [ AbstractRule ]
public Assignment ele011AssignmentRule() {
return (c011AssignmentRule != null) ? c011AssignmentRule : (c011AssignmentRule = (Assignment)ele01Group().eContents().get(1));
}
- // [ LexerRule ]
- public CrossReference ele0110CrossReferenceLexerRule() {
- return (c0110CrossReferenceLexerRule != null) ? c0110CrossReferenceLexerRule : (c0110CrossReferenceLexerRule = (CrossReference)ele011AssignmentRule().eContents().get(0));
+ // [ AbstractRule ]
+ public CrossReference ele0110CrossReferenceAbstractRule() {
+ return (c0110CrossReferenceAbstractRule != null) ? c0110CrossReferenceAbstractRule : (c0110CrossReferenceAbstractRule = (CrossReference)ele011AssignmentRule().eContents().get(0));
}
// ']'
@@ -1187,7 +1187,7 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// ParenthesizedElement returns AbstractElement : '(' Alternatives ')' ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(16));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(17));
}
// '(' Alternatives ')'
@@ -1223,12 +1223,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// Keyword : value = STRING ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(17));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(18));
}
// value = STRING
public Assignment eleAssignmentValue() {
- return (cAssignmentValue != null) ? cAssignmentValue : (cAssignmentValue = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentValue != null) ? cAssignmentValue : (cAssignmentValue = (Assignment)getRule().eContents().get(1));
}
// STRING
@@ -1244,12 +1244,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
// RuleCall : rule = [ AbstractRule ] ;
public ParserRule getRule() {
- return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(18));
+ return (rule != null) ? rule : (rule = (ParserRule) getGrammar().eContents().get(19));
}
// rule = [ AbstractRule ]
public Assignment eleAssignmentRule() {
- return (cAssignmentRule != null) ? cAssignmentRule : (cAssignmentRule = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentRule != null) ? cAssignmentRule : (cAssignmentRule = (Assignment)getRule().eContents().get(1));
}
// [ AbstractRule ]
@@ -1331,7 +1331,7 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
return (pParserRule != null) ? pParserRule : (pParserRule = new ParserRuleElements());
}
- // TypeRef : ( alias = ID '::' ) ? name = ID ;
+ // TypeRef : ( metamodel = [ AbstractMetamodelDeclaration ] '::' ) ? type = [ EClassifier ] ;
public TypeRefElements prTypeRef() {
return (pTypeRef != null) ? pTypeRef : (pTypeRef = new TypeRefElements());
}
@@ -1351,12 +1351,12 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
return (pAbstractToken != null) ? pAbstractToken : (pAbstractToken = new AbstractTokenElements());
}
- // Assignment returns Assignment : feature = ID operator = ( '+=' | '=' | '?=' ) terminal = AbstractTerminal ;
+ // Assignment : feature = ID operator = ( '+=' | '=' | '?=' ) terminal = AbstractTerminal ;
public AssignmentElements prAssignment() {
return (pAssignment != null) ? pAssignment : (pAssignment = new AssignmentElements());
}
- // Action returns Action : '{' ( 'current' '=' ) ? typeName = TypeRef '.' feature = ID operator = ( '=' | '+=' ) 'current' '}' ;
+ // Action : '{' ( 'current' '=' ) ? typeName = TypeRef '.' feature = ID operator = ( '=' | '+=' ) 'current' '}' ;
public ActionElements prAction() {
return (pAction != null) ? pAction : (pAction = new ActionElements());
}
@@ -1366,7 +1366,7 @@ public class XtextGrammarTestLanguageGrammarAccess extends BaseEPackageAccess im
return (pAbstractTerminal != null) ? pAbstractTerminal : (pAbstractTerminal = new AbstractTerminalElements());
}
- // CrossReference : '[' type = TypeRef ( '|' rule = [ LexerRule ] ) ? ']' ;
+ // CrossReference : '[' type = TypeRef ( '|' rule = [ AbstractRule ] ) ? ']' ;
public CrossReferenceElements prCrossReference() {
return (pCrossReference != null) ? pCrossReference : (pCrossReference = new CrossReferenceElements());
}
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageMetamodelAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageMetamodelAccess.java
index b20f352..7816dc7 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageMetamodelAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/services/XtextGrammarTestLanguageMetamodelAccess.java
@@ -28,13 +28,15 @@ public class XtextGrammarTestLanguageMetamodelAccess extends BaseEPackageAccess
private EPackage[] referenced = new EPackage[] {
+ BaseEPackageAccess.getEPackageFromRegistry("http://www.eclipse.org/emf/2002/Ecore")
+
};
public EPackage[] getReferencedEPackages() {
return referenced;
}
private EPackage[] all = new EPackage[] {
- getXtextTestEPackage()
+ getXtextTestEPackage(),BaseEPackageAccess.getEPackageFromRegistry("http://www.eclipse.org/emf/2002/Ecore")
};
public EPackage[] getAllEPackages() {
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractActionTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractActionTestLanguageRuntimeConfig.java
index d671190..9e75a46 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractActionTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractActionTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractActionTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.ActionTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.ActionTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.ActionTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractActionTestLanguageRuntimeConfig extends AbstractSe
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.IActionTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractContentAssistTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractContentAssistTestLanguageRuntimeConfig.java
index 51b4b0c..ef98191 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractContentAssistTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractContentAssistTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractContentAssistTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.ContentAssistTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.ContentAssistTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.ContentAssistTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractContentAssistTestLanguageRuntimeConfig extends Abs
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.IContentAssistTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractFowlerDslTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractFowlerDslTestLanguageRuntimeConfig.java
index 289ed47..214ed01 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractFowlerDslTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractFowlerDslTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractFowlerDslTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.FowlerDslTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.FowlerDslTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.FowlerDslTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractFowlerDslTestLanguageRuntimeConfig extends Abstrac
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.IFowlerDslTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLexerTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLexerTestLanguageRuntimeConfig.java
index 28c967b..16eea46 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLexerTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLexerTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractLexerTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.LexerTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.LexerTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.LexerTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractLexerTestLanguageRuntimeConfig extends AbstractSer
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.ILexerTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLookaheadTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLookaheadTestLanguageRuntimeConfig.java
index 41f4d3b..97d022a 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLookaheadTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractLookaheadTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractLookaheadTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.LookaheadTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.LookaheadTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.LookaheadTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractLookaheadTestLanguageRuntimeConfig extends Abstrac
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.ILookaheadTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractOptionalEmptyTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractOptionalEmptyTestLanguageRuntimeConfig.java
index cfe3c37..3c4e033 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractOptionalEmptyTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractOptionalEmptyTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractOptionalEmptyTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.OptionalEmptyTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.OptionalEmptyTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.OptionalEmptyTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractOptionalEmptyTestLanguageRuntimeConfig extends Abs
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.IOptionalEmptyTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractPartialParserTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractPartialParserTestLanguageRuntimeConfig.java
index c719f60..1527efe 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractPartialParserTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractPartialParserTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractPartialParserTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.PartialParserTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.PartialParserTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.PartialParserTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractPartialParserTestLanguageRuntimeConfig extends Abs
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.IPartialParserTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractReferenceGrammarTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractReferenceGrammarTestLanguageRuntimeConfig.java
index fe9b3ed..cca58e0 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractReferenceGrammarTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractReferenceGrammarTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractReferenceGrammarTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.ReferenceGrammarTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.ReferenceGrammarTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.ReferenceGrammarTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractReferenceGrammarTestLanguageRuntimeConfig extends
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.IReferenceGrammarTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractSimpleExpressionsTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractSimpleExpressionsTestLanguageRuntimeConfig.java
index 510bab0..607dc61 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractSimpleExpressionsTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractSimpleExpressionsTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractSimpleExpressionsTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.SimpleExpressionsTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.SimpleExpressionsTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.SimpleExpressionsTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractSimpleExpressionsTestLanguageRuntimeConfig extends
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.ISimpleExpressionsTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTestLanguageRuntimeConfig.java
index fa2fdce..470f0dc 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.TestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.TestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.TestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractTestLanguageRuntimeConfig extends AbstractServiceR
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.ITestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTreeTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTreeTestLanguageRuntimeConfig.java
index e6c3ad0..f059cd4 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTreeTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/AbstractTreeTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractTreeTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.testlanguages.services.TreeTestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.testlanguages.services.TreeTestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.testlanguages.services.TreeTestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractTreeTestLanguageRuntimeConfig extends AbstractServ
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.testlanguages.ITreeTestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ActionTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ActionTestLanguage.xmi
index 5b6acd7..156bc39 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ActionTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ActionTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,17 +7,24 @@
<idElements>ActionTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="ActionLang" nsURI="http://www.eclipse.org/2008/tmf/xtext/ActionLang"/>
<rules xsi:type="xtext:ParserRule" name="Model">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/tmf/xtext/ActionLang#//Model"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" cardinality="*" feature="children" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Element">
- <type metamodel="//@metamodelDeclarations.0" name="Type"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/tmf/xtext/ActionLang#//Type"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:RuleCall" rule="//@rules.2"/>
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Action" feature="items" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Item"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/tmf/xtext/ActionLang#//Item"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="items" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.2"/>
@@ -26,10 +33,14 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Item">
- <type metamodel="//@metamodelDeclarations.0" name="Type"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/tmf/xtext/ActionLang#//Type"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Action" feature="content" operator="=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Thing"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/tmf/xtext/ActionLang#//Thing"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguage.xmi
index 8a6b90a..43d97bf 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,6 +7,9 @@
<idElements>ContentAssistTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="contentAssistTestLanguage" nsURI="http://www.eclipse.org/2008/xtext/tests/ContentAssist"/>
<rules xsi:type="xtext:ParserRule" name="Start">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/tests/ContentAssist#//Start"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="abstract rules"/>
@@ -18,12 +21,18 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AbstractRule">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/tests/ContentAssist#//AbstractRule"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.2"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.3"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="FirstAbstractRuleChild">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/tests/ContentAssist#//FirstAbstractRuleChild"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -45,6 +54,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="SecondAbstractRuleChild">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/tests/ContentAssist#//SecondAbstractRuleChild"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -66,9 +78,14 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AbstractRuleCall">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/tests/ContentAssist#//AbstractRuleCall"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="rule" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="AbstractRule"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/tests/ContentAssist#//AbstractRule"/>
+ </type>
</terminal>
</alternatives>
</rules>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/FowlerDslTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/FowlerDslTestLanguage.xmi
index cca0de6..220c78b 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/FowlerDslTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/FowlerDslTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,6 +7,9 @@
<idElements>FowlerDslTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="fowlerdsl" nsURI="http://example.xtext.org/FowlerDslTestLanguage"/>
<rules xsi:type="xtext:ParserRule" name="Statemachine">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDslTestLanguage#//Statemachine"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -34,6 +37,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Event">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDslTestLanguage#//Event"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" cardinality="?" feature="resetting" operator="?=">
@@ -53,6 +59,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Command">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDslTestLanguage#//Command"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
@@ -67,6 +76,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="State">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDslTestLanguage#//State"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -86,7 +98,9 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" cardinality="+" feature="actions" operator="+=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Command"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDslTestLanguage#//Command"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
@@ -101,18 +115,25 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Transition">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDslTestLanguage#//Transition"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" feature="event" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Event"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDslTestLanguage#//Event"/>
+ </type>
</terminal>
</abstractTokens>
<abstractTokens xsi:type="xtext:Keyword" value="=>"/>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="state" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="State"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/FowlerDslTestLanguage#//State"/>
+ </type>
</terminal>
</abstractTokens>
</alternatives>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LexerTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LexerTestLanguage.xmi
index 1dff6e6..e4595f8 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LexerTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LexerTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,11 +7,17 @@
<idElements>LexerTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="LexerLang" nsURI="http://www.eclipse.org/2008/xtext/LexerLang"/>
<rules xsi:type="xtext:ParserRule" name="Model">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/LexerLang#//Model"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" cardinality="*" feature="children" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Element">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/LexerLang#//Element"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
@@ -23,5 +29,10 @@
</abstractTokens>
</alternatives>
</rules>
- <rules xsi:type="xtext:LexerRule" name="STRING" body=" '#' ('B')+ "/>
+ <rules xsi:type="xtext:LexerRule" name="STRING" body=" '#' ('B')+ ">
+ <type>
+ <metamodel href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@metamodelDeclarations.0"/>
+ <type xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </type>
+ </rules>
</xtext:Grammar>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadLang.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadLang.ecore
index f72689b..b1bf798 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadLang.ecore
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadLang.ecore
@@ -12,14 +12,14 @@
<eClassifiers xsi:type="ecore:EClass" name="LookAhead1" eSuperTypes="//Alts">
<eStructuralFeatures xsi:type="ecore:EReference" name="y" eType="//LookAhead2" containment="true"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="LookAhead3" eSuperTypes="//Alts">
- <eStructuralFeatures xsi:type="ecore:EReference" name="z" eType="//LookAhead4" containment="true"/>
- </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LookAhead2">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="z">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LookAhead3" eSuperTypes="//Alts">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="z" eType="//LookAhead4" containment="true"/>
+ </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LookAhead4">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="x">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadTestLanguage.xmi
index adc1b04..ebc9d77 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/LookaheadTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,11 +7,17 @@
<idElements>LookaheadTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="LookaheadLang" nsURI="http://www.eclipse.org/2008/xtext/LookaheadLang"/>
<rules xsi:type="xtext:ParserRule" name="Entry">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/LookaheadLang#//Entry"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" cardinality="*" feature="contents" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Alts">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/LookaheadLang#//Alts"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.2"/>
@@ -21,6 +27,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="LookAhead0">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/LookaheadLang#//LookAhead0"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="bar"/>
<abstractTokens xsi:type="xtext:Assignment" feature="x" operator="=">
@@ -29,6 +38,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="LookAhead1">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/LookaheadLang#//LookAhead1"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -47,6 +59,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="LookAhead2">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/LookaheadLang#//LookAhead2"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Assignment" feature="z" operator="=">
@@ -60,6 +75,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="LookAhead3">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/LookaheadLang#//LookAhead3"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -76,6 +94,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="LookAhead4">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/LookaheadLang#//LookAhead4"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Assignment" feature="x" operator="=">
<terminal xsi:type="xtext:Keyword" value="c"/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/OptionalEmptyTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/OptionalEmptyTestLanguage.xmi
index e2426fb..3b7ee28 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/OptionalEmptyTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/OptionalEmptyTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,11 +7,17 @@
<idElements>OptionalEmptyTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="OptionalEmpty" nsURI="http://www.eclipse.org/2008/tmf/xtext/OptionalEmpty"/>
<rules xsi:type="xtext:ParserRule" name="Model">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/tmf/xtext/OptionalEmpty#//Model"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" cardinality="?" feature="child" operator="=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Greeting">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/tmf/xtext/OptionalEmpty#//Greeting"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="hallo"/>
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/PartialParserTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/PartialParserTestLanguage.xmi
index 631fd3e..6a0cf21 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/PartialParserTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/PartialParserTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,6 +7,9 @@
<idElements>PartialParserTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="partialParserTestLanguage" nsURI="http://example.xtext.org/PartialParserTestLanguage"/>
<rules xsi:type="xtext:ParserRule" name="Container">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//Container"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -33,6 +36,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Nested">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//Nested"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -47,12 +53,18 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Content">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//Content"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.3"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.5"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Children">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//Children"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -75,6 +87,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Child">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//Child"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -92,6 +107,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AbstractChildren">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//AbstractChildren"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -106,12 +124,18 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AbstractChild">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//AbstractChild"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.7"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.8"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="FirstConcrete">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//FirstConcrete"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -128,7 +152,9 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" cardinality="?" feature="referencedContainer" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Container"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//Container"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
@@ -136,6 +162,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="SecondConcrete">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//SecondConcrete"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -155,7 +184,9 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" cardinality="?" feature="referencedChildren" operator="+=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Child"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//Child"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
@@ -163,6 +194,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Named">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://example.xtext.org/PartialParserTestLanguage#//Named"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
<rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammar.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammar.ecore
index d5d6059..e06ff31 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammar.ecore
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammar.ecore
@@ -13,12 +13,12 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="familie" upperBound="-1" eType="//Familie" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Person">
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="age">
- <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
- </eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="age">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Kind" eSuperTypes="//Person"/>
<eClassifiers xsi:type="ecore:EClass" name="Erwachsener" eSuperTypes="//Person"/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguage.xmi
index ae6436c..0b6c742 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,6 +7,9 @@
<idElements>ReferenceGrammarTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="ReferenceGrammar" nsURI="http://eclipse.org/xtext/reference/ReferenceGrammar"/>
<rules xsi:type="xtext:ParserRule" name="Spielplatz">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Spielplatz"/>
+ </type>
<alternatives xsi:type="xtext:Group" cardinality="?">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -50,12 +53,18 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Person">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Person"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.2"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.3"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Kind">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Kind"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -79,6 +88,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Erwachsener">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Erwachsener"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -102,6 +114,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Spielzeug">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Spielzeug"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -123,6 +138,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Farbe">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Farbe"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:Alternatives">
@@ -135,6 +153,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Familie">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Familie"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
@@ -161,19 +182,25 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="mutter" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Erwachsener"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Erwachsener"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="vater" operator="=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Erwachsener"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Erwachsener"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="kinder" operator="+=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Kind"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Kind"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
@@ -181,7 +208,9 @@
<abstractTokens xsi:type="xtext:Keyword" value=","/>
<abstractTokens xsi:type="xtext:Assignment" feature="kinder" operator="+=">
<terminal xsi:type="xtext:CrossReference">
- <type metamodel="//@metamodelDeclarations.0" name="Kind"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceGrammar#//Kind"/>
+ </type>
</terminal>
</abstractTokens>
</abstractTokens>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/SimpleExpressionsTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/SimpleExpressionsTestLanguage.xmi
index 008aae4..3f39cfd 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/SimpleExpressionsTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/SimpleExpressionsTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,11 +7,16 @@
<idElements>SimpleExpressionsTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="simpleExpressions" nsURI="http://www.eclipse.org/xtext/test/simpleExpressions"/>
<rules xsi:type="xtext:ParserRule" name="Sequence">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/xtext/test/simpleExpressions#//Sequence"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:RuleCall" rule="//@rules.1"/>
<abstractTokens xsi:type="xtext:Group" cardinality="*">
<abstractTokens xsi:type="xtext:Action" feature="expressions" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Sequence"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/xtext/test/simpleExpressions#//Sequence"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="expressions" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
@@ -20,13 +25,17 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Addition">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/xtext/test/simpleExpressions#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:RuleCall" rule="//@rules.2"/>
<abstractTokens xsi:type="xtext:Group" cardinality="*">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Action" feature="values" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Op"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/xtext/test/simpleExpressions#//Op"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="operator" operator="=">
<terminal xsi:type="xtext:Alternatives">
@@ -42,13 +51,17 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Multiplication">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/xtext/test/simpleExpressions#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:RuleCall" rule="//@rules.3"/>
<abstractTokens xsi:type="xtext:Group" cardinality="*">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Action" feature="values" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="Op"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/xtext/test/simpleExpressions#//Op"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="operator" operator="=">
<terminal xsi:type="xtext:Alternatives">
@@ -64,13 +77,18 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Term">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/xtext/test/simpleExpressions#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.4"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.5"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Atom">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/xtext/test/simpleExpressions#//Atom"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="name" operator="=">
<terminal xsi:type="xtext:RuleCall">
<rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/>
@@ -78,7 +96,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Parens">
- <type metamodel="//@metamodelDeclarations.0" name="Expression"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/xtext/test/simpleExpressions#//Expression"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="("/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TestLanguage.xmi
index 4a94c9f..2bd34ce 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,20 +7,26 @@
<idElements>TestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="TestLang" nsURI="http://www.eclipse.org/2008/xtext/TestLang"/>
<rules xsi:type="xtext:ParserRule" name="EntryRule">
- <type metamodel="//@metamodelDeclarations.0" name="Model"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/TestLang#//Model"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" cardinality="*" feature="multiFeature" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="AbstractRule">
- <type metamodel="//@metamodelDeclarations.0" name="AbstractElement"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/TestLang#//AbstractElement"/>
+ </type>
<alternatives xsi:type="xtext:Alternatives">
<groups xsi:type="xtext:RuleCall" rule="//@rules.2"/>
<groups xsi:type="xtext:RuleCall" rule="//@rules.3"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="ChoiceRule">
- <type metamodel="//@metamodelDeclarations.0" name="ChoiceElement"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/TestLang#//ChoiceElement"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="choice"/>
@@ -36,7 +42,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="ReducibleRule">
- <type metamodel="//@metamodelDeclarations.0" name="ReducibleElement"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/TestLang#//ReducibleElement"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="reducible"/>
@@ -44,7 +52,9 @@
</abstractTokens>
<abstractTokens xsi:type="xtext:Group" cardinality="?">
<abstractTokens xsi:type="xtext:Action" feature="actionFeature" operator="+=">
- <typeName metamodel="//@metamodelDeclarations.0" name="ReducibleComposite"/>
+ <typeName metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/TestLang#//ReducibleComposite"/>
+ </typeName>
</abstractTokens>
<abstractTokens xsi:type="xtext:Assignment" feature="actionFeature" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.4"/>
@@ -53,7 +63,9 @@
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="TerminalRule">
- <type metamodel="//@metamodelDeclarations.0" name="TerminalElement"/>
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/xtext/TestLang#//TerminalElement"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" feature="stringFeature" operator="=">
<terminal xsi:type="xtext:RuleCall">
<rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.2"/>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguage.xmi
index 58d582b..7f0999f 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguage.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,11 +7,17 @@
<idElements>TreeTestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="TreeTestLanguage" nsURI="http://www.eclipse.org/2008/tmf/xtext/TreeTestLanguage"/>
<rules xsi:type="xtext:ParserRule" name="Model">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/tmf/xtext/TreeTestLanguage#//Model"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" cardinality="*" feature="children" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Node">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/tmf/xtext/TreeTestLanguage#//Node"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Group">
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageLexer.java
index e21352b..aefaec8 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguage.g 2008-12-08 18:02:56
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguage.g 2008-12-10 12:15:42
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageParser.java
index ba92953..522e962 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguage.g 2008-12-08 18:02:56
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalActionTestLanguage.g 2008-12-10 12:15:42
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageLexer.java
index f30cf87..faa4e8a 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguage.g 2008-12-08 18:03:01
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguage.g 2008-12-10 12:15:47
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageParser.java
index d9104d8..2b89ae8 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguage.g 2008-12-08 18:03:01
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalContentAssistTestLanguage.g 2008-12-10 12:15:47
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageLexer.java
index 80d1904..f20a44d 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguage.g 2008-12-08 18:02:59
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguage.g 2008-12-10 12:15:45
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageParser.java
index a29c1a0..75b82e3 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguage.g 2008-12-08 18:02:59
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalFowlerDslTestLanguage.g 2008-12-10 12:15:44
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageLexer.java
index 4da28f2..f24418d 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguage.g 2008-12-08 18:02:55
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguage.g 2008-12-10 12:15:41
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageParser.java
index 5c1f2e9..f5e638e 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguage.g 2008-12-08 18:02:55
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLexerTestLanguage.g 2008-12-10 12:15:41
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageLexer.java
index a1bf5b0..691f5fe 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguage.g 2008-12-08 18:02:58
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguage.g 2008-12-10 12:15:44
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageParser.java
index 42f573d..ca251dd 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguage.g 2008-12-08 18:02:57
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalLookaheadTestLanguage.g 2008-12-10 12:15:43
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageLexer.java
index ed4323a..06cc426 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguage.g 2008-12-08 18:02:56
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguage.g 2008-12-10 12:15:42
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageParser.java
index dd5e56c..7213761 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguage.g 2008-12-08 18:02:56
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalOptionalEmptyTestLanguage.g 2008-12-10 12:15:42
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageLexer.java
index d7ba7aa..9b9f070 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguage.g 2008-12-08 18:03:00
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguage.g 2008-12-10 12:15:46
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageParser.java
index 14bfc49..75139df 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguage.g 2008-12-08 18:03:00
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalPartialParserTestLanguage.g 2008-12-10 12:15:46
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageLexer.java
index a7d9523..91dbdb3 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguage.g 2008-12-08 18:02:57
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguage.g 2008-12-10 12:15:43
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageParser.java
index c1d68df..7849e46 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguage.g 2008-12-08 18:02:57
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalReferenceGrammarTestLanguage.g 2008-12-10 12:15:43
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageLexer.java
index eb22b82..9f82c87 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguage.g 2008-12-08 18:02:55
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguage.g 2008-12-10 12:15:41
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageParser.java
index 2caaf8f..bb4f577 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguage.g 2008-12-08 18:02:55
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalSimpleExpressionsTestLanguage.g 2008-12-10 12:15:41
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageLexer.java
index 99da453..b124f5d 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguage.g 2008-12-08 18:02:52
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguage.g 2008-12-10 12:15:38
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageParser.java
index 0066799..7506e9b 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguage.g 2008-12-08 18:02:52
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTestLanguage.g 2008-12-10 12:15:38
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageLexer.java
index 14fdfc1..42bfb84 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguage.g 2008-12-08 18:02:59
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguage.g 2008-12-10 12:15:45
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageParser.java
index 819f4ee..98a9e78 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguage.g 2008-12-08 18:02:59
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/testlanguages/parser/internal/InternalTreeTestLanguage.g 2008-12-10 12:15:45
package org.eclipse.xtext.testlanguages.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/partialParserTestLanguage.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/partialParserTestLanguage.ecore
index 639510b..47d076a 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/partialParserTestLanguage.ecore
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/partialParserTestLanguage.ecore
@@ -14,12 +14,12 @@
<eClassifiers xsi:type="ecore:EClass" name="Children" eSuperTypes="//Content">
<eStructuralFeatures xsi:type="ecore:EReference" name="children" upperBound="-1" eType="//Child" containment="true"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="AbstractChildren" eSuperTypes="//Content">
- <eStructuralFeatures xsi:type="ecore:EReference" name="abstractChildren" upperBound="-1" eType="//AbstractChild" containment="true"/>
- </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Child">
<eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="//Named" containment="true"/>
</eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="AbstractChildren" eSuperTypes="//Content">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="abstractChildren" upperBound="-1" eType="//AbstractChild" containment="true"/>
+ </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AbstractChild">
<eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="//Named" containment="true"/>
</eClassifiers>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ActionTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ActionTestLanguageGrammarAccess.java
index 431f108..f66a459 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ActionTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ActionTestLanguageGrammarAccess.java
@@ -22,7 +22,7 @@ public class ActionTestLanguageGrammarAccess extends BaseEPackageAccess implemen
// ( children += Element ) *
public Assignment eleAssignmentChildren() {
- return (cAssignmentChildren != null) ? cAssignmentChildren : (cAssignmentChildren = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentChildren != null) ? cAssignmentChildren : (cAssignmentChildren = (Assignment)getRule().eContents().get(1));
}
// Element
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ContentAssistTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ContentAssistTestLanguageGrammarAccess.java
index 90b9eef..ecfd7b9 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ContentAssistTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ContentAssistTestLanguageGrammarAccess.java
@@ -26,7 +26,7 @@ public class ContentAssistTestLanguageGrammarAccess extends BaseEPackageAccess i
// 'abstract rules' ( rules += AbstractRule ) + 'end'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'abstract rules' ( rules += AbstractRule ) +
@@ -68,7 +68,7 @@ public class ContentAssistTestLanguageGrammarAccess extends BaseEPackageAccess i
// FirstAbstractRuleChild | SecondAbstractRuleChild
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// FirstAbstractRuleChild
@@ -103,7 +103,7 @@ public class ContentAssistTestLanguageGrammarAccess extends BaseEPackageAccess i
// name = ID '(' ( elements += AbstractRule ) + ')' ';'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// name = ID '(' ( elements += AbstractRule ) + ')'
@@ -178,7 +178,7 @@ public class ContentAssistTestLanguageGrammarAccess extends BaseEPackageAccess i
// name = ID 'rule' ':' rule = AbstractRuleCall ';'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// name = ID 'rule' ':' rule = AbstractRuleCall
@@ -244,7 +244,7 @@ public class ContentAssistTestLanguageGrammarAccess extends BaseEPackageAccess i
// rule = [ AbstractRule ]
public Assignment eleAssignmentRule() {
- return (cAssignmentRule != null) ? cAssignmentRule : (cAssignmentRule = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentRule != null) ? cAssignmentRule : (cAssignmentRule = (Assignment)getRule().eContents().get(1));
}
// [ AbstractRule ]
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/FowlerDslTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/FowlerDslTestLanguageGrammarAccess.java
index 1ed1e39..f27efe2 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/FowlerDslTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/FowlerDslTestLanguageGrammarAccess.java
@@ -36,7 +36,7 @@ public class FowlerDslTestLanguageGrammarAccess extends BaseEPackageAccess imple
// 'events' ( events += Event ) * 'end' 'commands' ( commands += Command ) * 'end' ( states += State ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'events' ( events += Event ) * 'end' 'commands' ( commands += Command ) * 'end'
@@ -133,7 +133,7 @@ public class FowlerDslTestLanguageGrammarAccess extends BaseEPackageAccess imple
// ( resetting ?= 'resetting' ) ? name = ID code = ID
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// ( resetting ?= 'resetting' ) ? name = ID
@@ -187,7 +187,7 @@ public class FowlerDslTestLanguageGrammarAccess extends BaseEPackageAccess imple
// name = ID code = ID
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// name = ID
@@ -239,7 +239,7 @@ public class FowlerDslTestLanguageGrammarAccess extends BaseEPackageAccess imple
// 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ? ( transitions += Transition ) * 'end'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'state' name = ID ( 'actions' '{' ( actions += [ Command ] ) + '}' ) ? ( transitions += Transition ) *
@@ -345,7 +345,7 @@ public class FowlerDslTestLanguageGrammarAccess extends BaseEPackageAccess imple
// event = [ Event ] '=>' state = [ State ]
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// event = [ Event ] '=>'
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LexerTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LexerTestLanguageGrammarAccess.java
index b707cda..ddaae81 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LexerTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LexerTestLanguageGrammarAccess.java
@@ -22,7 +22,7 @@ public class LexerTestLanguageGrammarAccess extends BaseEPackageAccess implement
// ( children += Element ) *
public Assignment eleAssignmentChildren() {
- return (cAssignmentChildren != null) ? cAssignmentChildren : (cAssignmentChildren = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentChildren != null) ? cAssignmentChildren : (cAssignmentChildren = (Assignment)getRule().eContents().get(1));
}
// Element
@@ -46,7 +46,7 @@ public class LexerTestLanguageGrammarAccess extends BaseEPackageAccess implement
// name = ID h = STRING
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// name = ID
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LookaheadTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LookaheadTestLanguageGrammarAccess.java
index 28603ef..4de9f73 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LookaheadTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/LookaheadTestLanguageGrammarAccess.java
@@ -22,7 +22,7 @@ public class LookaheadTestLanguageGrammarAccess extends BaseEPackageAccess imple
// ( contents += Alts ) *
public Assignment eleAssignmentContents() {
- return (cAssignmentContents != null) ? cAssignmentContents : (cAssignmentContents = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentContents != null) ? cAssignmentContents : (cAssignmentContents = (Assignment)getRule().eContents().get(1));
}
// Alts
@@ -46,7 +46,7 @@ public class LookaheadTestLanguageGrammarAccess extends BaseEPackageAccess imple
// LookAhead0 | LookAhead1 | LookAhead3
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// LookAhead0 | LookAhead1
@@ -84,7 +84,7 @@ public class LookaheadTestLanguageGrammarAccess extends BaseEPackageAccess imple
// 'bar' x = 'a'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'bar'
@@ -123,7 +123,7 @@ public class LookaheadTestLanguageGrammarAccess extends BaseEPackageAccess imple
// 'foo' y = LookAhead2 x = 'b' x = 'd'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'foo' y = LookAhead2 x = 'b'
@@ -189,7 +189,7 @@ public class LookaheadTestLanguageGrammarAccess extends BaseEPackageAccess imple
// ( z = 'foo' | z = 'bar' ) 'c'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// z = 'foo' | z = 'bar'
@@ -242,7 +242,7 @@ public class LookaheadTestLanguageGrammarAccess extends BaseEPackageAccess imple
// 'foo' 'bar' x = 'b' z = LookAhead4
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'foo' 'bar' x = 'b'
@@ -301,7 +301,7 @@ public class LookaheadTestLanguageGrammarAccess extends BaseEPackageAccess imple
// x = 'c' | x = 'd'
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// x = 'c'
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/OptionalEmptyTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/OptionalEmptyTestLanguageGrammarAccess.java
index d15ad73..9c200e5 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/OptionalEmptyTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/OptionalEmptyTestLanguageGrammarAccess.java
@@ -22,7 +22,7 @@ public class OptionalEmptyTestLanguageGrammarAccess extends BaseEPackageAccess i
// ( child = Greeting ) ?
public Assignment eleAssignmentChild() {
- return (cAssignmentChild != null) ? cAssignmentChild : (cAssignmentChild = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentChild != null) ? cAssignmentChild : (cAssignmentChild = (Assignment)getRule().eContents().get(1));
}
// Greeting
@@ -45,7 +45,7 @@ public class OptionalEmptyTestLanguageGrammarAccess extends BaseEPackageAccess i
// 'hallo' name = ID
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'hallo'
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/PartialParserTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/PartialParserTestLanguageGrammarAccess.java
index ad934ca..e7cc4a6 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/PartialParserTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/PartialParserTestLanguageGrammarAccess.java
@@ -34,7 +34,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// 'container' name = ID '{' ( nested += Nested | content += Content ) * '}'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'container' name = ID '{' ( nested += Nested | content += Content ) *
@@ -121,7 +121,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// 'nested' '{' ( nested += Container ) + '}'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'nested' '{' ( nested += Container ) +
@@ -173,7 +173,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// Children | AbstractChildren
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// Children
@@ -210,7 +210,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// 'children' '{' children += Child ( ',' children += Child ) * '}'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'children' '{' children += Child ( ',' children += Child ) *
@@ -294,7 +294,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// '->' 'C' '(' value = Named ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// '->' 'C' '(' value = Named
@@ -361,7 +361,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// 'abstract children' '{' ( abstractChildren += AbstractChild ) + '}'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'abstract children' '{' ( abstractChildren += AbstractChild ) +
@@ -413,7 +413,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// FirstConcrete | SecondConcrete
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// FirstConcrete
@@ -450,7 +450,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// '->' 'F' '(' value = Named ( referencedContainer = [ Container ] ) ? ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// '->' 'F' '(' value = Named ( referencedContainer = [ Container ] ) ?
@@ -539,7 +539,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// '->' 'F' 'S' '(' value = Named ( referencedChildren += [ Child ] ) ? ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// '->' 'F' 'S' '(' value = Named ( referencedChildren += [ Child ] ) ?
@@ -625,7 +625,7 @@ public class PartialParserTestLanguageGrammarAccess extends BaseEPackageAccess i
// name = ID
public Assignment eleAssignmentName() {
- return (cAssignmentName != null) ? cAssignmentName : (cAssignmentName = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentName != null) ? cAssignmentName : (cAssignmentName = (Assignment)getRule().eContents().get(1));
}
// ID
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ReferenceGrammarTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ReferenceGrammarTestLanguageGrammarAccess.java
index 6d81b32..ac0f31f 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ReferenceGrammarTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/ReferenceGrammarTestLanguageGrammarAccess.java
@@ -43,7 +43,7 @@ public class ReferenceGrammarTestLanguageGrammarAccess extends BaseEPackageAcces
// ( 'spielplatz' groesse = INT ( beschreibung = STRING ) ? '{' ( kinder += Kind | erzieher += Erwachsener | spielzeuge += Spielzeug | familie += Familie ) * '}' ) ?
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'spielplatz' groesse = INT ( beschreibung = STRING ) ? '{' ( kinder += Kind | erzieher += Erwachsener | spielzeuge += Spielzeug | familie += Familie ) *
@@ -170,7 +170,7 @@ public class ReferenceGrammarTestLanguageGrammarAccess extends BaseEPackageAcces
// Kind | Erwachsener
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// Kind
@@ -205,7 +205,7 @@ public class ReferenceGrammarTestLanguageGrammarAccess extends BaseEPackageAcces
// 'kind' '(' name = ID age = INT ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'kind' '(' name = ID age = INT
@@ -280,7 +280,7 @@ public class ReferenceGrammarTestLanguageGrammarAccess extends BaseEPackageAcces
// 'erwachsener' '(' name = ID age = INT ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'erwachsener' '(' name = ID age = INT
@@ -355,7 +355,7 @@ public class ReferenceGrammarTestLanguageGrammarAccess extends BaseEPackageAcces
// 'spielzeug' '(' name = ID farbe = Farbe ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'spielzeug' '(' name = ID farbe = Farbe
@@ -426,7 +426,7 @@ public class ReferenceGrammarTestLanguageGrammarAccess extends BaseEPackageAcces
// 'ROT' | 'BLAU' | 'GELB' | 'GRÜN'
public Alternatives eleAlternatives() {
- return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(0));
+ return (cAlternatives != null) ? cAlternatives : (cAlternatives = (Alternatives)getRule().eContents().get(1));
}
// 'ROT' | 'BLAU' | 'GELB'
@@ -496,7 +496,7 @@ public class ReferenceGrammarTestLanguageGrammarAccess extends BaseEPackageAcces
// 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ] ( ',' kinder += [ Kind ] ) * ')'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'familie' '(' name = ( 'keyword' | STRING | ID ) mutter = [ Erwachsener ] vater = [ Erwachsener ] kinder += [ Kind ] ( ',' kinder += [ Kind ] ) *
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/SimpleExpressionsTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/SimpleExpressionsTestLanguageGrammarAccess.java
index ad2e885..8eda35e 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/SimpleExpressionsTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/SimpleExpressionsTestLanguageGrammarAccess.java
@@ -26,7 +26,7 @@ public class SimpleExpressionsTestLanguageGrammarAccess extends BaseEPackageAcce
// Addition ( { current = Sequence . expressions += current } expressions += Addition ) *
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// Addition
@@ -244,7 +244,7 @@ public class SimpleExpressionsTestLanguageGrammarAccess extends BaseEPackageAcce
// name = ID
public Assignment eleAssignmentName() {
- return (cAssignmentName != null) ? cAssignmentName : (cAssignmentName = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentName != null) ? cAssignmentName : (cAssignmentName = (Assignment)getRule().eContents().get(1));
}
// ID
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/TreeTestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/TreeTestLanguageGrammarAccess.java
index 8364e51..355f0fe 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/TreeTestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/services/TreeTestLanguageGrammarAccess.java
@@ -22,7 +22,7 @@ public class TreeTestLanguageGrammarAccess extends BaseEPackageAccess implements
// ( children += Node ) *
public Assignment eleAssignmentChildren() {
- return (cAssignmentChildren != null) ? cAssignmentChildren : (cAssignmentChildren = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentChildren != null) ? cAssignmentChildren : (cAssignmentChildren = (Assignment)getRule().eContents().get(1));
}
// Node
@@ -57,7 +57,7 @@ public class TreeTestLanguageGrammarAccess extends BaseEPackageAccess implements
// name = ID '(' attrib = STRING ')' '{' ( children += Node ) * '};'
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// name = ID '(' attrib = STRING ')' '{' ( children += Node ) *
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/simpleExpressions.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/simpleExpressions.ecore
index 109653e..95a3f5a 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/simpleExpressions.ecore
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/testlanguages/simpleExpressions.ecore
@@ -4,14 +4,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="expressions" upperBound="-1" eType="//Expression" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Expression" eSuperTypes="//Sequence"/>
- <eClassifiers xsi:type="ecore:EClass" name="Op" eSuperTypes="//Expression">
- <eStructuralFeatures xsi:type="ecore:EReference" name="values" upperBound="-1" eType="//Expression" containment="true"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator">
+ <eClassifiers xsi:type="ecore:EClass" name="Atom" eSuperTypes="//Expression">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Atom" eSuperTypes="//Expression">
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="name">
+ <eClassifiers xsi:type="ecore:EClass" name="Op" eSuperTypes="//Expression">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="values" upperBound="-1" eType="//Expression" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="operator">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eStructuralFeatures>
</eClassifiers>
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/AbstractBug250313RuntimeConfig.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/AbstractBug250313RuntimeConfig.java
index 4c343ac..f4b9e1b 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/AbstractBug250313RuntimeConfig.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/AbstractBug250313RuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractBug250313RuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.valueconverter.services.Bug250313GrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.valueconverter.services.Bug250313MetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.valueconverter.services.Bug250313GrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -56,8 +56,8 @@ public abstract class AbstractBug250313RuntimeConfig extends AbstractServiceRegi
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.valueconverter.IBug250313.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/Bug250313.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/Bug250313.xmi
index db79801..5659675 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/Bug250313.xmi
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/Bug250313.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -7,6 +7,9 @@
<idElements>Bug250313</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="bug250313" nsURI="http://org.eclipse.xtext.valueconverter.Bug250313"/>
<rules xsi:type="xtext:ParserRule" name="Ref2">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://org.eclipse.xtext.valueconverter.Bug250313#//Ref2"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="#2"/>
<abstractTokens xsi:type="xtext:Assignment" feature="ref2" operator="=">
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Lexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Lexer.java
index 5060cc5..e3ac3ce 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Lexer.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Lexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313.g 2008-12-08 18:02:58
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313.g 2008-12-10 12:15:44
package org.eclipse.xtext.valueconverter.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Parser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Parser.java
index 0132a68..666e3b7 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Parser.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313Parser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313.g 2008-12-08 18:02:58
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/valueconverter/parser/internal/InternalBug250313.g 2008-12-10 12:15:44
package org.eclipse.xtext.valueconverter.parser.internal;
diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/services/Bug250313GrammarAccess.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/services/Bug250313GrammarAccess.java
index e73695c..d2fb330 100644
--- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/services/Bug250313GrammarAccess.java
+++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/valueconverter/services/Bug250313GrammarAccess.java
@@ -28,7 +28,7 @@ public class Bug250313GrammarAccess extends BaseEPackageAccess implements IGramm
// '#2' ref2 = ( 'mykeyword1' | STRING | ID )
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// '#2'
diff --git a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/GrammarUtilTests.java b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/GrammarUtilTests.java
index 4467bf5..16c7a79 100644
--- a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/GrammarUtilTests.java
+++ b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/GrammarUtilTests.java
@@ -8,6 +8,7 @@
package org.eclipse.xtext;
import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
@@ -64,12 +65,14 @@ public class GrammarUtilTests extends AbstractGeneratorTest {
Assignment asExtends = (Assignment)((Group)prType.getAlternatives()).getAbstractTokens().get(1);
CrossReference xref = (CrossReference) asExtends.getTerminal();
- EClass referencedEClass = GrammarUtil.getReferencedEClass(resource, xref);
- assertNotNull(referencedEClass);
+ EClassifier referencedClassifier = GrammarUtil.getReferencedEClass(resource, xref);
+ assertNotNull(referencedClassifier);
+ assertNotNull(referencedClassifier.getName());
EObject model = getModel(resource);
EObject typeA = (EObject) invokeWithXtend("types.first()", model);
- assertEquals(typeA.eClass(), referencedEClass);
+ assertEquals("typeA.eClass()[" + typeA.eClass().getName() + "] <> referencedClassifier["+ referencedClassifier.getName() +"]",
+ referencedClassifier, typeA.eClass());
}
public void testGetReference() throws Exception {
diff --git a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/XtextGrammarTestLanguage.xtext b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/XtextGrammarTestLanguage.xtext
index 770981e..d8fe3e2 100755
--- a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/XtextGrammarTestLanguage.xtext
+++ b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/XtextGrammarTestLanguage.xtext
@@ -9,6 +9,7 @@
language org.eclipse.xtext.XtextGrammarTestLanguage
generate XtextTest "http://www.eclipse.org/2008/Test/XtextTest"
+import "http://www.eclipse.org/emf/2002/Ecore" as ecore
Grammar :
(abstract?='abstract language' | 'language') idElements+=ID ('.' idElements+=ID)* ('extends' superGrammarIdElements+=ID ('.' superGrammarIdElements+=ID)*)?
@@ -21,9 +22,13 @@ AbstractRule : LexerRule | ParserRule;
AbstractMetamodelDeclaration :
GeneratedMetamodel | ReferencedMetamodel;
+// constraint: typeSelect(GeneratedMetamodel).size() == typeSelect(GeneratedMetamodel).alias.size()
+// generated metamodels have to have different aliases
GeneratedMetamodel :
'generate' name=ID nsURI=STRING ('as' alias=ID)?;
+// referenced metamodels may share aliases with other referenced metamodels
+// and with generated metamodels
ReferencedMetamodel :
'import' uri=STRING ('as' alias=ID)?;
@@ -39,7 +44,7 @@ ParserRule :
;
TypeRef :
- (alias=ID '::')? name=ID
+ (metamodel=[AbstractMetamodelDeclaration] '::')? type=[EClassifier]
;
Alternatives returns AbstractElement:
@@ -66,7 +71,7 @@ AbstractTerminal returns AbstractElement:
;
CrossReference :
- '[' type=TypeRef ('|' rule=[LexerRule])? ']'
+ '[' type=TypeRef ('|' rule=[AbstractRule])? ']'
;
ParenthesizedElement returns AbstractElement:
@@ -79,4 +84,3 @@ Keyword :
RuleCall :
rule=[AbstractRule];
-
diff --git a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/grammarinheritance/ToEcoreTrafoTest.java b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/grammarinheritance/ToEcoreTrafoTest.java
index 6c997ca..e508a17 100644
--- a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/grammarinheritance/ToEcoreTrafoTest.java
+++ b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/grammarinheritance/ToEcoreTrafoTest.java
@@ -46,7 +46,7 @@ public class ToEcoreTrafoTest extends AbstractGeneratorTest {
}
Xtext2EcoreTransformer transformer = new Xtext2EcoreTransformer();
- List<EPackage> list = transformer.transform(element);
+ List<EPackage> list = Xtext2EcoreTransformer.doGetGeneratedPackages(element);
assertNotNull(list);
assertEquals(0, list.size());
}
@@ -59,8 +59,7 @@ public class ToEcoreTrafoTest extends AbstractGeneratorTest {
for (LexerRule lexerRule : lexerRules) {
logger.debug(lexerRule.getName());
}
- Xtext2EcoreTransformer transformer = new Xtext2EcoreTransformer();
- List<EPackage> list = transformer.transform(element);
+ List<EPackage> list = Xtext2EcoreTransformer.doGetGeneratedPackages(element);
EPackage metaModel = list.get(0);
assertNotNull(metaModel);
assertNotNull(metaModel.getNsPrefix());
diff --git a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xtext b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xtext
index 9d5508c..ea72a6b 100755
--- a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xtext
+++ b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/metamodelreferencing/tests/MetamodelRefTestLanguage.xtext
@@ -15,7 +15,7 @@ Foo :
name=ID (nameRefs+=NameRef)*;
NameRef returns xtext::RuleCall :
- rule=[MyRule];
+ rule=[ParserRule];
MyRule returns xtext::ParserRule :
name=ID; \ No newline at end of file
diff --git a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parser/XtextParserTest.java b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parser/XtextParserTest.java
index 46f5e30..d135f43 100644
--- a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parser/XtextParserTest.java
+++ b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parser/XtextParserTest.java
@@ -25,7 +25,8 @@ public class XtextParserTest extends AbstractGeneratorTest {
}
public void testParseCrossRef() throws Exception {
- Grammar model = (Grammar) getModel("language foo generate foo 'bar' Model : 'a' stuff+=Stuff*; Stuff : 'stuff' name=ID refersTo=[Stuff];");
- assertWithXtend("'Stuff'", "eAllContents.typeSelect(xtext::CrossReference).first().type.name", model);
+ Grammar model = (Grammar) getModel("language foo generate foo 'bar' as boo Model : 'a' stuff+=Stuff*; Stuff : 'stuff' name=ID refersTo=[Stuff];");
+ assertWithXtend("'boo'", "eAllContents.typeSelect(xtext::CrossReference).first().type.metamodel.alias", model);
+ assertWithXtend("'Stuff'", "eAllContents.typeSelect(xtext::CrossReference).first().type.type.name", model);
}
}
diff --git a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parsetree/ParseTreeUtilTest.java b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parsetree/ParseTreeUtilTest.java
index cf75fe1..ec5de95 100644
--- a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parsetree/ParseTreeUtilTest.java
+++ b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/parsetree/ParseTreeUtilTest.java
@@ -57,33 +57,149 @@ public class ParseTreeUtilTest extends AbstractGeneratorTest {
assertEquals("expect leafnode with text '{'", ((LeafNode) lastCompleteNodeByOffset).getText(), "{");
}
- public void testGetCurrentNodeByOffset() throws Exception {
-
+ public void testGetCurrentOrFollowingNodeByOffset() throws Exception {
String text = "spielplatz 1 \"junit\" { kin ";
CompositeNode rootNode = getRootNode(text);
- LeafNode currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentNodeByOffset(rootNode, 26);
+ LeafNode currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentOrFollowingNodeByOffset(rootNode, 26);
assertEquals("expect leafnode with text 'kin'", currentNodeByOffset.getText(), "kin");
text = "spielplatz 1 \"junit\" { kind (";
rootNode = getRootNode(text);
- currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentNodeByOffset(rootNode, text.length());
+ currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentOrFollowingNodeByOffset(rootNode, text.length());
assertEquals("expect leafnode with text '('", currentNodeByOffset.getText(), "(");
text = "spielplatz 1 \"junit\" { kind ( ";
rootNode = getRootNode(text);
- currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentNodeByOffset(rootNode, text.length());
+ currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentOrFollowingNodeByOffset(rootNode, text.length());
assertEquals("expect leafnode with WS text '__'", currentNodeByOffset.getText(), " ");
text = "spielplatz 1 \"junit\" { kind (";
rootNode = getRootNode(text);
- currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentNodeByOffset(rootNode, text.length() - 1);
+ currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentOrFollowingNodeByOffset(rootNode, text.length() - 1);
assertEquals("expect leafnode with '('", currentNodeByOffset.getText(), "(");
text = "spielplatz 1 \"junit\" { kind (";
rootNode = getRootNode(text);
- currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentNodeByOffset(rootNode, 0);
+ currentNodeByOffset = (LeafNode) ParseTreeUtil.getCurrentOrFollowingNodeByOffset(rootNode, 0);
assertEquals("expect leafnode with WS text 'spielplatz'", currentNodeByOffset.getText(), "spielplatz");
+ text = "spielplatz 1 \"junit\" { kind(a 1) kind(b 2) }";
+ rootNode = getRootNode(text);
+ AbstractNode currentCompositeNodeByOffset = ParseTreeUtil.getCurrentOrFollowingNodeByOffset(rootNode, text
+ .indexOf(')') + 1);
+ assertTrue(currentCompositeNodeByOffset instanceof CompositeNode);
+ String serialized = currentCompositeNodeByOffset.serialize();
+ assertEquals("expect compositeNode with text 'kind(b 2)'", serialized, " kind(b 2)");
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_01() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind(a 1) kind(b 2) }";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode,
+ text.indexOf(')') + 1);
+ assertEquals("expect leafnode with text ')'", ")", currentNodeByOffset.serialize());
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_02() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind(a 1) kind(b 2) }";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode,
+ text.indexOf(')') + 2);
+ assertEquals("expect leafnode with text '" + text + "'", currentNodeByOffset.serialize(), text);
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_03() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind(a 1) kind(b 2) }";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode,
+ text.indexOf("kind(b 2)"));
+ assertEquals("expect leafnode with text 'kind'", "kind", currentNodeByOffset.serialize());
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_04() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kin ";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, 26);
+ assertEquals("expect node with text '" + text + "'", currentNodeByOffset.serialize(), text);
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_05() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind (";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, text.length());
+ assertEquals("expect leafnode with text '('", "(", currentNodeByOffset.serialize());
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_06() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind ( ";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, text.length());
+ assertEquals("expect node with text '" + text + "'", currentNodeByOffset.serialize(), text);
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_07() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind (";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, text.length() - 1);
+ assertEquals("expect leafnode with text '('", currentNodeByOffset.serialize(), "(");
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_08() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind (";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, 0);
+ assertEquals("expect leafnode with text 'spielplatz'", currentNodeByOffset.serialize(), "spielplatz");
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_09() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind (";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, "spielplatz"
+ .length());
+ assertEquals("expect leafnode with text 'spielplatz'", currentNodeByOffset.serialize(), "spielplatz");
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_10() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind (";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, "spielplatz"
+ .length() + 1);
+ assertEquals("expect leafnode with text '1'", "1", currentNodeByOffset.serialize());
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_11() throws Exception {
+ String text = "spielplatz 1 \"junit\" { kind (";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, 2);
+ assertEquals("expect leafnode with text 'spielplatz'", currentNodeByOffset.serialize(), "spielplatz");
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_12() throws Exception {
+ String text = " spielplatz 1 \"junit\" { kind (";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, 0);
+ assertEquals("expect node with text '" + text + "'", currentNodeByOffset.serialize(), text);
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_13() throws Exception {
+ String text = " spielplatz 1 \"junit\" { kind (";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, 1);
+ assertEquals("expect node with text '" + text + "'", currentNodeByOffset.serialize(), text);
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_14() throws Exception {
+ String text = " spielplatz 1 \"junit\" { kind (";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, 2);
+ assertEquals("expect leafnode with text 'spielplatz'", "spielplatz", currentNodeByOffset.serialize());
+ }
+
+ public void testGetCurrentOrPrecedingNodeByOffset_15() throws Exception {
+ String text = " spielplatz 1 \"junit\" { kind (a 1) ";
+ CompositeNode rootNode = getRootNode(text);
+ AbstractNode currentNodeByOffset = ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, text.indexOf("a 1") + 2);
+ assertEquals("expect leafnode with text ' kind (a 1)'", " kind (a 1)", currentNodeByOffset.serialize());
}
public void testGetElementSetValidFromOffsetEmptyText() throws Exception {
diff --git a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/resource/metamodel/Xtext2EcoreTransformerTests.java b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/resource/metamodel/Xtext2EcoreTransformerTests.java
index 0bb71a0..c4531ab 100644
--- a/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/resource/metamodel/Xtext2EcoreTransformerTests.java
+++ b/tests/org.eclipse.xtext.generator.tests/src/org/eclipse/xtext/resource/metamodel/Xtext2EcoreTransformerTests.java
@@ -61,7 +61,8 @@ public class Xtext2EcoreTransformerTests extends AbstractGeneratorTest {
Grammar grammar = (Grammar) getModel(xtextGrammar);
replay(errorAcceptorMock);
xtext2EcoreTransformer.setErrorAcceptor(errorAcceptorMock);
- List<EPackage> metamodels = xtext2EcoreTransformer.transform(grammar);
+ xtext2EcoreTransformer.transform(grammar);
+ List<EPackage> metamodels = xtext2EcoreTransformer.getGeneratedPackages(grammar);
verify(errorAcceptorMock);
assertNotNull(metamodels);
@@ -463,8 +464,6 @@ public class Xtext2EcoreTransformerTests extends AbstractGeneratorTest {
public void testImportWithoutAlias() throws Exception {
final String grammar = "language test generate test 'http://test' import 'http://www.eclipse.org/emf/2002/Ecore' RuleA: feature=ID;";
- errorAcceptorMock.acceptError(same(ErrorCode.AliasForMetamodelAlreadyExists), (String) anyObject(),
- (EObject) anyObject());
getEPackageFromGrammar(grammar);
}
@@ -500,26 +499,22 @@ public class Xtext2EcoreTransformerTests extends AbstractGeneratorTest {
grammar += " RuleA: featureA=ID;"; // no alias => cannot be created
grammar += " RuleB returns target::TypeB: featureB=ID;";
- errorAcceptorMock.acceptError(same(ErrorCode.AliasForMetamodelAlreadyExists), (String) anyObject(),
- (EObject) anyObject());
- errorAcceptorMock.acceptError(same(ErrorCode.UnknownMetaModelAlias), (String) anyObject(),
- (EObject) anyObject());
- errorAcceptorMock.acceptError(same(ErrorCode.UnknownMetaModelAlias), (String) anyObject(),
- (EObject) anyObject());
+ errorAcceptorMock.acceptError(same(ErrorCode.AliasForMetamodelAlreadyExists), (String) anyObject(), (EObject) anyObject());
+ errorAcceptorMock.acceptError(same(ErrorCode.UnknownMetaModelAlias), (String) anyObject(), (EObject) anyObject());
+ errorAcceptorMock.acceptError(same(ErrorCode.UnknownMetaModelAlias), (String) anyObject(), (EObject) anyObject());
+ errorAcceptorMock.acceptError(same(ErrorCode.UnknownMetaModelAlias), (String) anyObject(), (EObject) anyObject());
+ errorAcceptorMock.acceptError(same(ErrorCode.UnknownMetaModelAlias), (String) anyObject(), (EObject) anyObject());
errorAcceptorMock.acceptError(same(ErrorCode.NoSuchTypeAvailable), (String) anyObject(), (EObject) anyObject());
errorAcceptorMock.acceptError(same(ErrorCode.NoSuchTypeAvailable), (String) anyObject(), (EObject) anyObject());
List<EPackage> ePackages = getEPackagesFromGrammar(grammar);
- assertEquals(1, ePackages.size());
- EPackage t1 = ePackages.get(0);
- assertEquals("t1", t1.getName());
- assertTrue(t1.getEClassifiers().isEmpty());
+ assertEquals(0, ePackages.size());
}
public void testModifyingSealedModel() throws Exception {
final String grammar = "language test generate test 'http://test' import 'http://www.eclipse.org/emf/2002/Ecore' as ecore RuleA returns ecore::SomeNewTypeA: feature=ID;";
- errorAcceptorMock.acceptError(same(ErrorCode.CannotCreateTypeInSealedMetamodel), (String) anyObject(),
- (EObject) anyObject());
+ errorAcceptorMock.acceptError(same(ErrorCode.CannotCreateTypeInSealedMetamodel), (String) anyObject(), (EObject) anyObject());
+ errorAcceptorMock.acceptError(same(ErrorCode.CannotCreateTypeInSealedMetamodel), (String) anyObject(), (EObject) anyObject());
errorAcceptorMock.acceptError(same(ErrorCode.NoSuchTypeAvailable), (String) anyObject(), (EObject) anyObject());
getEPackageFromGrammar(grammar);
}
diff --git a/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguageGenProposalProvider.java b/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguageGenProposalProvider.java
index 682879d..be0c8f7 100644
--- a/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguageGenProposalProvider.java
+++ b/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguageGenProposalProvider.java
@@ -192,22 +192,22 @@ public class XtextGrammarTestLanguageGenProposalProvider extends AbstractPropos
return Collections.emptyList();
}
- public List<? extends ICompletionProposal> completeTypeRefAlias(Assignment assignment, EObject model, String prefix, IDocument doc,int offset) {
+ public List<? extends ICompletionProposal> completeTypeRefMetamodel(Assignment assignment, EObject model, String prefix, IDocument doc,int offset) {
if (logger.isDebugEnabled()) {
- logger.debug("completeTypeRefAlias feature '" + assignment.getFeature() + "' terminal '"
+ logger.debug("completeTypeRefMetamodel feature '" + assignment.getFeature() + "' terminal '"
+ assignment.getTerminal() + "' cardinality '" + assignment.getCardinality() + "' and prefix '"
+ prefix.trim() + "'");
}
- return Collections.singletonList(createCompletionProposal(assignment,model,"TypeRefAlias", offset));
+ return lookupCrossReference(((CrossReference)assignment.getTerminal()), model, prefix, offset);
}
- public List<? extends ICompletionProposal> completeTypeRefName(Assignment assignment, EObject model, String prefix, IDocument doc,int offset) {
+ public List<? extends ICompletionProposal> completeTypeRefType(Assignment assignment, EObject model, String prefix, IDocument doc,int offset) {
if (logger.isDebugEnabled()) {
- logger.debug("completeTypeRefName feature '" + assignment.getFeature() + "' terminal '"
+ logger.debug("completeTypeRefType feature '" + assignment.getFeature() + "' terminal '"
+ assignment.getTerminal() + "' cardinality '" + assignment.getCardinality() + "' and prefix '"
+ prefix.trim() + "'");
}
- return Collections.singletonList(createCompletionProposal(assignment,model,"TypeRefName", offset));
+ return lookupCrossReference(((CrossReference)assignment.getTerminal()), model, prefix, offset);
}
public List<? extends ICompletionProposal> completeAlternativesGroups(Assignment assignment, EObject model, String prefix, IDocument doc,int offset) {
@@ -328,14 +328,17 @@ public class XtextGrammarTestLanguageGenProposalProvider extends AbstractPropos
}
- public List<? extends ICompletionProposal> complete(RuleCall ruleCall, EObject model, String prefix,
- IDocument doc, int offset) {
- if (logger.isDebugEnabled()) {
- logger.debug("complete '" + ruleCall.getRule().getName() + "' cardinality '" + ruleCall.getCardinality()
- + "' for model '" + model + "' and prefix '" + prefix.trim() + "'");
- }
- return Collections.emptyList();
- }
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguageGenProposalProvider.java b/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguageGenProposalProvider.java
index 8341926..49e8efd 100644
--- a/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguageGenProposalProvider.java
+++ b/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ContentAssistTestLanguageGenProposalProvider.java
@@ -100,6 +100,11 @@ public class ContentAssistTestLanguageGenProposalProvider extends AbstractPropo
return lookupCrossReference(((CrossReference)assignment.getTerminal()), model, prefix, offset);
}
+
+
+
+
+
@Override
protected String getDefaultImageFilePath() {
return "icons/editor.gif";
diff --git a/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguageGenProposalProvider.java b/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguageGenProposalProvider.java
index 6b01b1e..36cd59d 100644
--- a/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguageGenProposalProvider.java
+++ b/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/ReferenceGrammarTestLanguageGenProposalProvider.java
@@ -191,6 +191,21 @@ public class ReferenceGrammarTestLanguageGenProposalProvider extends AbstractPr
}
+
+ public List<? extends ICompletionProposal> complete(RuleCall ruleCall, EObject model, String prefix,
+ IDocument doc, int offset) {
+ if (logger.isDebugEnabled()) {
+ logger.debug("complete '" + ruleCall.getRule().getName() + "' cardinality '" + ruleCall.getCardinality()
+ + "' for model '" + model + "' and prefix '" + prefix.trim() + "'");
+ }
+ return Collections.emptyList();
+ }
+
+
+
+
+
+
@Override
protected String getDefaultImageFilePath() {
return "icons/editor.gif";
diff --git a/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguageGenProposalProvider.java b/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguageGenProposalProvider.java
index f8f1187..8f6732c 100644
--- a/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguageGenProposalProvider.java
+++ b/tests/org.eclipse.xtext.ui.common.tests/src-gen/org/eclipse/xtext/testlanguages/TreeTestLanguageGenProposalProvider.java
@@ -82,6 +82,8 @@ public class TreeTestLanguageGenProposalProvider extends AbstractProposalProvid
return Collections.emptyList();
}
+
+
@Override
protected String getDefaultImageFilePath() {
return "icons/editor.gif";
diff --git a/tests/org.eclipse.xtext.ui.common.tests/src/org/eclipse/xtext/ui/common/editor/outline/OutlineViewTest.java b/tests/org.eclipse.xtext.ui.common.tests/src/org/eclipse/xtext/ui/common/editor/outline/OutlineViewTest.java
index ababcdc..755afa8 100644
--- a/tests/org.eclipse.xtext.ui.common.tests/src/org/eclipse/xtext/ui/common/editor/outline/OutlineViewTest.java
+++ b/tests/org.eclipse.xtext.ui.common.tests/src/org/eclipse/xtext/ui/common/editor/outline/OutlineViewTest.java
@@ -196,7 +196,7 @@ public class OutlineViewTest extends AbstractEditorTest {
});
Assert.isNotNull(rootNode);
- return ParseTreeUtil.getCurrentNodeByOffset(rootNode, offset);
+ return ParseTreeUtil.getCurrentOrPrecedingNodeByOffset(rootNode, offset);
}
protected void assertSynchronized(XtextEditor editor, int elementIndex, int offset, int length) {
diff --git a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/AbstractTestLanguageRuntimeConfig.java b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/AbstractTestLanguageRuntimeConfig.java
index 2fc4104..f808115 100644
--- a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/AbstractTestLanguageRuntimeConfig.java
+++ b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/AbstractTestLanguageRuntimeConfig.java
@@ -9,14 +9,14 @@ import org.eclipse.xtext.service.AbstractServiceRegistrationFactory;
*/
public abstract class AbstractTestLanguageRuntimeConfig extends AbstractServiceRegistrationFactory {
- protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
- return org.eclipse.xtext.ui.core.services.TestLanguageGrammarAccess.class;
- }
-
protected Class<? extends org.eclipse.xtext.IMetamodelAccess> getIMetamodelAccess() {
return org.eclipse.xtext.ui.core.services.TestLanguageMetamodelAccess.class;
}
+ protected Class<? extends org.eclipse.xtext.IGrammarAccess> getIGrammarAccess() {
+ return org.eclipse.xtext.ui.core.services.TestLanguageGrammarAccess.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.IAstFactory> getIAstFactory() {
return org.eclipse.xtext.parser.GenericEcoreElementFactory.class;
}
@@ -45,6 +45,10 @@ public abstract class AbstractTestLanguageRuntimeConfig extends AbstractServiceR
return org.eclipse.xtext.parsetree.reconstr.impl.SimpleCrossReferenceSerializer.class;
}
+ protected Class<? extends org.eclipse.xtext.parsetree.reconstr.ITransientValueService> getITransientValueService() {
+ return org.eclipse.xtext.parsetree.reconstr.impl.SimpleTransientValueService.class;
+ }
+
protected Class<? extends org.eclipse.xtext.parser.antlr.Lexer> getLexer() {
return org.eclipse.xtext.ui.core.parser.internal.InternalTestLanguageLexer.class;
}
@@ -52,8 +56,8 @@ public abstract class AbstractTestLanguageRuntimeConfig extends AbstractServiceR
public Set<IServiceRegistration> registrations() {
return scope(org.eclipse.xtext.ui.core.ITestLanguage.SCOPE)
- .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.with(org.eclipse.xtext.IMetamodelAccess.class, getIMetamodelAccess())
+ .with(org.eclipse.xtext.IGrammarAccess.class, getIGrammarAccess())
.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())
@@ -61,6 +65,7 @@ public abstract class AbstractTestLanguageRuntimeConfig extends AbstractServiceR
.with(org.eclipse.xtext.parsetree.reconstr.IParseTreeConstructor.class, getIParseTreeConstructor())
.with(org.eclipse.xtext.parsetree.reconstr.ITokenSerializer.class, getITokenSerializer())
.with(org.eclipse.xtext.parsetree.reconstr.ICrossReferenceSerializer.class, getICrossReferenceSerializer())
+ .with(org.eclipse.xtext.parsetree.reconstr.ITransientValueService.class, getITransientValueService())
.with(org.eclipse.xtext.parser.antlr.Lexer.class, getLexer())
.registrations();
diff --git a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/TestLanguage.xmi b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/TestLanguage.xmi
index deae47e..4bb419e 100644
--- a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/TestLanguage.xmi
+++ b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/TestLanguage.xmi
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
+<xtext:Grammar xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
<idElements>org</idElements>
<idElements>eclipse</idElements>
<idElements>xtext</idElements>
@@ -8,11 +8,17 @@
<idElements>TestLanguage</idElements>
<metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="foo" nsURI="http://foo"/>
<rules xsi:type="xtext:ParserRule" name="File">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://foo#//File"/>
+ </type>
<alternatives xsi:type="xtext:Assignment" cardinality="*" feature="stuff" operator="+=">
<terminal xsi:type="xtext:RuleCall" rule="//@rules.1"/>
</alternatives>
</rules>
<rules xsi:type="xtext:ParserRule" name="Stuff">
+ <type metamodel="//@metamodelDeclarations.0">
+ <type xsi:type="ecore:EClass" href="http://foo#//Stuff"/>
+ </type>
<alternatives xsi:type="xtext:Group">
<abstractTokens xsi:type="xtext:Keyword" value="stuff"/>
<abstractTokens xsi:type="xtext:Assignment" feature="name" operator="=">
diff --git a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageLexer.java b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageLexer.java
index 896b3d7..dbfebca 100644
--- a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageLexer.java
+++ b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0 ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g 2008-12-08 11:19:44
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g 2008-12-10 12:13:53
package org.eclipse.xtext.ui.core.parser.internal;
@@ -30,10 +30,10 @@ public class InternalTestLanguageLexer extends Lexer {
public String getGrammarFileName() { return "./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g"; }
// $ANTLR start T11
- public void mT11() throws RecognitionException {
+ public final void mT11() throws RecognitionException {
try {
int _type = T11;
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:10:7: ( 'stuff' )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:10:5: ( 'stuff' )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:10:7: 'stuff'
{
match("stuff");
@@ -49,10 +49,10 @@ public class InternalTestLanguageLexer extends Lexer {
// $ANTLR end T11
// $ANTLR start RULE_ID
- public void mRULE_ID() throws RecognitionException {
+ public final void mRULE_ID() throws RecognitionException {
try {
int _type = RULE_ID;
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:131:11: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:131:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:131:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
{
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:131:11: ( '^' )?
@@ -128,10 +128,10 @@ public class InternalTestLanguageLexer extends Lexer {
// $ANTLR end RULE_ID
// $ANTLR start RULE_INT
- public void mRULE_INT() throws RecognitionException {
+ public final void mRULE_INT() throws RecognitionException {
try {
int _type = RULE_INT;
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:133:12: ( ( '0' .. '9' )+ )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:133:10: ( ( '0' .. '9' )+ )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:133:12: ( '0' .. '9' )+
{
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:133:12: ( '0' .. '9' )+
@@ -175,10 +175,10 @@ public class InternalTestLanguageLexer extends Lexer {
// $ANTLR end RULE_INT
// $ANTLR start RULE_STRING
- public void mRULE_STRING() throws RecognitionException {
+ public final void mRULE_STRING() throws RecognitionException {
try {
int _type = RULE_STRING;
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:135:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:135:13: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' )
int alt6=2;
int LA6_0 = input.LA(1);
@@ -329,10 +329,10 @@ public class InternalTestLanguageLexer extends Lexer {
// $ANTLR end RULE_STRING
// $ANTLR start RULE_ML_COMMENT
- public void mRULE_ML_COMMENT() throws RecognitionException {
+ public final void mRULE_ML_COMMENT() throws RecognitionException {
try {
int _type = RULE_ML_COMMENT;
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:137:19: ( '/*' ( options {greedy=false; } : . )* '*/' )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:137:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:137:19: '/*' ( options {greedy=false; } : . )* '*/'
{
match("/*");
@@ -388,10 +388,10 @@ public class InternalTestLanguageLexer extends Lexer {
// $ANTLR end RULE_ML_COMMENT
// $ANTLR start RULE_SL_COMMENT
- public void mRULE_SL_COMMENT() throws RecognitionException {
+ public final void mRULE_SL_COMMENT() throws RecognitionException {
try {
int _type = RULE_SL_COMMENT;
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:139:19: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:139:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:139:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )?
{
match("//");
@@ -478,10 +478,10 @@ public class InternalTestLanguageLexer extends Lexer {
// $ANTLR end RULE_SL_COMMENT
// $ANTLR start RULE_WS
- public void mRULE_WS() throws RecognitionException {
+ public final void mRULE_WS() throws RecognitionException {
try {
int _type = RULE_WS;
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:141:11: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:141:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:141:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
{
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:141:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
@@ -535,10 +535,10 @@ public class InternalTestLanguageLexer extends Lexer {
// $ANTLR end RULE_WS
// $ANTLR start RULE_ANY_OTHER
- public void mRULE_ANY_OTHER() throws RecognitionException {
+ public final void mRULE_ANY_OTHER() throws RecognitionException {
try {
int _type = RULE_ANY_OTHER;
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:143:18: ( . )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:143:16: ( . )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:143:18: .
{
matchAny();
@@ -553,7 +553,7 @@ public class InternalTestLanguageLexer extends Lexer {
// $ANTLR end RULE_ANY_OTHER
public void mTokens() throws RecognitionException {
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:1:10: ( T11 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:1:8: ( T11 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
int alt12=8;
int LA12_0 = input.LA(1);
diff --git a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageParser.java b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageParser.java
index 26dbfee..198cdb9 100644
--- a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageParser.java
+++ b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguageParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0 ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g 2008-12-08 11:19:44
+// $ANTLR 3.0.1 ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g 2008-12-10 12:13:52
package org.eclipse.xtext.ui.core.parser.internal;
@@ -62,14 +62,14 @@ public class InternalTestLanguageParser extends AbstractAntlrParser {
// $ANTLR start entryRuleFile
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:62:1: entryRuleFile returns [EObject current=null] : iv_ruleFile= ruleFile EOF ;
- public EObject entryRuleFile() throws RecognitionException {
+ public final EObject entryRuleFile() throws RecognitionException {
EObject current = null;
EObject iv_ruleFile = null;
try {
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:63:2: (iv_ruleFile= ruleFile EOF )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:62:46: (iv_ruleFile= ruleFile EOF )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:63:2: iv_ruleFile= ruleFile EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/ui/core/TestLanguage.xmi#//@rules.0" /* xtext::ParserRule */, currentNode);
@@ -97,7 +97,7 @@ public class InternalTestLanguageParser extends AbstractAntlrParser {
// $ANTLR start ruleFile
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:70:1: ruleFile returns [EObject current=null] : (lv_stuff= ruleStuff )* ;
- public EObject ruleFile() throws RecognitionException {
+ public final EObject ruleFile() throws RecognitionException {
EObject current = null;
EObject lv_stuff = null;
@@ -105,7 +105,7 @@ public class InternalTestLanguageParser extends AbstractAntlrParser {
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:73:1: ( (lv_stuff= ruleStuff )* )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:72:33: ( (lv_stuff= ruleStuff )* )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:73:1: (lv_stuff= ruleStuff )*
{
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:73:1: (lv_stuff= ruleStuff )*
@@ -167,14 +167,14 @@ public class InternalTestLanguageParser extends AbstractAntlrParser {
// $ANTLR start entryRuleStuff
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:95:1: entryRuleStuff returns [EObject current=null] : iv_ruleStuff= ruleStuff EOF ;
- public EObject entryRuleStuff() throws RecognitionException {
+ public final EObject entryRuleStuff() throws RecognitionException {
EObject current = null;
EObject iv_ruleStuff = null;
try {
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:96:2: (iv_ruleStuff= ruleStuff EOF )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:95:47: (iv_ruleStuff= ruleStuff EOF )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:96:2: iv_ruleStuff= ruleStuff EOF
{
currentNode = createCompositeNode("classpath:/org/eclipse/xtext/ui/core/TestLanguage.xmi#//@rules.1" /* xtext::ParserRule */, currentNode);
@@ -202,14 +202,14 @@ public class InternalTestLanguageParser extends AbstractAntlrParser {
// $ANTLR start ruleStuff
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:103:1: ruleStuff returns [EObject current=null] : ( 'stuff' (lv_name= RULE_ID ) ) ;
- public EObject ruleStuff() throws RecognitionException {
+ public final EObject ruleStuff() throws RecognitionException {
EObject current = null;
Token lv_name=null;
EObject temp=null; setCurrentLookahead(); resetLookahead();
try {
- // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:106:1: ( ( 'stuff' (lv_name= RULE_ID ) ) )
+ // ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:105:33: ( ( 'stuff' (lv_name= RULE_ID ) ) )
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:106:1: ( 'stuff' (lv_name= RULE_ID ) )
{
// ./src-gen/org/eclipse/xtext/ui/core/parser/internal/InternalTestLanguage.g:106:1: ( 'stuff' (lv_name= RULE_ID ) )
diff --git a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parsetree/reconstr/TestLanguageParseTreeConstructor.java b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parsetree/reconstr/TestLanguageParseTreeConstructor.java
index c901e6b..a2c2c07 100644
--- a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parsetree/reconstr/TestLanguageParseTreeConstructor.java
+++ b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/parsetree/reconstr/TestLanguageParseTreeConstructor.java
@@ -16,6 +16,7 @@ import org.eclipse.xtext.ui.core.services.TestLanguageGrammarAccess;
public class TestLanguageParseTreeConstructor extends AbstractParseTreeConstructor {
public IAbstractToken serialize(EObject object) {
+ if(object == null) throw new IllegalArgumentException("The to-be-serialialized model is null");
Solution t = internalSerialize(object);
if(t == null) throw new XtextSerializationException(getDescr(object), "No rule found for serialization");
return t.getPredecessor();
@@ -48,7 +49,7 @@ protected class File_Assignment_stuff extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("stuff",required)) == null) return null;
+ if((value = current.getConsumable("stuff",!IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("stuff");
if(value instanceof EObject) { // xtext::RuleCall
IInstanceDescription param = getDescr((EObject)value);
@@ -125,7 +126,7 @@ protected class Stuff_1_Assignment_name extends AssignmentToken {
}
protected Solution createSolution() {
- if((value = current.getConsumable("name",required)) == null) return null;
+ if((value = current.getConsumable("name",IS_REQUIRED)) == null) return null;
IInstanceDescription obj = current.cloneAndConsume("name");
if(true) { // xtext::RuleCall FIXME: check if value is valid for lexer rule
type = AssignmentType.LRC;
diff --git a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/services/TestLanguageGrammarAccess.java b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/services/TestLanguageGrammarAccess.java
index d1abeca..53999aa 100644
--- a/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/services/TestLanguageGrammarAccess.java
+++ b/tests/org.eclipse.xtext.ui.core.tests/src-gen/org/eclipse/xtext/ui/core/services/TestLanguageGrammarAccess.java
@@ -22,7 +22,7 @@ public class TestLanguageGrammarAccess extends BaseEPackageAccess implements IGr
// ( stuff += Stuff ) *
public Assignment eleAssignmentStuff() {
- return (cAssignmentStuff != null) ? cAssignmentStuff : (cAssignmentStuff = (Assignment)getRule().eContents().get(0));
+ return (cAssignmentStuff != null) ? cAssignmentStuff : (cAssignmentStuff = (Assignment)getRule().eContents().get(1));
}
// Stuff
@@ -45,7 +45,7 @@ public class TestLanguageGrammarAccess extends BaseEPackageAccess implements IGr
// 'stuff' name = ID
public Group eleGroup() {
- return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(0));
+ return (cGroup != null) ? cGroup : (cGroup = (Group)getRule().eContents().get(1));
}
// 'stuff'