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