1 package org.codehaus.gmavenplus.javaparser; 2 3 import java.util.Arrays; 4 5 public enum LanguageLevel { 6 JAVA_1_0, 7 JAVA_1_1, 8 JAVA_1_2, 9 JAVA_1_3, 10 JAVA_1_4, 11 JAVA_5, 12 JAVA_6, 13 JAVA_7, 14 JAVA_8, 15 JAVA_9, 16 JAVA_10, 17 JAVA_10_PREVIEW, 18 JAVA_11, 19 JAVA_11_PREVIEW, 20 JAVA_12, 21 JAVA_12_PREVIEW, 22 JAVA_13, 23 JAVA_13_PREVIEW, 24 JAVA_14, 25 JAVA_14_PREVIEW, 26 JAVA_15, 27 JAVA_15_PREVIEW, 28 JAVA_16, 29 JAVA_16_PREVIEW, 30 JAVA_17, 31 JAVA_17_PREVIEW, 32 JAVA_18, 33 JAVA_19, 34 JAVA_20, 35 JAVA_21; 36 37 public static final LanguageLevel RAW = null; 38 public static final LanguageLevel POPULAR = JAVA_11; 39 public static final LanguageLevel CURRENT = JAVA_18; 40 public static final LanguageLevel BLEEDING_EDGE = JAVA_21; 41 private static final LanguageLevel[] yieldSupport = new LanguageLevel[]{ 42 JAVA_1_0, JAVA_13, JAVA_13_PREVIEW, JAVA_14, JAVA_14_PREVIEW, JAVA_15, JAVA_15_PREVIEW, JAVA_16, 43 JAVA_16_PREVIEW, JAVA_17, JAVA_17_PREVIEW, JAVA_18, JAVA_19, JAVA_20, JAVA_21}; 44 45 public boolean isYieldSupported() { 46 return Arrays.stream(yieldSupport).anyMatch((level) -> level == this); 47 } 48 }