[java] More JavaFeature uses

Also: new JavaFeatures (ASSERTIONS, ENUMS, PRIVATE_INTERFACE_METHODS)

GitOrigin-RevId: f073845a77730b486afa56317e2c12ff044f5425
This commit is contained in:
Tagir Valeev
2024-02-12 19:12:43 +00:00
committed by intellij-monorepo-bot
parent 2aa52eea2d
commit bf85acba82
37 changed files with 119 additions and 107 deletions
@@ -52,6 +52,8 @@ element.type.semicolon=semicolon
element.receiver.parameter=receiver parameter
element.method.call=method call
feature.assertions=Assertions
feature.enums=Enums
feature.generics=Generics
feature.annotations=Annotations
feature.static.imports=Static imports
@@ -77,6 +79,7 @@ feature.static.interface.calls=Static interface method calls
feature.effectively.final=Effectively final variables
feature.try.with.resources.refs=Resource references
feature.modules=Modules
feature.private.interface.methods=Private interface methods
feature.collection.factories=Collection factory methods
feature.lvti=Local variable type inference
feature.var.lambda.parameter='var' in lambda parameters
@@ -13,6 +13,8 @@ import java.util.Set;
* whether a particular features is available in a given context
*/
public enum JavaFeature {
ASSERTIONS(LanguageLevel.JDK_1_4, "feature.generics"),
ENUMS(LanguageLevel.JDK_1_5, "feature.enums"),
GENERICS(LanguageLevel.JDK_1_5, "feature.generics"),
ANNOTATIONS(LanguageLevel.JDK_1_5, "feature.annotations"),
STATIC_IMPORTS(LanguageLevel.JDK_1_5, "feature.static.imports"),
@@ -46,6 +48,7 @@ public enum JavaFeature {
REFS_AS_RESOURCE(LanguageLevel.JDK_1_9, "feature.try.with.resources.refs"),
MODULES(LanguageLevel.JDK_1_9, "feature.modules"),
COLLECTION_FACTORIES(LanguageLevel.JDK_1_9, "feature.collection.factories"),
PRIVATE_INTERFACE_METHODS(LanguageLevel.JDK_1_9, "feature.private.interface.methods"),
LVTI(LanguageLevel.JDK_10, "feature.lvti"),
VAR_LAMBDA_PARAMETER(LanguageLevel.JDK_11, "feature.var.lambda.parameter"),
NESTMATES(LanguageLevel.JDK_11, "feature.nestmates"),