From b6871001dd7daf0e3b68f320bc34db06dc0632af Mon Sep 17 00:00:00 2001 From: Sven Efftinge Date: Fri, 13 Nov 2015 15:40:48 +0100 Subject: [PATCH] migrated BacktrackLexerTestLanguage (part 1) --- .../parser/antlr/GrammarNaming.xtend | 10 +++++- .../BacktrackingLexerTestLanguage.ecore | 31 +++++++++++++++++++ .../BacktrackingLexerTestLanguage.genmodel | 31 +++++++++++++++++++ .../xtext/GenerateAllTestLanguages2.mwe2 | 30 +++++++++--------- 4 files changed, 86 insertions(+), 16 deletions(-) create mode 100644 tests/org.eclipse.xtext.tests/model/generated/BacktrackingLexerTestLanguage.ecore create mode 100644 tests/org.eclipse.xtext.tests/model/generated/BacktrackingLexerTestLanguage.genmodel diff --git a/plugins/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/parser/antlr/GrammarNaming.xtend b/plugins/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/parser/antlr/GrammarNaming.xtend index 7b60e048d..5f0f2fea2 100644 --- a/plugins/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/parser/antlr/GrammarNaming.xtend +++ b/plugins/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/parser/antlr/GrammarNaming.xtend @@ -32,13 +32,21 @@ class GrammarNaming { protected def String getInternalParserPackage(Grammar it) { parserPackage + ".internal" } + + protected def String getInternalLexerPackage(Grammar it) { + parserPackage + ".lexer" + } def AntlrGrammar getParserGrammar(Grammar it) { new AntlrGrammar(internalParserPackage, '''«grammarNamePrefix»Internal«simpleName»«IF !combinedGrammar»Parser«ENDIF»''') } def AntlrGrammar getLexerGrammar(Grammar it) { - new AntlrGrammar(internalParserPackage, '''«grammarNamePrefix»Internal«simpleName»«IF !combinedGrammar»Lexer«ENDIF»''') + if (combinedGrammar) { + getParserGrammar(it) + } else { + new AntlrGrammar(internalLexerPackage, '''«grammarNamePrefix»Internal«simpleName»Lexer''') + } } protected def String getGrammarNamePrefix(Grammar it) { diff --git a/tests/org.eclipse.xtext.tests/model/generated/BacktrackingLexerTestLanguage.ecore b/tests/org.eclipse.xtext.tests/model/generated/BacktrackingLexerTestLanguage.ecore new file mode 100644 index 000000000..341657813 --- /dev/null +++ b/tests/org.eclipse.xtext.tests/model/generated/BacktrackingLexerTestLanguage.ecore @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/org.eclipse.xtext.tests/model/generated/BacktrackingLexerTestLanguage.genmodel b/tests/org.eclipse.xtext.tests/model/generated/BacktrackingLexerTestLanguage.genmodel new file mode 100644 index 000000000..787632545 --- /dev/null +++ b/tests/org.eclipse.xtext.tests/model/generated/BacktrackingLexerTestLanguage.genmodel @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/org.eclipse.xtext.tests/src/org/eclipse/xtext/GenerateAllTestLanguages2.mwe2 b/tests/org.eclipse.xtext.tests/src/org/eclipse/xtext/GenerateAllTestLanguages2.mwe2 index 888fbba58..271769f29 100644 --- a/tests/org.eclipse.xtext.tests/src/org/eclipse/xtext/GenerateAllTestLanguages2.mwe2 +++ b/tests/org.eclipse.xtext.tests/src/org/eclipse/xtext/GenerateAllTestLanguages2.mwe2 @@ -87,24 +87,24 @@ Workflow { } } } - language = TestLanguage { - name = "org.eclipse.xtext.generator.ecore.SuperTestLanguage" - } - language = TestLanguage { - name = "org.eclipse.xtext.generator.ecore.SubTestLanguage" - } +// language = TestLanguage { +// name = "org.eclipse.xtext.generator.ecore.SuperTestLanguage" +// } +// language = TestLanguage { +// name = "org.eclipse.xtext.generator.ecore.SubTestLanguage" +// } // language = TestLanguage { // name = "org.eclipse.xtext.XtextGrammarTestLanguage" // } -// language = TestLanguage { -// name = "org.eclipse.xtext.lexer.BacktrackingLexerTestLanguage" -// parserOptions = { -// backtrack = true -// backtrackLexer = true -// memoize = true -// classSplitting = true -// } -// } + language = TestLanguage { + name = "org.eclipse.xtext.lexer.BacktrackingLexerTestLanguage" + parserOptions = { + backtrack = true + backtrackLexer = true + memoize = true + classSplitting = true + } + } // // language = TestLanguage { // name = "org.eclipse.xtext.lexer.IgnoreCaseLexerTestLanguage"