diff --git a/org.eclipse.xtext.testlanguages/src/org/eclipse/xtext/testlanguages/GenerateTestLanguages.mwe2 b/org.eclipse.xtext.testlanguages/src/org/eclipse/xtext/testlanguages/GenerateTestLanguages.mwe2
index cc40efd3b..b8204e33a 100644
--- a/org.eclipse.xtext.testlanguages/src/org/eclipse/xtext/testlanguages/GenerateTestLanguages.mwe2
+++ b/org.eclipse.xtext.testlanguages/src/org/eclipse/xtext/testlanguages/GenerateTestLanguages.mwe2
@@ -27,9 +27,6 @@ Workflow {
enabled = true
root = eclipsePath
}
- ideaPlugin = {
- enabled = false
- }
createEclipseMetaData = true
}
diff --git a/org.eclipse.xtext.testlanguages/src/org/eclipse/xtext/testlanguages/fragments/SimpleTestLanguageFragments.mwe2 b/org.eclipse.xtext.testlanguages/src/org/eclipse/xtext/testlanguages/fragments/SimpleTestLanguageFragments.mwe2
index 2cb2a5db9..c5fb35d04 100644
--- a/org.eclipse.xtext.testlanguages/src/org/eclipse/xtext/testlanguages/fragments/SimpleTestLanguageFragments.mwe2
+++ b/org.eclipse.xtext.testlanguages/src/org/eclipse/xtext/testlanguages/fragments/SimpleTestLanguageFragments.mwe2
@@ -67,17 +67,7 @@ XtextGeneratorLanguage {
// content assist API
fragment = ui.contentAssist.ContentAssistFragment2 {}
- fragment = idea.parser.antlr.XtextAntlrIDEAGeneratorFragment auto-inject {
- options = auto-inject {
- fieldsPerClass = "100"
- methodsPerClass = "100"
- }
- }
// fragment = org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorComparisonFragment {
// options = auto-inject {}
// }
-
- fragment = idea.IdeaPluginGenerator auto-inject {
- generateXtendStub = true
- }
}
diff --git a/org.eclipse.xtext.tests/src/org/eclipse/xtext/grammarinheritance/GenerateInheritanceLanguages.mwe2 b/org.eclipse.xtext.tests/src/org/eclipse/xtext/grammarinheritance/GenerateInheritanceLanguages.mwe2
index 19576f038..e2b92f8c4 100644
--- a/org.eclipse.xtext.tests/src/org/eclipse/xtext/grammarinheritance/GenerateInheritanceLanguages.mwe2
+++ b/org.eclipse.xtext.tests/src/org/eclipse/xtext/grammarinheritance/GenerateInheritanceLanguages.mwe2
@@ -37,9 +37,6 @@ Workflow {
component = DirectoryCleaner {
directory="${runtimeProject}/src-gen/org/eclipse/xtext/grammarinheritance"
}
- component = DirectoryCleaner {
- directory="${runtimeProject}/../../intellij/org.eclipse.xtext.core.idea.tests/src-gen/org/eclipse/xtext/grammarinheritance/idea"
- }
component = XtextGenerator {
cleaner = {
diff --git a/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/fragments/GenerateFragmentTestLanguages.mwe2 b/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/fragments/GenerateFragmentTestLanguages.mwe2
index 2cd5ffea5..4d1c5c104 100644
--- a/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/fragments/GenerateFragmentTestLanguages.mwe2
+++ b/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/fragments/GenerateFragmentTestLanguages.mwe2
@@ -26,10 +26,6 @@ Workflow {
directory = "${runtimeProject}/src-gen/org/eclipse/xtext/parser/fragments"
}
- component = DirectoryCleaner {
- directory = "../../intellij/org.eclipse.xtext.core.idea.tests/src-gen/org/eclipse/xtext/parser/fragments/idea"
- }
-
component = XtextGenerator {
cleaner = {
enabled = false
diff --git a/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/parameters/GenerateParametersTestLanguages.mwe2 b/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/parameters/GenerateParametersTestLanguages.mwe2
index 54ac2c9a6..18c013fe6 100644
--- a/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/parameters/GenerateParametersTestLanguages.mwe2
+++ b/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/parameters/GenerateParametersTestLanguages.mwe2
@@ -25,10 +25,6 @@ Workflow {
directory = "${runtimeProject}/src-gen/org/eclipse/xtext/parser/parameters"
}
- component = DirectoryCleaner {
- directory = "../../intellij/org.eclipse.xtext.core.idea.tests/src-gen/org/eclipse/xtext/parser/parameters/idea"
- }
-
component = XtextGenerator {
cleaner = {
enabled = false
diff --git a/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/unorderedGroups/GenerateUnorderedGroupsTestLanguages.mwe2 b/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/unorderedGroups/GenerateUnorderedGroupsTestLanguages.mwe2
index c1cd8bede..6a342a371 100644
--- a/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/unorderedGroups/GenerateUnorderedGroupsTestLanguages.mwe2
+++ b/org.eclipse.xtext.tests/src/org/eclipse/xtext/parser/unorderedGroups/GenerateUnorderedGroupsTestLanguages.mwe2
@@ -26,10 +26,6 @@ Workflow {
directory = "${runtimeProject}/src-gen/org/eclipse/xtext/parser/unorderedGroups"
}
- component = DirectoryCleaner {
- directory = "../../intellij/org.eclipse.xtext.core.idea.tests/src-gen/org/eclipse/xtext/parser/unorderedGroups/idea"
- }
-
component = XtextGenerator {
cleaner = {
enabled = false
diff --git a/org.eclipse.xtext.util/src/org/eclipse/xtext/util/JavaVersion.java b/org.eclipse.xtext.util/src/org/eclipse/xtext/util/JavaVersion.java
index 4ff6fc2e0..a5a8635d7 100644
--- a/org.eclipse.xtext.util/src/org/eclipse/xtext/util/JavaVersion.java
+++ b/org.eclipse.xtext.util/src/org/eclipse/xtext/util/JavaVersion.java
@@ -70,7 +70,6 @@ public enum JavaVersion {
// if you introduce a new JavaVersion don't forget to adapt
// - JavaVersionTest
// - JavaVersionExtendedTest
- // - org.eclipse.xtext.xbase.idea.facet.XbaseGeneratorConfigProvider.getTargetJavaVersion(XbaseGeneratorConfigurationState, Module)
private final String label;
private final String[] qualifiers;
diff --git a/org.eclipse.xtext.xtext.bootstrap/BootstrapXtext.launch b/org.eclipse.xtext.xtext.bootstrap/BootstrapXtext.launch
index 15a34e592..d45c1c3e4 100644
--- a/org.eclipse.xtext.xtext.bootstrap/BootstrapXtext.launch
+++ b/org.eclipse.xtext.xtext.bootstrap/BootstrapXtext.launch
@@ -9,7 +9,7 @@
-
+
diff --git a/org.eclipse.xtext.xtext.bootstrap/build.gradle b/org.eclipse.xtext.xtext.bootstrap/build.gradle
index 60fd5fa30..4a78a4138 100644
--- a/org.eclipse.xtext.xtext.bootstrap/build.gradle
+++ b/org.eclipse.xtext.xtext.bootstrap/build.gradle
@@ -1,9 +1,8 @@
/*
* Bootstrap project for the Xtext language. It contains an MWE2 generator workflow with
- * dedicated configuration code. The workflow generates into the core and generic ide projects
- * as well as the Eclipse and IDEA integration projects, which are defined in different
- * source repositories. The path to these other repositories is assumed to be ../xtext-eclipse
- * and ../xtext-idea, respectively.
+ * dedicated configuration code. The workflow generates into the core and generic ide projects,
+ * which are defined in different source repositories. The path to these other repositories is
+ * assumed to be ../xtext-eclipse, respectively.
*/
apply from: "${rootDir}/gradle/mwe2-workflows.gradle"
diff --git a/org.eclipse.xtext.xtext.bootstrap/src/org/eclipse/xtext/xtext/bootstrap/GenerateXtext.mwe2 b/org.eclipse.xtext.xtext.bootstrap/src/org/eclipse/xtext/xtext/bootstrap/GenerateXtext.mwe2
index e0348b5d6..b138f84b6 100644
--- a/org.eclipse.xtext.xtext.bootstrap/src/org/eclipse/xtext/xtext/bootstrap/GenerateXtext.mwe2
+++ b/org.eclipse.xtext.xtext.bootstrap/src/org/eclipse/xtext/xtext/bootstrap/GenerateXtext.mwe2
@@ -21,8 +21,6 @@ var runtimeProjectName = baseName
var ideProjectName = "${baseName}.xtext.ide"
var eclipseProjectName = "${baseName}.xtext.ui"
var eclipseProjectPath = "${rootPath}/../xtext-eclipse/${eclipseProjectName}"
-var ideaProjectName = "${baseName}.xtext.idea"
-var ideaProjectPath = "${rootPath}/../xtext-idea/${ideaProjectName}"
var fileHeader = "/*\n * generated by Xtext 2.11\n */" //\${version}\n */"
@@ -76,11 +74,6 @@ Workflow {
name = eclipseProjectName
root = eclipseProjectPath
}
- ideaPlugin = {
- enabled = true
- name = ideaProjectName
- root = ideaProjectPath
- }
// createEclipseMetaData = true
}
code = {
@@ -127,15 +120,6 @@ Workflow {
fragment = ui.refactoring.RefactorElementNameFragment2 {}
fragment = ui.templates.CodetemplatesGeneratorFragment2 {}
-
- fragment = org.eclipse.xtext.xtext.generator.idea.IdeaPluginGenerator {
- generateXtendStub = true
- }
- fragment = org.eclipse.xtext.xtext.generator.idea.parser.antlr.XtextAntlrIDEAGeneratorFragment {
- options = {
- classSplitting = true
- }
- }
}
}
}
diff --git a/org.eclipse.xtext.xtext.generator/META-INF/MANIFEST.MF b/org.eclipse.xtext.xtext.generator/META-INF/MANIFEST.MF
index 1320185bc..ae2cf34d2 100644
--- a/org.eclipse.xtext.xtext.generator/META-INF/MANIFEST.MF
+++ b/org.eclipse.xtext.xtext.generator/META-INF/MANIFEST.MF
@@ -34,8 +34,6 @@ Export-Package: org.eclipse.xtext.xtext.generator,
org.eclipse.xtext.tests,
org.eclipse.xtext.xbase,
org.eclipse.xtend.core",
- org.eclipse.xtext.xtext.generator.idea;x-internal:=true,
- org.eclipse.xtext.xtext.generator.idea.parser.antlr;x-friends:="org.eclipse.xtend.core",
org.eclipse.xtext.xtext.generator.junit;x-internal:=true,
org.eclipse.xtext.xtext.generator.model;x-friends:="org.eclipse.xtext.extras.tests,
org.eclipse.xtext.generator,
diff --git a/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginClassNames.xtend b/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginClassNames.xtend
deleted file mode 100644
index 63d1f6e74..000000000
--- a/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginClassNames.xtend
+++ /dev/null
@@ -1,153 +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.xtext.generator.idea
-
-import com.google.inject.Inject
-import org.eclipse.xtext.Grammar
-import org.eclipse.xtext.xtext.generator.XtextGeneratorNaming
-import org.eclipse.xtext.xtext.generator.model.TypeReference
-
-import static extension org.eclipse.xtext.GrammarUtil.*
-import static extension org.eclipse.xtext.xtext.generator.model.TypeReference.*
-
-class IdeaPluginClassNames {
- @Inject extension XtextGeneratorNaming
-
- def String toPath(String fullName) {
- fullName.replace('.', '/')
- }
-
- def TypeReference getIdeaSetup(Grammar it) {
- new TypeReference(ideaBasePackage, simpleName + 'IdeaSetup')
- }
-
- def TypeReference getExtensionFactory(Grammar it) {
- new TypeReference(ideaBasePackage, simpleName + 'ExtensionFactory')
- }
-
- def TypeReference getAbstractIdeaModule(Grammar it) {
- new TypeReference(ideaBasePackage, 'Abstract' + simpleName + 'IdeaModule')
- }
-
- def TypeReference getFileType(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang', simpleName + 'FileType')
- }
-
- def TypeReference getAbstractFileType(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang', 'Abstract' + simpleName + 'FileType')
- }
-
- def TypeReference getFileTypeFactory(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang', simpleName + 'FileTypeFactory')
- }
-
- def TypeReference getIdeaLanguage(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang', simpleName + 'Language')
- }
-
- def TypeReference getCodeBlockModificationListener(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang.psi', simpleName + 'CodeBlockModificationListener')
- }
-
- def TypeReference getPsiParser(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang.parser', simpleName + 'PsiParser')
- }
-
- def TypeReference getAntlrTokenFileProvider(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang.parser.antlr', simpleName + 'AntlrTokenFileProvider')
- }
-
- def TypeReference getPomDeclarationSearcher(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang.pom', simpleName + 'PomDeclarationSearcher')
- }
-
- def TypeReference getSyntaxHighlighterFactory(Grammar it) {
- new TypeReference(ideaBasePackage + '.highlighting', simpleName + 'SyntaxHighlighterFactory')
- }
-
- def TypeReference getSemanticHighlightVisitor(Grammar it) {
- new TypeReference(ideaBasePackage + '.highlighting', simpleName + 'SemanticHighlightVisitor')
- }
-
- def TypeReference getSuperParserDefinition(Grammar it) {
- 'org.eclipse.xtext.idea.parser.AbstractXtextParserDefinition'.typeRef
- }
-
- def TypeReference getParserDefinition(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang.parser', simpleName + 'ParserDefinition')
- }
-
- def TypeReference getTokenTypeProvider(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang.parser', simpleName + 'TokenTypeProvider')
- }
-
- def TypeReference getElementTypeProvider(Grammar it) {
- new TypeReference(ideaBasePackage + '.lang', simpleName + 'ElementTypeProvider')
- }
-
- def TypeReference getPsiInternalLexer(Grammar it) {
- new TypeReference(ideaBasePackage + '.parser.antlr.internal', 'PsiInternal' + simpleName + 'Lexer')
- }
-
- def TypeReference getPsiInternalParser(Grammar it) {
- new TypeReference(ideaBasePackage + '.parser.antlr.internal', 'PsiInternal' + simpleName + 'Parser')
- }
-
- def String getTokens(Grammar it) {
- (ideaBasePackage + '.parser.antlr.internal.PsiInternal' + simpleName).toPath + '.tokens'
- }
-
- def TypeReference getFileImpl(Grammar it) {
- new TypeReference(psiImplPackageName, simpleName + 'FileImpl')
- }
-
- def String getPsiPackageName(Grammar it) {
- ideaBasePackage + '.lang.psi'
- }
-
- def String getPsiImplPackageName(Grammar it) {
- ideaBasePackage + '.lang.psi.impl'
- }
-
- def TypeReference getInternalParser(Grammar it) {
- new TypeReference(namespace + '.parser.antlr.internal', 'Internal' + simpleName + 'Parser')
- }
-
- def TypeReference getAntlrLexer(Grammar it) {
- new TypeReference(namespace + '.parser.antlr.internal', 'Internal' + simpleName + 'Lexer')
- }
-
- def TypeReference getCompletionContributorSuperClass(Grammar it) {
- usedGrammars.head?.completionContributor ?:
- 'org.eclipse.xtext.idea.completion.AbstractCompletionContributor'.typeRef
- }
-
- def TypeReference getCompletionContributor(Grammar it) {
- new TypeReference(ideaBasePackage + '.completion', simpleName + 'CompletionContributor')
- }
-
- def TypeReference getAbstractCompletionContributor(Grammar it) {
- new TypeReference(ideaBasePackage + '.completion', 'Abstract' + simpleName + 'CompletionContributor')
- }
-
- def TypeReference getFacetConfiguration(Grammar it) {
- new TypeReference(ideaBasePackage + '.facet', simpleName + 'FacetConfiguration')
- }
-
- def TypeReference getFacetType(Grammar it) {
- new TypeReference(ideaBasePackage + '.facet', simpleName + 'FacetType')
- }
-
- def TypeReference baseColorSettingsPage(Grammar it) {
- new TypeReference(ideaBasePackage + '.highlighting', simpleName + 'BaseColorSettingsPage')
- }
-
- def TypeReference colorSettingsPage(Grammar it) {
- new TypeReference(baseColorSettingsPage.packageName, simpleName + 'ColorSettingsPage')
- }
-}
diff --git a/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginExtension.xtend b/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginExtension.xtend
deleted file mode 100644
index 04f3ee548..000000000
--- a/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginExtension.xtend
+++ /dev/null
@@ -1,32 +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.xtext.generator.idea
-
-import org.eclipse.xtext.Grammar
-import org.eclipse.xtext.GrammarUtil
-import org.eclipse.xtext.TerminalRule
-
-class IdeaPluginExtension {
-
- def getAllNonTerminalRules(Grammar grammar) {
- GrammarUtil.allRules(grammar).filter[!(it instanceof TerminalRule)]
- }
-
- def getSimpleName(Grammar grammar) {
- GrammarUtil::getSimpleName(grammar);
- }
-
- def getPackageName(Grammar grammar) {
- GrammarUtil::getNamespace(grammar);
- }
-
- def getLanguageID(Grammar grammar) {
- grammar.name
- }
-
-}
\ No newline at end of file
diff --git a/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginGenerator.xtend b/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginGenerator.xtend
index 4c98b64c8..65c3a1730 100644
--- a/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginGenerator.xtend
+++ b/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/idea/IdeaPluginGenerator.xtend
@@ -7,847 +7,16 @@
*******************************************************************************/
package org.eclipse.xtext.xtext.generator.idea
-import com.google.inject.Guice
-import com.google.inject.Inject
-import com.google.inject.Singleton
-import com.google.inject.name.Names
-import java.io.InputStream
-import java.util.Arrays
-import java.util.Collections
-import java.util.HashMap
-import java.util.HashSet
-import java.util.Map
-import java.util.Set
-import org.antlr.runtime.Token
-import org.eclipse.emf.ecore.EAttribute
-import org.eclipse.emf.ecore.EClass
-import org.eclipse.emf.ecore.EObject
-import org.eclipse.xtend.lib.annotations.Accessors
-import org.eclipse.xtext.AbstractElement
-import org.eclipse.xtext.AbstractRule
-import org.eclipse.xtext.Action
-import org.eclipse.xtext.GeneratedMetamodel
-import org.eclipse.xtext.Grammar
-import org.eclipse.xtext.ISetup
-import org.eclipse.xtext.RuleCall
-import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider
-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.XtextGeneratorNaming
-import org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessExtensions
-import org.eclipse.xtext.xtext.generator.model.FileAccessFactory
-import org.eclipse.xtext.xtext.generator.model.GuiceModuleAccess.BindingFactory
-import org.eclipse.xtext.xtext.generator.model.JavaFileAccess
-import org.eclipse.xtext.xtext.generator.model.TextFileAccess
-import org.eclipse.xtext.xtext.generator.model.TypeReference
-import org.eclipse.xtext.xtext.generator.parser.antlr.ContentAssistGrammarNaming
-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
+@Deprecated
class IdeaPluginGenerator extends AbstractStubGeneratingFragment {
- @Inject extension XtextGeneratorNaming
- @Inject extension XbaseUsageDetector
- @Inject ContentAssistGrammarNaming caNaming
- @Inject
- extension IdeaPluginExtension
-
- @Inject
- extension IdeaPluginClassNames
-
- @Inject
- extension GrammarAccessExtensions
-
- @Inject
- FileAccessFactory fileAccessFactory
-
- Set libraries = newHashSet();
-
- @Accessors
- boolean deployable = true
-
- def addLibrary(String library) {
- libraries.add(library)
- }
override generate() {
if (!projectConfig.ideaPlugin.enabled)
return;
- val fileExtension = language.getFileExtensions().head
- val grammar = language.grammar
-
- val bindFactory = new BindingFactory();
- bindFactory.addTypeToType('org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider'.typeRef, grammar.antlrTokenFileProvider)
- bindFactory.addTypeToType('org.eclipse.xtext.parser.antlr.Lexer'.typeRef, grammar.getPsiInternalLexer)
- bindFactory.addConfiguredBinding("RuntimeLexer", '''
- binder.bind(«Lexer».class)
- .annotatedWith(«Names».named(«LexerBindings».RUNTIME))
- .to(«grammar.psiInternalLexer».class);
- ''')
- bindFactory.addTypeToType('com.intellij.lang.PsiParser'.typeRef, grammar.psiParser)
- bindFactory.addTypeToType('org.eclipse.xtext.idea.parser.TokenTypeProvider'.typeRef, grammar.tokenTypeProvider)
- bindFactory.addTypeToType('com.intellij.lang.ParserDefinition'.typeRef, grammar.parserDefinition)
- bindFactory.addTypeToTypeSingleton('org.eclipse.xtext.idea.lang.IElementTypeProvider'.typeRef, grammar.elementTypeProvider)
- bindFactory.addTypeToType('org.eclipse.xtext.idea.facet.AbstractFacetConfiguration'.typeRef, grammar.facetConfiguration)
- bindFactory.addTypeToInstance('com.intellij.facet.FacetTypeId'.typeRef, '''«grammar.facetType».TYPEID''')
- bindFactory.addTypeToType('org.eclipse.xtext.ide.editor.contentassist.antlr.IContentAssistParser'.typeRef, caNaming.getParserClass(grammar))
- bindFactory.addConfiguredBinding('ContentAssistLexer',
- '''binder.bind(«'org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer'.typeRef».class).annotatedWith(«Names».named(«'org.eclipse.xtext.ide.LexerIdeBindings'.typeRef».CONTENT_ASSIST)).to(«caNaming.getLexerClass(grammar)».class);''')
- if (grammar.inheritsXbase) {
- bindFactory.addTypeToType('org.eclipse.xtext.common.types.xtext.AbstractTypeScopeProvider'.typeRef, 'org.eclipse.xtext.idea.common.types.StubBasedTypeScopeProvider'.typeRef)
- bindFactory.addTypeToType(new TypeReference('org.eclipse.xtext.xbase.typesystem.internal', 'IFeatureScopeTracker.Provider'), 'org.eclipse.xtext.xbase.typesystem.internal.OptimizingFeatureScopeTrackerProvider'.typeRef)
- bindFactory.addConfiguredBinding('LanguageSpecificPsiModelAssociations', '''
- binder.bind(«"org.eclipse.xtext.psi.IPsiModelAssociations".typeRef».class)
- .annotatedWith(«LanguageSpecific».class)
- .to(«"org.eclipse.xtext.idea.common.types.DerivedMemberAwarePsiModelAssociations".typeRef».class);
- ''')
- bindFactory.addTypeToType('org.eclipse.xtext.idea.highlighting.IHighlightingConfiguration'.typeRef, 'org.eclipse.xtext.xbase.idea.highlighting.XbaseHighlightingConfiguration'.typeRef)
- bindFactory.addTypeToType('org.eclipse.xtext.idea.formatting.BlockFactory'.typeRef, 'org.eclipse.xtext.xbase.idea.formatting.XbaseBlockFactory'.typeRef)
- bindFactory.addTypeToType('org.eclipse.xtext.idea.formatting.ChildAttributesProvider'.typeRef, 'org.eclipse.xtext.xbase.idea.formatting.XbaseChildAttributesProvider'.typeRef)
- bindFactory.addTypeToType('org.eclipse.xtext.ide.editor.bracketmatching.IBracePairProvider'.typeRef, 'org.eclipse.xtext.xbase.idea.bracketmatching.XbaseBracePairProvider'.typeRef)
- bindFactory.addTypeToType('org.eclipse.xtext.idea.findusages.IReferenceSearcher'.typeRef, 'org.eclipse.xtext.xbase.idea.findusages.JvmElementAwareReferenceSearcher'.typeRef)
- bindFactory.addTypeToType('org.eclipse.xtext.xbase.compiler.IGeneratorConfigProvider'.typeRef, 'org.eclipse.xtext.xbase.idea.facet.XbaseGeneratorConfigProvider'.typeRef)
- bindFactory.addTypeToType('org.eclipse.xtext.idea.findusages.WordsScannerProvider'.typeRef, new TypeReference('org.eclipse.xtext.xbase.idea.findusages', 'XbaseWordsScanner.XbaseWordsScannerProvider'))
- }
-
- bindFactory.contributeTo(language.ideaGenModule)
-
- #[
- grammar.compileStandaloneSetup,
- grammar.compileIdeaSetup,
- grammar.compileCompletionContributor,
- grammar.compileFileType,
- grammar.compileFacetConfiguration,
- grammar.compileColorSettingsPage
- ].forEach[
- writeTo(projectConfig.ideaPlugin.src)
- ]
-
- #[
- grammar.compileServicesISetup,
- grammar.compileAbstractCompletionContributor,
- grammar.compileLanguage,
- grammar.compileAbstractFileType(fileExtension),
- grammar.compileFileTypeFactory,
- grammar.compileFileImpl,
- grammar.compileTokenTypeProvider,
- grammar.compileElementTypeProvider,
- grammar.compileParserDefinition,
- grammar.compileSyntaxHighlighterFactory,
- grammar.compileSemanticHighlightVisitor,
- grammar.compileExtensionFactory,
- grammar.compileCodeBlockModificationListener,
- grammar.compilePsiParser,
- grammar.compileAntlrTokenFileProvider,
- grammar.compilePomDeclarationSearcher,
- grammar.compileFacetType,
- grammar.compileBaseColorSettingsPage
- ].forEach[
- writeTo(projectConfig.ideaPlugin.srcGen)
- ]
-
- if (deployable) {
- val pluginXml = grammar.compilePluginXml
- if (!projectConfig.ideaPlugin.metaInf.isFile(pluginXml.path)) {
- pluginXml.writeTo(projectConfig.ideaPlugin.metaInf)
- }
- grammar.compilePluginGenXml.writeTo(projectConfig.ideaPlugin.metaInf)
- }
+ System.err.println("The support for Idea has been removed!")
}
- def iml() {
- ".iml"
- }
-
- def compileExtensionFactory(Grammar grammar) {
- fileAccessFactory.createJavaFile(grammar.extensionFactory, '''
- public class «grammar.extensionFactory.simpleName» implements «"com.intellij.openapi.extensions.ExtensionFactory".typeRef» {
- @Override
- public Object createInstance(«String» factoryArgument, «String» implementationClass) {
- «Class»> clazz;
- try {
- clazz = «Class».forName(implementationClass);
- } catch («ClassNotFoundException» e) {
- throw new «IllegalArgumentException»("Couldn't load "+implementationClass, e);
- }
- return «grammar.ideaLanguage».INSTANCE.