mirror of
https://github.com/sigmasternchen/xtext-core
synced 2025-03-16 08:48:55 +00:00
Revert "Migration of runtime test languages"
This commit is contained in:
parent
5ffce2bc14
commit
14e7e6b8e2
17 changed files with 75 additions and 1197 deletions
|
@ -35,7 +35,7 @@ import org.eclipse.xtext.parser.antlr.Lexer
|
|||
import org.eclipse.xtext.parser.antlr.LexerBindings
|
||||
import org.eclipse.xtext.service.LanguageSpecific
|
||||
import org.eclipse.xtext.util.Modules2
|
||||
import org.eclipse.xtext.xtext.generator.AbstractStubGeneratingFragment
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.XtextGeneratorNaming
|
||||
import org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessExtensions
|
||||
import org.eclipse.xtext.xtext.generator.model.FileAccessFactory
|
||||
|
@ -49,10 +49,8 @@ import org.eclipse.xtext.xtext.generator.xbase.XbaseUsageDetector
|
|||
import static extension org.eclipse.xtext.EcoreUtil2.*
|
||||
import static extension org.eclipse.xtext.GrammarUtil.*
|
||||
import static extension org.eclipse.xtext.xtext.generator.model.TypeReference.*
|
||||
import com.google.inject.Injector
|
||||
import com.google.inject.Module
|
||||
|
||||
class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
|
||||
class IdeaPluginGenerator extends AbstractXtextGeneratorFragment {
|
||||
@Inject extension XtextGeneratorNaming
|
||||
@Inject extension XbaseUsageDetector
|
||||
@Inject ContentAssistGrammarNaming caNaming
|
||||
|
@ -398,28 +396,15 @@ class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
|
|||
}
|
||||
|
||||
def compileFileType(Grammar grammar) {
|
||||
if (isGenerateXtendStub) {
|
||||
fileAccessFactory.createXtendFile(grammar.fileType, '''
|
||||
class «grammar.fileType.simpleName» extends «grammar.abstractFileType» {
|
||||
public static final «grammar.fileType.simpleName» INSTANCE = new «grammar.fileType.simpleName»()
|
||||
|
||||
new() {
|
||||
super(«grammar.ideaLanguage».INSTANCE)
|
||||
}
|
||||
fileAccessFactory.createXtendFile(grammar.fileType, '''
|
||||
class «grammar.fileType.simpleName» extends «grammar.abstractFileType» {
|
||||
public static final «grammar.fileType.simpleName» INSTANCE = new «grammar.fileType.simpleName»()
|
||||
|
||||
new() {
|
||||
super(«grammar.ideaLanguage».INSTANCE)
|
||||
}
|
||||
''')
|
||||
} else {
|
||||
fileAccessFactory.createJavaFile(grammar.fileType, '''
|
||||
public class «grammar.fileType.simpleName» extends «grammar.abstractFileType» {
|
||||
public static final «grammar.fileType.simpleName» INSTANCE = new «grammar.fileType.simpleName»();
|
||||
|
||||
public «grammar.fileType.simpleName»() {
|
||||
super(«grammar.ideaLanguage».INSTANCE);
|
||||
}
|
||||
}
|
||||
''')
|
||||
|
||||
}
|
||||
}
|
||||
''')
|
||||
}
|
||||
|
||||
def compileLanguage(Grammar grammar) {
|
||||
|
@ -437,57 +422,29 @@ class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
|
|||
}
|
||||
|
||||
def compileStandaloneSetup(Grammar grammar) {
|
||||
if (isGenerateXtendStub) {
|
||||
fileAccessFactory.createXtendFile(grammar.ideaStandaloneSetup, '''
|
||||
class «grammar.ideaStandaloneSetup.simpleName» extends «grammar.runtimeGenSetup» {
|
||||
override createInjector() {
|
||||
val runtimeModule = new «grammar.runtimeModule»()
|
||||
val ideaModule = new «grammar.ideaModule»()
|
||||
val mergedModule = «Modules2».mixin(runtimeModule, ideaModule)
|
||||
return «Guice».createInjector(mergedModule)
|
||||
}
|
||||
fileAccessFactory.createXtendFile(grammar.ideaStandaloneSetup, '''
|
||||
class «grammar.ideaStandaloneSetup.simpleName» extends «grammar.runtimeGenSetup» {
|
||||
override createInjector() {
|
||||
val runtimeModule = new «grammar.runtimeModule»()
|
||||
val ideaModule = new «grammar.ideaModule»()
|
||||
val mergedModule = «Modules2».mixin(runtimeModule, ideaModule)
|
||||
return «Guice».createInjector(mergedModule)
|
||||
}
|
||||
''')
|
||||
} else {
|
||||
fileAccessFactory.createJavaFile(grammar.ideaStandaloneSetup, '''
|
||||
public class «grammar.ideaStandaloneSetup.simpleName» extends «grammar.runtimeGenSetup» {
|
||||
@Override
|
||||
public «Injector» createInjector() {
|
||||
«grammar.runtimeModule» runtimeModule = new «grammar.runtimeModule»();
|
||||
«grammar.ideaModule» ideaModule = new «grammar.ideaModule»();
|
||||
«Module» mergedModule = «Modules2».mixin(runtimeModule, ideaModule);
|
||||
return «Guice».createInjector(mergedModule);
|
||||
}
|
||||
}
|
||||
''')
|
||||
}
|
||||
}
|
||||
''')
|
||||
}
|
||||
|
||||
def compileIdeaSetup(Grammar grammar) {
|
||||
if (generateXtendStub) {
|
||||
fileAccessFactory.createXtendFile(grammar.ideaSetup, '''
|
||||
class «grammar.ideaSetup.simpleName» implements «ISetup» {
|
||||
|
||||
override createInjectorAndDoEMFRegistration() {
|
||||
«"org.eclipse.xtext.idea.extensions.EcoreGlobalRegistries".typeRef».ensureInitialized
|
||||
new «grammar.ideaStandaloneSetup»().createInjector
|
||||
}
|
||||
|
||||
fileAccessFactory.createXtendFile(grammar.ideaSetup, '''
|
||||
class «grammar.ideaSetup.simpleName» implements «ISetup» {
|
||||
|
||||
override createInjectorAndDoEMFRegistration() {
|
||||
«"org.eclipse.xtext.idea.extensions.EcoreGlobalRegistries".typeRef».ensureInitialized
|
||||
new «grammar.ideaStandaloneSetup»().createInjector
|
||||
}
|
||||
''')
|
||||
} else {
|
||||
fileAccessFactory.createJavaFile(grammar.ideaSetup, '''
|
||||
public class «grammar.ideaSetup.simpleName» implements «ISetup» {
|
||||
|
||||
@Override
|
||||
public «Injector» createInjectorAndDoEMFRegistration() {
|
||||
«"org.eclipse.xtext.idea.extensions.EcoreGlobalRegistries".typeRef».ensureInitialized();
|
||||
return new «grammar.ideaStandaloneSetup»().createInjector();
|
||||
}
|
||||
|
||||
}
|
||||
''')
|
||||
}
|
||||
|
||||
}
|
||||
''')
|
||||
}
|
||||
|
||||
def compileElementTypeProvider(Grammar grammar) {
|
||||
|
@ -677,7 +634,7 @@ class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
|
|||
«IF rule.named»
|
||||
return new «'org.eclipse.xtext.psi.impl.PsiNamedEObjectImpl'.typeRef»(node) {};
|
||||
«ELSE»
|
||||
return new «'org.eclipse.xtext.psi.impl.PsiEObjectImpl'.typeRef»(node) {};
|
||||
return new «'org.eclipse.xtext.psi.impl.PsiEObjectImpl'»(node) {};
|
||||
«ENDIF»
|
||||
}
|
||||
«FOR element : rule.EObjectElements»
|
||||
|
@ -685,7 +642,7 @@ class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
|
|||
«IF element.named»
|
||||
return new «'org.eclipse.xtext.psi.impl.PsiNamedEObjectImpl'.typeRef»(node) {};
|
||||
«ELSE»
|
||||
return new «'org.eclipse.xtext.psi.impl.PsiEObjectImpl'.typeRef»(node) {};
|
||||
return new «'org.eclipse.xtext.psi.impl.PsiEObjectImpl'»(node) {};
|
||||
«ENDIF»
|
||||
}
|
||||
«ENDFOR»
|
||||
|
@ -732,35 +689,18 @@ class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
|
|||
}
|
||||
|
||||
def JavaFileAccess compileCompletionContributor(Grammar grammar) {
|
||||
if (isGenerateXtendStub) {
|
||||
|
||||
fileAccessFactory.createXtendFile(grammar.completionContributor, '''
|
||||
class «grammar.completionContributor.simpleName» extends «grammar.abstractCompletionContributor» {
|
||||
new() {
|
||||
this(«grammar.ideaLanguage».INSTANCE)
|
||||
}
|
||||
|
||||
new(«"org.eclipse.xtext.idea.lang.AbstractXtextLanguage".typeRef» lang) {
|
||||
super(lang)
|
||||
//custom rules here
|
||||
}
|
||||
fileAccessFactory.createXtendFile(grammar.completionContributor, '''
|
||||
class «grammar.completionContributor.simpleName» extends «grammar.abstractCompletionContributor» {
|
||||
new() {
|
||||
this(«grammar.ideaLanguage».INSTANCE)
|
||||
}
|
||||
''')
|
||||
} else {
|
||||
|
||||
fileAccessFactory.createJavaFile(grammar.completionContributor, '''
|
||||
public class «grammar.completionContributor.simpleName» extends «grammar.abstractCompletionContributor» {
|
||||
public «grammar.completionContributor.simpleName»() {
|
||||
this(«grammar.ideaLanguage».INSTANCE);
|
||||
}
|
||||
|
||||
public «grammar.completionContributor.simpleName»(«"org.eclipse.xtext.idea.lang.AbstractXtextLanguage".typeRef» lang) {
|
||||
super(lang);
|
||||
//custom rules here
|
||||
}
|
||||
|
||||
new(«"org.eclipse.xtext.idea.lang.AbstractXtextLanguage".typeRef» lang) {
|
||||
super(lang)
|
||||
//custom rules here
|
||||
}
|
||||
''')
|
||||
}
|
||||
}
|
||||
''')
|
||||
}
|
||||
def TextFileAccess compileServicesISetup(Grammar grammar) {
|
||||
fileAccessFactory.createTextFile(
|
||||
|
@ -770,11 +710,7 @@ class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
|
|||
}
|
||||
|
||||
def JavaFileAccess compileFacetConfiguration(Grammar grammar) {
|
||||
val file = if (isGenerateXtendStub) {
|
||||
fileAccessFactory.createXtendFile(grammar.facetConfiguration)
|
||||
} else {
|
||||
fileAccessFactory.createJavaFile(grammar.facetConfiguration)
|
||||
}
|
||||
val file = fileAccessFactory.createXtendFile(grammar.facetConfiguration)
|
||||
file.importType("com.intellij.openapi.components.PersistentStateComponent".typeRef)
|
||||
file.importType("com.intellij.openapi.components.State".typeRef)
|
||||
file.importType("com.intellij.openapi.components.Storage".typeRef)
|
||||
|
@ -788,18 +724,11 @@ class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
|
|||
file.importType("org.eclipse.xtext.idea.facet.GeneratorConfigurationState".typeRef)
|
||||
}
|
||||
file.content = '''
|
||||
«IF isGenerateXtendStub»
|
||||
@State(name = "«grammar.name»Generator", storages = #[
|
||||
@Storage(id = "default", file = StoragePathMacros.PROJECT_FILE),
|
||||
@Storage(id = "dir", file = StoragePathMacros.PROJECT_CONFIG_DIR
|
||||
+ "/«grammar.simpleName»GeneratorConfig.xml", scheme = StorageScheme.DIRECTORY_BASED)])
|
||||
«ELSE»
|
||||
@State(name = "«grammar.name»Generator", storages = {
|
||||
@Storage(id = "default", file = StoragePathMacros.PROJECT_FILE),
|
||||
@Storage(id = "dir", file = StoragePathMacros.PROJECT_CONFIG_DIR
|
||||
+ "/«grammar.simpleName»GeneratorConfig.xml", scheme = StorageScheme.DIRECTORY_BASED)})
|
||||
«ENDIF»
|
||||
«IF !isGenerateXtendStub»public«ENDIF» class «grammar.facetConfiguration.simpleName» extends «IF grammar.inheritsXbase»XbaseFacetConfiguration implements PersistentStateComponent<XbaseGeneratorConfigurationState>«ELSE»AbstractFacetConfiguration implements PersistentStateComponent<GeneratorConfigurationState>«ENDIF»{
|
||||
@State(name = "«grammar.name»Generator", storages = #[
|
||||
@Storage(id = "default", file = StoragePathMacros.PROJECT_FILE),
|
||||
@Storage(id = "dir", file = StoragePathMacros.PROJECT_CONFIG_DIR
|
||||
+ "/«grammar.simpleName»GeneratorConfig.xml", scheme = StorageScheme.DIRECTORY_BASED)])
|
||||
class «grammar.facetConfiguration.simpleName» extends «IF grammar.inheritsXbase»XbaseFacetConfiguration implements PersistentStateComponent<XbaseGeneratorConfigurationState>«ELSE»AbstractFacetConfiguration implements PersistentStateComponent<GeneratorConfigurationState>«ENDIF»{
|
||||
|
||||
}
|
||||
'''
|
||||
|
@ -838,16 +767,9 @@ class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
|
|||
}
|
||||
|
||||
def JavaFileAccess compileColorSettingsPage(Grammar grammar) {
|
||||
if (isGenerateXtendStub) {
|
||||
fileAccessFactory.createXtendFile(grammar.colorSettingsPage, '''
|
||||
class «grammar.colorSettingsPage.simpleName» extends «grammar.baseColorSettingsPage» {
|
||||
}
|
||||
''')
|
||||
} else {
|
||||
fileAccessFactory.createJavaFile(grammar.colorSettingsPage, '''
|
||||
public class «grammar.colorSettingsPage.simpleName» extends «grammar.baseColorSettingsPage» {
|
||||
}
|
||||
''')
|
||||
}
|
||||
fileAccessFactory.createXtendFile(grammar.colorSettingsPage, '''
|
||||
class «grammar.colorSettingsPage.simpleName» extends «grammar.baseColorSettingsPage» {
|
||||
}
|
||||
''')
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,12 +34,7 @@ class RuntimeProjectConfig extends BundleProjectConfig implements IRuntimeProjec
|
|||
val relativePath = ecoreModel.path.substring(root.path.length).replace('\\', '/')
|
||||
return CharMatcher.is('/').trimFrom(relativePath)
|
||||
}
|
||||
throw new RuntimeException('''
|
||||
Could not derive the Ecore model folder from the project configuration.
|
||||
Please make sure that \'root\' is a prefix of \'ecoreModel\'.
|
||||
was (root='«root.path»', ecoreModel='«ecoreModel.path»')
|
||||
|
||||
''')
|
||||
throw new RuntimeException('Could not derive the Ecore model folder from the project configuration. Please make sure that \'root\' is a prefix of \'ecoreModel\'.')
|
||||
}
|
||||
|
||||
override initialize(Injector injector) {
|
||||
|
|
|
@ -24,9 +24,6 @@ class SubProjectConfig implements ISubProjectConfig {
|
|||
@Accessors
|
||||
boolean enabled
|
||||
|
||||
@Accessors
|
||||
boolean overwriteSrc
|
||||
|
||||
@Accessors
|
||||
String name
|
||||
|
||||
|
@ -75,19 +72,19 @@ class SubProjectConfig implements ISubProjectConfig {
|
|||
|
||||
override initialize(Injector injector) {
|
||||
injector.injectMembers(this)
|
||||
if (!rootPath.isNullOrEmpty) {
|
||||
if (rootPath !== null) {
|
||||
root = owner.newFileSystemAccess(rootPath, true)
|
||||
root.initialize(injector)
|
||||
}
|
||||
if (!metaInfPath.isNullOrEmpty) {
|
||||
if (metaInfPath !== null) {
|
||||
metaInf = owner.newFileSystemAccess(metaInfPath, true)
|
||||
metaInf.initialize(injector)
|
||||
}
|
||||
if (!srcPath.isNullOrEmpty) {
|
||||
src = owner.newFileSystemAccess(srcPath, overwriteSrc)
|
||||
if (srcPath !== null) {
|
||||
src = owner.newFileSystemAccess(srcPath, false)
|
||||
src.initialize(injector)
|
||||
}
|
||||
if (!srcGenPath.isNullOrEmpty) {
|
||||
if (srcGenPath !== null) {
|
||||
srcGen = owner.newFileSystemAccess(srcGenPath, true)
|
||||
srcGen.initialize(injector)
|
||||
}
|
||||
|
|
|
@ -94,8 +94,6 @@ abstract class AbstractAntlrGrammarGenerator {
|
|||
«compileTokens(options)»
|
||||
«compileLexerHeader(options)»
|
||||
«compileKeywordRules(options)»
|
||||
|
||||
// Rules duplicated to allow inter-rule references
|
||||
«compileTerminalRules(options)»
|
||||
'''
|
||||
|
||||
|
@ -198,28 +196,22 @@ abstract class AbstractAntlrGrammarGenerator {
|
|||
val allKeywords = allKeywords.sort.sortBy[-length]
|
||||
val allTerminalRules = allTerminalRules
|
||||
|
||||
val synthetic_kw_alternatives = newArrayList
|
||||
synthetic_kw_alternatives.addAll(allKeywords.indexed.map[
|
||||
val ruleName = keywordHelper.getRuleName(value)
|
||||
return '''(FRAGMENT_«ruleName»)=> FRAGMENT_«ruleName» {$type = «ruleName»; }'''
|
||||
])
|
||||
synthetic_kw_alternatives.addAll(allTerminalRules.indexed.map[
|
||||
if (!isSyntheticTerminalRule(value) && !value.fragment) {
|
||||
return '''(FRAGMENT_«value.ruleName»)=> FRAGMENT_«value.ruleName» {$type = «value.ruleName»; }'''
|
||||
}
|
||||
].filterNull.toList)
|
||||
|
||||
'''
|
||||
«IF options.isBacktrackLexer»
|
||||
SYNTHETIC_ALL_KEYWORDS :
|
||||
«FOR kw: synthetic_kw_alternatives SEPARATOR ' |'»
|
||||
«kw»
|
||||
«ENDFOR»
|
||||
«FOR kw: allKeywords.indexed»
|
||||
(FRAGMENT_«keywordHelper.getRuleName(kw.value)»)=> FRAGMENT_«keywordHelper.getRuleName(kw.value)» {$type = «keywordHelper.getRuleName(kw.value)»; }
|
||||
«IF kw.key != allKeywords.size || !allTerminalRules().isEmpty»|«ENDIF»
|
||||
«ENDFOR»
|
||||
«FOR rule : allTerminalRules.indexed»
|
||||
«IF !isSyntheticTerminalRule(rule.value) && !rule.value.fragment»
|
||||
(FRAGMENT_«rule.value.ruleName()»)=> FRAGMENT_«rule.value.ruleName()» {$type = «rule.value.ruleName()»; }
|
||||
«IF rule.key != allTerminalRules.size»|«ENDIF»
|
||||
«ENDIF»
|
||||
«ENDFOR»
|
||||
;
|
||||
|
||||
«FOR kw: allKeywords»
|
||||
fragment FRAGMENT_«keywordHelper.getRuleName(kw)» : '«kw.toAntlrString()»';
|
||||
|
||||
«ENDFOR»
|
||||
«ELSE»
|
||||
«FOR rule:allKeywords»
|
||||
|
|
|
@ -32,21 +32,13 @@ 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) {
|
||||
if (combinedGrammar) {
|
||||
getParserGrammar(it)
|
||||
} else {
|
||||
new AntlrGrammar(internalLexerPackage, '''«grammarNamePrefix»Internal«simpleName»Lexer''')
|
||||
}
|
||||
new AntlrGrammar(internalParserPackage, '''«grammarNamePrefix»Internal«simpleName»«IF !combinedGrammar»Lexer«ENDIF»''')
|
||||
}
|
||||
|
||||
protected def String getGrammarNamePrefix(Grammar it) {
|
||||
|
|
|
@ -1,31 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ecore:EPackage 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" name="backtrackingTestLanguage" nsURI="http://www.eclipse.org/2008/tmf/xtext/BacktrackingLexerTest"
|
||||
nsPrefix="backtrackingTestLanguage">
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Model">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="enums" unique="false" upperBound="-1"
|
||||
eType="#//EnumName"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="ycs" unique="false" upperBound="-1"
|
||||
eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="abs" upperBound="-1" eType="#//Ab"
|
||||
containment="true"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="xbs" upperBound="-1" eType="#//Xb"
|
||||
containment="true"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="ys" unique="false" upperBound="-1"
|
||||
eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="as" unique="false" upperBound="-1"
|
||||
eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Ab">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Xb">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EEnum" name="EnumName">
|
||||
<eLiterals name="abc" literal="Abc"/>
|
||||
<eLiterals name="efg" value="1" literal="Efg"/>
|
||||
</eClassifiers>
|
||||
</ecore:EPackage>
|
|
@ -1,31 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
|
||||
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="generated by Xtext" modelDirectory="/org.eclipse.xtext.tests/src-gen"
|
||||
modelPluginID="org.eclipse.xtext.tests" forceOverwrite="true" modelName="BacktrackingLexerTestLanguage"
|
||||
updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
|
||||
complianceLevel="6.0" copyrightFields="false" runtimeVersion="2.11" usedGenPackages="platform:/resource/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
|
||||
<genPackages prefix="BacktrackingTestLanguage" basePackage="org.eclipse.xtext.lexer"
|
||||
disposableProviderFactory="true" fileExtensions="backtrackinglexertestlanguage"
|
||||
ecorePackage="BacktrackingLexerTestLanguage.ecore#/">
|
||||
<genEnums typeSafeEnumCompatible="false" ecoreEnum="BacktrackingLexerTestLanguage.ecore#//EnumName">
|
||||
<genEnumLiterals ecoreEnumLiteral="BacktrackingLexerTestLanguage.ecore#//EnumName/abc"/>
|
||||
<genEnumLiterals ecoreEnumLiteral="BacktrackingLexerTestLanguage.ecore#//EnumName/efg"/>
|
||||
</genEnums>
|
||||
<genClasses ecoreClass="BacktrackingLexerTestLanguage.ecore#//Model">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute BacktrackingLexerTestLanguage.ecore#//Model/enums"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute BacktrackingLexerTestLanguage.ecore#//Model/ycs"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference BacktrackingLexerTestLanguage.ecore#//Model/abs"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference BacktrackingLexerTestLanguage.ecore#//Model/xbs"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute BacktrackingLexerTestLanguage.ecore#//Model/ys"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute BacktrackingLexerTestLanguage.ecore#//Model/as"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="BacktrackingLexerTestLanguage.ecore#//Ab">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute BacktrackingLexerTestLanguage.ecore#//Ab/x"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute BacktrackingLexerTestLanguage.ecore#//Ab/y"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="BacktrackingLexerTestLanguage.ecore#//Xb">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute BacktrackingLexerTestLanguage.ecore#//Xb/x"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute BacktrackingLexerTestLanguage.ecore#//Xb/y"/>
|
||||
</genClasses>
|
||||
</genPackages>
|
||||
</genmodel:GenModel>
|
|
@ -1,12 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ecore:EPackage 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" name="subPackage" nsURI="http://www.eclipse.org/2009/tmf/xtext/SubTestLanguage"
|
||||
nsPrefix="subPackage">
|
||||
<eClassifiers xsi:type="ecore:EClass" name="SubMain">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="superMains" upperBound="-1"
|
||||
eType="ecore:EClass SuperTestLanguage.ecore#//SuperMain" containment="true"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="another" eType="#//AnotherSuperMain"
|
||||
containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="AnotherSuperMain" eSuperTypes="SuperTestLanguage.ecore#//AnotherSuperMain"/>
|
||||
</ecore:EPackage>
|
|
@ -1,15 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
|
||||
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="generated by Xtext" modelDirectory="/org.eclipse.xtext.tests/src-gen"
|
||||
modelPluginID="org.eclipse.xtext.tests" forceOverwrite="true" modelName="SubTestLanguage"
|
||||
updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
|
||||
complianceLevel="6.0" copyrightFields="false" runtimeVersion="2.11" usedGenPackages="SuperTestLanguage.genmodel#//superPackage">
|
||||
<genPackages prefix="SubPackage" basePackage="org.eclipse.xtext.generator.ecore"
|
||||
disposableProviderFactory="true" fileExtensions="subtestlanguage" ecorePackage="SubTestLanguage.ecore#/">
|
||||
<genClasses ecoreClass="SubTestLanguage.ecore#//SubMain">
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SubTestLanguage.ecore#//SubMain/superMains"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SubTestLanguage.ecore#//SubMain/another"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="SubTestLanguage.ecore#//AnotherSuperMain"/>
|
||||
</genPackages>
|
||||
</genmodel:GenModel>
|
|
@ -1,11 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ecore:EPackage 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" name="superPackage" nsURI="http://www.eclipse.org/2009/tmf/xtext/SuperTestLanguage"
|
||||
nsPrefix="superPackage">
|
||||
<eClassifiers xsi:type="ecore:EClass" name="SuperMain">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="AnotherSuperMain">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
</ecore:EPackage>
|
|
@ -1,16 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
|
||||
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="generated by Xtext" modelDirectory="/org.eclipse.xtext.tests/src-gen"
|
||||
modelPluginID="org.eclipse.xtext.tests" forceOverwrite="true" modelName="SuperTestLanguage"
|
||||
updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
|
||||
complianceLevel="6.0" copyrightFields="false" runtimeVersion="2.11" usedGenPackages="platform:/resource/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
|
||||
<genPackages prefix="SuperPackage" basePackage="org.eclipse.xtext.generator.ecore"
|
||||
disposableProviderFactory="true" fileExtensions="supertestlanguage" ecorePackage="SuperTestLanguage.ecore#/">
|
||||
<genClasses ecoreClass="SuperTestLanguage.ecore#//SuperMain">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SuperTestLanguage.ecore#//SuperMain/name"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="SuperTestLanguage.ecore#//AnotherSuperMain">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SuperTestLanguage.ecore#//AnotherSuperMain/name"/>
|
||||
</genClasses>
|
||||
</genPackages>
|
||||
</genmodel:GenModel>
|
|
@ -1,125 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ecore:EPackage 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" name="xtextTest" nsURI="http://www.eclipse.org/2008/Test/XtextTest"
|
||||
nsPrefix="xtextTest">
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Grammar">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="usedGrammars" unique="false"
|
||||
upperBound="-1" eType="#//Grammar"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="definesHiddenTokens" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="hiddenTokens" unique="false"
|
||||
upperBound="-1" eType="#//AbstractRule"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="metamodelDeclarations"
|
||||
upperBound="-1" eType="#//AbstractMetamodelDeclaration" containment="true"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="rules" upperBound="-1"
|
||||
eType="#//AbstractRule" containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="AbstractRule">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//TypeRef"
|
||||
containment="true"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="alternatives" eType="#//AbstractElement"
|
||||
containment="true"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="AbstractMetamodelDeclaration">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="ePackage" eType="ecore:EClass platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EPackage"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="alias" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="GeneratedMetamodel" eSuperTypes="#//AbstractMetamodelDeclaration">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="ReferencedMetamodel" eSuperTypes="#//AbstractMetamodelDeclaration"/>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="ParserRule" eSuperTypes="#//AbstractRule">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="fragment" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="wildcard" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="definesHiddenTokens" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="hiddenTokens" unique="false"
|
||||
upperBound="-1" eType="#//AbstractRule"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
|
||||
eType="#//Parameter" containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Parameter">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="TypeRef">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="metamodel" eType="#//AbstractMetamodelDeclaration"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="classifier" eType="ecore:EClass platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EClassifier"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="cardinality" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="predicated" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="firstSetPredicated" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Action" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//TypeRef"
|
||||
containment="true"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="feature" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Keyword" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="RuleCall" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="rule" eType="#//AbstractRule"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="arguments" upperBound="-1"
|
||||
eType="#//NamedArgument" containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="NamedArgument">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="literalValue" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="parameter" eType="#//Parameter"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//Parameter"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Assignment" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="feature" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="terminal" eType="#//AbstractElement"
|
||||
containment="true"/>
|
||||
</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="terminal" eType="#//AbstractElement"
|
||||
containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Group" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1"
|
||||
eType="#//AbstractElement" containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="TerminalRule" eSuperTypes="#//AbstractRule">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="fragment" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="AbstractNegatedToken" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="terminal" eType="#//AbstractElement"
|
||||
containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="NegatedToken" eSuperTypes="#//AbstractNegatedToken"/>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="UntilToken" eSuperTypes="#//AbstractNegatedToken"/>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Wildcard" eSuperTypes="#//AbstractElement"/>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="EOF" eSuperTypes="#//AbstractElement"/>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="EnumRule" eSuperTypes="#//AbstractRule"/>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="EnumLiteralDeclaration" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="enumLiteral" eType="ecore:EClass platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EEnumLiteral"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="literal" eType="#//Keyword"
|
||||
containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="Alternatives" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1"
|
||||
eType="#//AbstractElement" containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="ConditionalBranch" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="filtered" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="parameter" eType="#//Parameter"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="guardedElement" eType="#//AbstractElement"
|
||||
containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="UnorderedGroup" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1"
|
||||
eType="#//AbstractElement" containment="true"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="CharacterRange" eSuperTypes="#//AbstractElement">
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="left" eType="#//Keyword"
|
||||
containment="true"/>
|
||||
<eStructuralFeatures xsi:type="ecore:EReference" name="right" eType="#//Keyword"
|
||||
containment="true"/>
|
||||
</eClassifiers>
|
||||
</ecore:EPackage>
|
|
@ -1,109 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
|
||||
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="generated by Xtext" modelDirectory="/org.eclipse.xtext.tests/src-gen"
|
||||
modelPluginID="org.eclipse.xtext.tests" forceOverwrite="true" modelName="XtextGrammarTestLanguage"
|
||||
updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
|
||||
complianceLevel="6.0" copyrightFields="false" runtimeVersion="2.11" usedGenPackages="platform:/resource/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
|
||||
<genPackages prefix="XtextTest" basePackage="org.eclipse.xtext" disposableProviderFactory="true"
|
||||
fileExtensions="xtextgrammartestlanguage" ecorePackage="XtextGrammarTestLanguage.ecore#/">
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//Grammar">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//Grammar/name"/>
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//Grammar/usedGrammars"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//Grammar/definesHiddenTokens"/>
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//Grammar/hiddenTokens"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//Grammar/metamodelDeclarations"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//Grammar/rules"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//AbstractRule">
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//AbstractRule/type"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//AbstractRule/alternatives"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//AbstractRule/name"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//AbstractMetamodelDeclaration">
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//AbstractMetamodelDeclaration/ePackage"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//AbstractMetamodelDeclaration/alias"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//GeneratedMetamodel">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//GeneratedMetamodel/name"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//ReferencedMetamodel"/>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//ParserRule">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//ParserRule/fragment"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//ParserRule/wildcard"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//ParserRule/definesHiddenTokens"/>
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//ParserRule/hiddenTokens"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//ParserRule/parameters"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//Parameter">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//Parameter/name"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//TypeRef">
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//TypeRef/metamodel"/>
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//TypeRef/classifier"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//AbstractElement">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//AbstractElement/cardinality"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//AbstractElement/predicated"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//AbstractElement/firstSetPredicated"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//Action">
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//Action/type"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//Action/feature"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//Action/operator"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//Keyword">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//Keyword/value"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//RuleCall">
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//RuleCall/rule"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//RuleCall/arguments"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//NamedArgument">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//NamedArgument/literalValue"/>
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//NamedArgument/parameter"/>
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//NamedArgument/value"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//Assignment">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//Assignment/feature"/>
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//Assignment/operator"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//Assignment/terminal"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//CrossReference">
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//CrossReference/type"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//CrossReference/terminal"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//Group">
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//Group/elements"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//TerminalRule">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//TerminalRule/fragment"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//AbstractNegatedToken">
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//AbstractNegatedToken/terminal"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//NegatedToken"/>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//UntilToken"/>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//Wildcard"/>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//EOF"/>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//EnumRule"/>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//EnumLiteralDeclaration">
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//EnumLiteralDeclaration/enumLiteral"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//EnumLiteralDeclaration/literal"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//Alternatives">
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//Alternatives/elements"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//ConditionalBranch">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute XtextGrammarTestLanguage.ecore#//ConditionalBranch/filtered"/>
|
||||
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//ConditionalBranch/parameter"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//ConditionalBranch/guardedElement"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//UnorderedGroup">
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//UnorderedGroup/elements"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="XtextGrammarTestLanguage.ecore#//CharacterRange">
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//CharacterRange/left"/>
|
||||
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference XtextGrammarTestLanguage.ecore#//CharacterRange/right"/>
|
||||
</genClasses>
|
||||
</genPackages>
|
||||
</genmodel:GenModel>
|
|
@ -1,596 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright (c) 2010 itemis AG (http://www.itemis.eu) and others.
|
||||
* All rights reserved. This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License v1.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* http://www.eclipse.org/legal/epl-v10.html
|
||||
*******************************************************************************/
|
||||
module org.eclipse.xtext.GenerateAllTestLanguages2
|
||||
|
||||
import org.eclipse.emf.mwe2.runtime.workflow.Workflow
|
||||
import org.eclipse.emf.mwe.utils.*
|
||||
import org.eclipse.xtext.generator.*
|
||||
|
||||
var projectName = "org.eclipse.xtext.tests"
|
||||
var runtimeProject = "../${projectName}"
|
||||
var ideaProject = "../../intellij/org.eclipse.xtext.core.idea.tests"
|
||||
var lineDelimiter = '\n'
|
||||
|
||||
Workflow {
|
||||
bean = StandaloneSetup {
|
||||
ignoreBrokenProjectFiles = true
|
||||
platformUri = "${runtimeProject}/.."
|
||||
platformUri = "${runtimeProject}/../../plugins"
|
||||
scanClassPath = true
|
||||
uriMap = {
|
||||
from = "platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore"
|
||||
to = "platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore"
|
||||
}
|
||||
uriMap = {
|
||||
from = "platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel"
|
||||
to = "platform:/resource/org.eclipse.emf.ecore/model/Ecore.genmodel"
|
||||
}
|
||||
registerGenModelFile = "platform:/resource/${projectName}/src/org/eclipse/xtext/grammarinheritance/ametamodel.genmodel"
|
||||
registerGenModelFile = "platform:/resource/${projectName}/src/org/eclipse/xtext/generator/ecore/GenModelAccessTest.genmodel"
|
||||
registerGenModelFile = "platform:/resource/${projectName}/src/org/eclipse/xtext/generator/ecore/Genmodel.genmodel"
|
||||
registerGenModelFile = "platform:/resource/${projectName}/src/org/eclipse/xtext/generator/grammarAccess/ametamodel.genmodel"
|
||||
registerGenModelFile = "platform:/resource/${projectName}/src/org/eclipse/xtext/enumrules/enums.genmodel"
|
||||
registerGenModelFile = "platform:/resource/${projectName}/src/org/eclipse/xtext/metamodelreferencing/tests/EcoreReferences.genmodel"
|
||||
registerGenModelFile = "platform:/resource/org.eclipse.xtext/org/eclipse/xtext/Xtext.genmodel"
|
||||
registerGenModelFile = "platform:/resource/org.eclipse.emf.ecore/model/Ecore.genmodel"
|
||||
|
||||
registerGeneratedEPackage = "org.eclipse.xtext.grammarinheritance.ametamodel.AmetamodelPackage"
|
||||
registerGeneratedEPackage = "org.eclipse.xtext.XtextPackage"
|
||||
registerGeneratedEPackage = "org.eclipse.emf.ecore.EcorePackage"
|
||||
}
|
||||
|
||||
bean = ecore.EcoreSupportStandaloneSetup {}
|
||||
component = org.eclipse.emf.mwe2.ecore.EcoreGenerator {
|
||||
genModel = "platform:/resource/org.eclipse.xtext.tests/src/org/eclipse/xtext/generator/ecore/GenModelAccessTest.genmodel"
|
||||
srcPath = "foo"
|
||||
lineDelimiter = lineDelimiter
|
||||
}
|
||||
component = org.eclipse.xtext.generator.ecore.GenModelAccessTestGenerator {}
|
||||
|
||||
component = xtext.generator.XtextGenerator {
|
||||
cleaner = {
|
||||
enabled = false
|
||||
}
|
||||
configuration = xtext.generator.DefaultGeneratorModule {
|
||||
code = {
|
||||
preferXtendStubs = false
|
||||
fileHeader =
|
||||
"/*
|
||||
* generated by Xtext
|
||||
*/"
|
||||
}
|
||||
project = xtext.generator.model.project.StandardProjectConfig {
|
||||
baseName = projectName
|
||||
rootPath = ".."
|
||||
runtime = {
|
||||
enabled = true
|
||||
root = runtimeProject
|
||||
}
|
||||
runtimeTest = {
|
||||
enabled = true
|
||||
root = runtimeProject
|
||||
}
|
||||
ideaPlugin = {
|
||||
enabled = true
|
||||
root = ideaProject
|
||||
overwriteSrc = true
|
||||
}
|
||||
genericIde = {
|
||||
enabled = true
|
||||
root = ideaProject
|
||||
overwriteSrc = true
|
||||
}
|
||||
}
|
||||
}
|
||||
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.IgnoreCaseLexerTestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// ignoreCase = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.lazy.LazyLinkingTestLanguage"
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.Bug287988TestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.Bug289059TestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.Bug313089TestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.ImportUriTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.LangATestLanguage"
|
||||
// fragment = xtext.generator.scoping.ImportNamespacesScopingFragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.Bug362902"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.AbstractIgnoreCaseLinkingTestLanguage"
|
||||
// serializer = {
|
||||
// generateStub = false
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.IgnoreCaseNamespacesTestLanguage"
|
||||
// fragment = xtext.generator.scoping.ImportNamespacesScopingFragment2 {
|
||||
// ignoreCase = true
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.IgnoreCaseImportsTestLanguage"
|
||||
// fragment = adapter.FragmentAdapter {
|
||||
// fragment = scoping.ImportURIScopingFragment {
|
||||
// ignoreCase = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.linking.lazy.Bug311337TestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.dummy.DummyTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.enumrules.EnumRulesTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.enumrules.EnumAndReferenceTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.enumrules.MultiRuleEnumTestLanguage"
|
||||
// }
|
||||
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.generator.ecore.EcoreFragmentTestLanguage"
|
||||
// referencedResource = "platform:/resource/${projectName}/src/org/eclipse/xtext/generator/ecore/Genmodel.genmodel"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.generator.grammarAccess.GrammarAccessTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.grammarinheritance.AbstractTestLanguage"
|
||||
// serializer = {
|
||||
// generateStub = false
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.grammarinheritance.BaseInheritanceTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.grammarinheritance.ConcreteTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.grammarinheritance.InheritanceTestLanguage"
|
||||
// serializer = {
|
||||
// generateStub = false
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.grammarinheritance.InheritanceTest2Language"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.grammarinheritance.InheritanceTest3Language"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.index.IndexTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// referencedResource = "platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore"
|
||||
// referencedResource = "platform:/resource/${projectName}/src/org/eclipse/xtext/metamodelreferencing/tests/EcorePerNsURI.ecore"
|
||||
// referencedResource = "platform:/resource/${projectName}/src/org/eclipse/xtext/metamodelreferencing/tests/EcorePerPlatformPlugin.ecore"
|
||||
// referencedResource = "platform:/resource/${projectName}/src/org/eclipse/xtext/metamodelreferencing/tests/EcorePerPlatformResource.ecore"
|
||||
// name = "org.eclipse.xtext.metamodelreferencing.tests.EcoreReferenceTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.metamodelreferencing.tests.MetamodelRefTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.metamodelreferencing.tests.MultiGenMMTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug289515TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug289524TestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// backtrack = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug289524ExTestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// backtrack = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug296889TestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// backtrack = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug296889ExTestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// backtrack = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug299237TestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// ignoreCase = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug301935TestLanguage"
|
||||
// serializer = {
|
||||
// generateStub = false
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug378967TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug301935ExTestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// ignoreCase = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.antlr.Bug443221TestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.assignments.AssignmentsTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.assignments.Bug287184TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.assignments.Bug288432TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.bug419429.Bug419429"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.datatyperules.DatatypeRulesTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.epatch.EpatchTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.fragments.FragmentTestLanguage"
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.fragments.FragmentTestLanguageEx"
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.indentation.IndentationAwareTestLanguage"
|
||||
// serializer = {
|
||||
// generateStub = false
|
||||
// }
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.keywords.KeywordsTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.parameters.ParametersTestLanguage"
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.parameters.TwoParametersTestLanguage"
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.parameters.NoParametersTestLanguage"
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.parameters.ParametersTestLanguageEx"
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.terminalrules.Bug292245TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.terminalrules.Bug297105TestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// backtrack = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.terminalrules.Bug317840TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.terminalrules.EcoreTerminalsTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.terminalrules.HiddenTerminalsTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.terminalrules.TerminalRulesTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.terminalrules.UnicodeTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.terminalrules.XtextTerminalsTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.unorderedGroups.UnorderedGroupsTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.unorderedGroups.SimpleUnorderedGroupsTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.unorderedGroups.ExUnorderedGroupsTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.unorderedGroups.BacktrackingBug325745TestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// backtrack = true
|
||||
// }
|
||||
// }
|
||||
// serializer = {
|
||||
// generateStub = false
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.unorderedGroups.SimpleBacktrackingBug325745TestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// backtrack = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.unorderedGroups.ExBacktrackingBug325745TestLanguage"
|
||||
// parserGenerator = {
|
||||
// options = {
|
||||
// backtrack = true
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.formatting2.internal.FormatterTestLanguage"
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.formatting2.regionaccess.internal.RegionAccessTestLanguage"
|
||||
// fragment = xtext.generator.junit.Junit4Fragment2 {}
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.formatter.FormatterTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.formatter.ElementMatcherTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.impl.Bug305397"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.impl.CommentAssociationTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.reconstr.PartialSerializationTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.reconstr.Bug299395TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.reconstr.ComplexReconstrTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.reconstr.SimpleReconstrTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.reconstr.SerializationBug269362TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.reconstr.SerializationErrorTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.reconstr.HiddenTokensMergerTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.reconstr.Bug302128TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.serializer.HiddenTokenSequencerTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.serializer.SequencerTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.serializer.SyntacticSequencerTestLanguage"
|
||||
// serializer = {
|
||||
// generateStub = false
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.serializer.ContextFinderTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.serializer.AssignmentFinderTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.unassignedtext.UnassignedTextTestLanguage"
|
||||
// serializer = {
|
||||
// generateStub = false
|
||||
// }
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parsetree.transientvalues.TransientValuesTest"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.ActionTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.ActionTestLanguage2"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.FowlerDslTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.LookaheadTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.OptionalEmptyTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.PartialParserTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.ReferenceGrammarTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.SimpleExpressionsTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.TestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.TreeTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.valueconverter.Bug250313"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.valueconverter.QualifiedNameTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.xtext.ecoreInference.MultiValueFeatureTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.xtext.ecoreInference.UnassignedRuleCallTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.validation.ConcreteSyntaxValidationTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.resource.EObjectAtOffsetTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.resource.LocationProviderTestLanguage"
|
||||
//
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.resource.LiveContainerTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.resource.LiveContainerBuilderIntegerationTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.resource.Bug385636TestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.parser.encoding.EncodingTestLanguage"
|
||||
// }
|
||||
// language = TestLanguage {
|
||||
// name = "org.eclipse.xtext.testlanguages.indent.IndentationAwareTestLanguage"
|
||||
//
|
||||
// }
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -1,82 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright (c) 2015 itemis AG (http://www.itemis.eu) and others.
|
||||
* All rights reserved. This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License v1.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* http://www.eclipse.org/legal/epl-v10.html
|
||||
*******************************************************************************/
|
||||
package org.eclipse.xtext
|
||||
|
||||
import java.util.ArrayList
|
||||
import org.eclipse.xtext.xtext.generator.XtextGeneratorLanguage
|
||||
import org.eclipse.xtext.xtext.generator.ecore.EMFGeneratorFragment2
|
||||
import org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessFragment2
|
||||
import org.eclipse.xtext.xtext.generator.idea.IdeaPluginGenerator
|
||||
import org.eclipse.xtext.xtext.generator.idea.parser.antlr.XtextAntlrIDEAGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
|
||||
import org.eclipse.xtext.xtext.generator.resourceFactory.ResourceFactoryFragment2
|
||||
import org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
|
||||
import org.eclipse.xtend.lib.annotations.Accessors
|
||||
import org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorComparisonFragment
|
||||
import org.eclipse.xtext.generator.parser.antlr.AntlrOptions
|
||||
|
||||
/**
|
||||
* @author efftinge - Initial contribution and API
|
||||
*/
|
||||
@Accessors
|
||||
class TestLanguage extends XtextGeneratorLanguage {
|
||||
|
||||
org.eclipse.xtext.xtext.generator.parser.antlr.AntlrOptions parserOptions = new org.eclipse.xtext.xtext.generator.parser.antlr.AntlrOptions() => [
|
||||
classSplitting = true
|
||||
]
|
||||
|
||||
def void setParserOptions(org.eclipse.xtext.xtext.generator.parser.antlr.AntlrOptions parserOptions) {
|
||||
this.parserOptions = parserOptions
|
||||
parserGenerator.options = parserOptions
|
||||
ideaParser.options = parserOptions
|
||||
}
|
||||
|
||||
GrammarAccessFragment2 grammarAccess = new GrammarAccessFragment2
|
||||
SerializerFragment2 serializer = new SerializerFragment2 => [
|
||||
generateStub = false
|
||||
]
|
||||
ResourceFactoryFragment2 resourceFactoryFragment = new ResourceFactoryFragment2
|
||||
EMFGeneratorFragment2 emfGenerator = new EMFGeneratorFragment2
|
||||
XtextAntlrGeneratorFragment2 parserGenerator = new XtextAntlrGeneratorFragment2 => [
|
||||
debugGrammar = true
|
||||
options = parserOptions
|
||||
]
|
||||
XtextAntlrIDEAGeneratorFragment ideaParser = new XtextAntlrIDEAGeneratorFragment => [
|
||||
options = parserOptions
|
||||
]
|
||||
|
||||
IdeaPluginGenerator ideaPlugin = new IdeaPluginGenerator
|
||||
|
||||
override protected getImplicitFragments() {
|
||||
val result = new ArrayList(super.getImplicitFragments())
|
||||
result += parserGenerator
|
||||
val comparison = new XtextAntlrGeneratorComparisonFragment
|
||||
comparison.setOptions(new AntlrOptions() => [
|
||||
it.backtrack = parserGenerator.options.backtrack
|
||||
it.backtrackLexer = parserGenerator.options.backtrackLexer
|
||||
it.classSplitting = parserGenerator.options.classSplitting
|
||||
it.casesPerSpecialStateSwitch = parserGenerator.options.casesPerSpecialStateSwitch.toString
|
||||
it.fieldsPerClass = parserGenerator.options.fieldsPerClass.toString
|
||||
it.ignoreCase = parserGenerator.options.ignoreCase
|
||||
it.k = parserGenerator.options.k
|
||||
it.memoize = parserGenerator.options.memoize
|
||||
it.optimizeCodeQuality= parserGenerator.options.optimizeCodeQuality
|
||||
it.skipUnusedRules = parserGenerator.options.skipUnusedRules
|
||||
it.stripAllComments = parserGenerator.options.stripAllComments
|
||||
]);
|
||||
result += comparison
|
||||
result += grammarAccess
|
||||
result += emfGenerator
|
||||
result += serializer
|
||||
result += resourceFactoryFragment
|
||||
result += ideaParser
|
||||
result += ideaPlugin
|
||||
return result
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,4 @@
|
|||
package org.eclipse.xtext.generator.ecore.serializer;
|
||||
|
||||
public class SuperTestLanguageSemanticSequencer extends AbstractSuperTestLanguageSemanticSequencer {
|
||||
}
|
|
@ -0,0 +1,4 @@
|
|||
package org.eclipse.xtext.generator.ecore.serializer;
|
||||
|
||||
public class SuperTestLanguageSyntacticSequencer extends AbstractSuperTestLanguageSyntacticSequencer {
|
||||
}
|
Loading…
Reference in a new issue