diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightUtil.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightUtil.java index 61b2477a8eaa..af00b3794afd 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightUtil.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightUtil.java @@ -2930,7 +2930,7 @@ public class HighlightUtil extends HighlightUtilBase { STATIC_INTERFACE_CALLS(LanguageLevel.JDK_1_8, "feature.static.interface.calls"), REFS_AS_RESOURCE(LanguageLevel.JDK_1_9, "feature.try.with.resources.refs"), MODULES(LanguageLevel.JDK_1_9, "feature.modules"), - RAW_LITERALS(LanguageLevel.JDK_X, "feature.raw.literals"); + RAW_LITERALS(LanguageLevel.JDK_12_PREVIEW, "feature.raw.literals"); private final LanguageLevel level; private final String key; diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/RedundantBackticksAroundRawStringLiteralInspection.java b/java/java-analysis-impl/src/com/intellij/codeInspection/RedundantBackticksAroundRawStringLiteralInspection.java index 103883845c33..c497d8f6a9ec 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/RedundantBackticksAroundRawStringLiteralInspection.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/RedundantBackticksAroundRawStringLiteralInspection.java @@ -16,7 +16,7 @@ public class RedundantBackticksAroundRawStringLiteralInspection extends Abstract @NotNull @Override public PsiElementVisitor buildVisitor(@NotNull final ProblemsHolder holder, boolean isOnTheFly) { - if (PsiUtil.getLanguageLevel(holder.getFile()) != LanguageLevel.JDK_X) { + if (PsiUtil.getLanguageLevel(holder.getFile()) != LanguageLevel.JDK_12_PREVIEW) { return PsiElementVisitor.EMPTY_VISITOR; } return new JavaElementVisitor() { diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/ConvertStringLiteralToRawAction.java b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/ConvertStringLiteralToRawAction.java index b599e05bb71a..03adfe4eaef3 100644 --- a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/ConvertStringLiteralToRawAction.java +++ b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/ConvertStringLiteralToRawAction.java @@ -33,7 +33,7 @@ public class ConvertStringLiteralToRawAction implements IntentionAction, LowPrio public boolean isAvailable(@NotNull final Project project, final Editor editor, final PsiFile file) { final PsiElement element = file.findElementAt(editor.getCaretModel().getOffset()); if (PsiUtil.isJavaToken(element, JavaTokenType.STRING_LITERAL) && - PsiUtil.getLanguageLevel(file) == LanguageLevel.JDK_X) { + PsiUtil.getLanguageLevel(file) == LanguageLevel.JDK_12_PREVIEW) { PsiElement parent = element.getParent(); if (parent instanceof PsiLiteralExpressionImpl) { String text = ((PsiLiteralExpressionImpl)parent).getInnerText(); diff --git a/java/java-psi-api/src/com/intellij/openapi/projectRoots/JavaSdkVersion.java b/java/java-psi-api/src/com/intellij/openapi/projectRoots/JavaSdkVersion.java index e310d869b91a..85c9cac34035 100644 --- a/java/java-psi-api/src/com/intellij/openapi/projectRoots/JavaSdkVersion.java +++ b/java/java-psi-api/src/com/intellij/openapi/projectRoots/JavaSdkVersion.java @@ -26,7 +26,8 @@ public enum JavaSdkVersion { JDK_1_8(LanguageLevel.JDK_1_8), JDK_1_9(LanguageLevel.JDK_1_9), JDK_10(LanguageLevel.JDK_10), - JDK_11(LanguageLevel.JDK_11); + JDK_11(LanguageLevel.JDK_11), + JDK_12(LanguageLevel.JDK_12); private final LanguageLevel myMaxLanguageLevel; diff --git a/java/java-psi-api/src/com/intellij/pom/java/LanguageLevel.java b/java/java-psi-api/src/com/intellij/pom/java/LanguageLevel.java index 00d7959284a2..f9aa104310ac 100644 --- a/java/java-psi-api/src/com/intellij/pom/java/LanguageLevel.java +++ b/java/java-psi-api/src/com/intellij/pom/java/LanguageLevel.java @@ -30,6 +30,8 @@ public enum LanguageLevel { JDK_1_9(JavaCoreBundle.message("jdk.1.9.language.level.description"), 9), JDK_10(JavaCoreBundle.message("jdk.10.language.level.description"), 10), JDK_11(JavaCoreBundle.message("jdk.11.language.level.description"), 11), + JDK_12(JavaCoreBundle.message("jdk.12.language.level.description"), 12), + JDK_12_PREVIEW(JavaCoreBundle.message("jdk.12.preview.language.level.description"), 12), JDK_X(JavaCoreBundle.message("jdk.X.language.level.description"), 12); public static final LanguageLevel HIGHEST = JDK_11; diff --git a/java/java-psi-api/src/messages/JavaCoreBundle.properties b/java/java-psi-api/src/messages/JavaCoreBundle.properties index 1d9143d48f2f..e24adc6ab6d2 100644 --- a/java/java-psi-api/src/messages/JavaCoreBundle.properties +++ b/java/java-psi-api/src/messages/JavaCoreBundle.properties @@ -10,4 +10,6 @@ jdk.1.8.language.level.description=8 - Lambdas, type annotations etc. jdk.1.9.language.level.description=9 - Modules, private methods in interfaces etc. jdk.10.language.level.description=10 - Local variable type inference jdk.11.language.level.description=11 - Local variable syntax for lambda parameters +jdk.12.language.level.description=12 - +jdk.12.preview.language.level.description=12 (Preview) - Switch expressions, raw string literals jdk.X.language.level.description=X - Experimental features diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/LightAdvRawStringLiteralsTest.java b/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/LightAdvRawStringLiteralsTest.java index 20e41fbe8783..9aeee23798c2 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/LightAdvRawStringLiteralsTest.java +++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/LightAdvRawStringLiteralsTest.java @@ -26,7 +26,7 @@ public class LightAdvRawStringLiteralsTest extends LightCodeInsightFixtureTestCa @NotNull @Override protected LightProjectDescriptor getProjectDescriptor() { - return JAVA_X; + return JAVA_12; } public void testStringAssignability() { diff --git a/java/testFramework/src/com/intellij/testFramework/fixtures/LightCodeInsightFixtureTestCase.java b/java/testFramework/src/com/intellij/testFramework/fixtures/LightCodeInsightFixtureTestCase.java index 62e6e4562711..ce31f4cc9955 100644 --- a/java/testFramework/src/com/intellij/testFramework/fixtures/LightCodeInsightFixtureTestCase.java +++ b/java/testFramework/src/com/intellij/testFramework/fixtures/LightCodeInsightFixtureTestCase.java @@ -60,6 +60,7 @@ public abstract class LightCodeInsightFixtureTestCase extends UsefulTestCase { @NotNull public static final LightProjectDescriptor JAVA_10 = new ProjectDescriptor(LanguageLevel.JDK_10); @NotNull public static final LightProjectDescriptor JAVA_10_ANNOTATED = new ProjectDescriptor(LanguageLevel.JDK_10, true); @NotNull public static final LightProjectDescriptor JAVA_11 = new ProjectDescriptor(LanguageLevel.JDK_11); + @NotNull public static final LightProjectDescriptor JAVA_12 = new ProjectDescriptor(LanguageLevel.JDK_12_PREVIEW); @NotNull public static final LightProjectDescriptor JAVA_X = new ProjectDescriptor(LanguageLevel.JDK_X); public static final LightProjectDescriptor JAVA_LATEST = new ProjectDescriptor(LanguageLevel.HIGHEST) { diff --git a/jps/model-api/src/org/jetbrains/jps/model/java/LanguageLevel.java b/jps/model-api/src/org/jetbrains/jps/model/java/LanguageLevel.java index c6d5dd92d402..38142666507d 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/java/LanguageLevel.java +++ b/jps/model-api/src/org/jetbrains/jps/model/java/LanguageLevel.java @@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull; * @author nik */ public enum LanguageLevel { - JDK_1_3(3), JDK_1_4(4), JDK_1_5(5), JDK_1_6(6), JDK_1_7(7), JDK_1_8(8), JDK_1_9(9), JDK_10(10), JDK_11(11), JDK_X(12); + JDK_1_3(3), JDK_1_4(4), JDK_1_5(5), JDK_1_6(6), JDK_1_7(7), JDK_1_8(8), JDK_1_9(9), JDK_10(10), JDK_11(11), JDK_12(12), JDK_12_PREVIEW(12), JDK_X(13); private final JavaVersion myVersion;