mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-20 05:21:29 +07:00
[java-highlighting] WIP IDEA-372968 Support JEP 511: Module Import Declarations
- test for quick-fix "increase language level" - fix templates (cherry picked from commit 37009091dc826c81d496e90cdb3a2c3b2da147c3) (cherry picked from commit c0f3ed9451db84ec02e4e3af118f82f5bc4d7fdf) IJ-MR-169535 GitOrigin-RevId: 7e4152035b0502b6229747ef55056b5cd613359a
This commit is contained in:
committed by
intellij-monorepo-bot
parent
a20e0b6340
commit
08cc5dd193
@@ -171,11 +171,11 @@ enum class JavaFeature {
|
||||
* @see PACKAGE_IMPORTS_SHADOW_MODULE_IMPORTS
|
||||
* @see TRANSITIVE_DEPENDENCY_ON_JAVA_BASE
|
||||
*/
|
||||
MODULE_IMPORT_DECLARATIONS(LanguageLevel.JDK_23_PREVIEW, "feature.module.import.declarations") { //jep 776
|
||||
MODULE_IMPORT_DECLARATIONS(LanguageLevel.JDK_23_PREVIEW, "feature.module.import.declarations") { //
|
||||
override fun isSufficient(useSiteLevel: LanguageLevel): Boolean {
|
||||
return super.isSufficient(useSiteLevel) ||
|
||||
useSiteLevel.isAtLeast(LanguageLevel.JDK_25) ||
|
||||
LanguageLevel.JDK_24_PREVIEW == useSiteLevel //jep 494
|
||||
return useSiteLevel.isAtLeast(LanguageLevel.JDK_25) ||
|
||||
LanguageLevel.JDK_24_PREVIEW == useSiteLevel || //jep 494
|
||||
LanguageLevel.JDK_23_PREVIEW == useSiteLevel //jep 776
|
||||
}
|
||||
|
||||
override val standardLevel: LanguageLevel = LanguageLevel.JDK_25
|
||||
@@ -192,10 +192,11 @@ enum class JavaFeature {
|
||||
* @see MODULE_IMPORT_DECLARATIONS
|
||||
* @see TRANSITIVE_DEPENDENCY_ON_JAVA_BASE
|
||||
*/
|
||||
PACKAGE_IMPORTS_SHADOW_MODULE_IMPORTS(LanguageLevel.JDK_24_PREVIEW, "feature.package.import.shadow.module.import") { //jep 494
|
||||
PACKAGE_IMPORTS_SHADOW_MODULE_IMPORTS(LanguageLevel.JDK_24_PREVIEW, "feature.package.import.shadow.module.import") {
|
||||
override fun isSufficient(useSiteLevel: LanguageLevel): Boolean {
|
||||
return super.isSufficient(useSiteLevel) ||
|
||||
useSiteLevel.isAtLeast(LanguageLevel.JDK_25)
|
||||
useSiteLevel.isAtLeast(LanguageLevel.JDK_25) ||
|
||||
LanguageLevel.JDK_24_PREVIEW == useSiteLevel; //jep 494
|
||||
}
|
||||
|
||||
override val standardLevel: LanguageLevel = LanguageLevel.JDK_25
|
||||
@@ -208,8 +209,8 @@ enum class JavaFeature {
|
||||
*/
|
||||
TRANSITIVE_DEPENDENCY_ON_JAVA_BASE(LanguageLevel.JDK_24_PREVIEW, "feature.package.transitive.dependency.on.java.base") { //jep 494
|
||||
override fun isSufficient(useSiteLevel: LanguageLevel): Boolean {
|
||||
return super.isSufficient(useSiteLevel) ||
|
||||
useSiteLevel.isAtLeast(LanguageLevel.JDK_25)
|
||||
return useSiteLevel.isAtLeast(LanguageLevel.JDK_25) ||
|
||||
LanguageLevel.JDK_24_PREVIEW == useSiteLevel//jep 494
|
||||
}
|
||||
|
||||
override val standardLevel: LanguageLevel = LanguageLevel.JDK_25
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
import module java<caret>.base;
|
||||
|
||||
public class Sample{
|
||||
}
|
||||
@@ -27,6 +27,10 @@ public abstract class IncreaseLanguageLevelFixTest extends LightDaemonAnalyzerTe
|
||||
public void testStatementBeforeSuper() {
|
||||
IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_24, () -> doTest(LanguageLevel.JDK_25));
|
||||
}
|
||||
|
||||
public void testModuleImportStatement() {
|
||||
IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_24, () -> doTest(LanguageLevel.JDK_25));
|
||||
}
|
||||
}
|
||||
|
||||
public static class IncreaseLanguageLevel23FixTest extends IncreaseLanguageLevelFixTest {
|
||||
|
||||
@@ -298,9 +298,9 @@ public class JavaLiveTemplateTest extends LiveTemplateTestCase {
|
||||
Set<TemplateContextType> contextTypeSet = TemplateManagerImpl
|
||||
.getApplicableContextTypes(TemplateActionContext.expanding(myFixture.getFile(), myFixture.getEditor()));
|
||||
List<Class<? extends TemplateContextType>> applicableContextTypesClasses = ContainerUtil.map(contextTypeSet, TemplateContextType::getClass);
|
||||
List<Class<? extends JavaCodeContextType>> declarationTypes = Arrays.asList(JavaCodeContextType.Declaration.class, JavaCodeContextType.NormalClassDeclarationBeforeShortMainMethod.class);
|
||||
List<Class<? extends JavaCodeContextType>> declarationTypes = Arrays.asList(JavaCodeContextType.Declaration.class, JavaCodeContextType.NormalClassDeclarationAfterShortMainMethod.class);
|
||||
|
||||
assertEquals(applicableContextTypesClasses, declarationTypes);
|
||||
assertEquals(declarationTypes, applicableContextTypesClasses);
|
||||
}
|
||||
|
||||
public void testJavaStatementContext() {
|
||||
|
||||
Reference in New Issue
Block a user