diff --git a/python/psi-api/src/com/jetbrains/python/psi/LanguageLevel.java b/python/psi-api/src/com/jetbrains/python/psi/LanguageLevel.java index 8229dfdd43df..1c56c2b60f3d 100644 --- a/python/psi-api/src/com/jetbrains/python/psi/LanguageLevel.java +++ b/python/psi-api/src/com/jetbrains/python/psi/LanguageLevel.java @@ -15,11 +15,14 @@ */ package com.jetbrains.python.psi; +import com.google.common.collect.ImmutableList; import com.intellij.openapi.util.Key; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import org.jetbrains.annotations.NotNull; +import java.util.List; + /** * @author yole */ @@ -35,6 +38,19 @@ public enum LanguageLevel { PYTHON34(34, true, false, true, true), PYTHON35(35, true, false, true, true); + public static List ALL_LEVELS = ImmutableList.builder() + .add(PYTHON24) + .add(PYTHON25) + .add(PYTHON26) + .add(PYTHON27) + .add(PYTHON30) + .add(PYTHON31) + .add(PYTHON32) + .add(PYTHON33) + .add(PYTHON34) + .add(PYTHON35) + .build(); + private static LanguageLevel DEFAULT2 = PYTHON27; private static LanguageLevel DEFAULT3 = PYTHON34; diff --git a/python/src/com/jetbrains/python/validation/UnsupportedFeaturesUtil.java b/python/src/com/jetbrains/python/validation/UnsupportedFeaturesUtil.java index 4018b339fc5d..a84651c009ab 100644 --- a/python/src/com/jetbrains/python/validation/UnsupportedFeaturesUtil.java +++ b/python/src/com/jetbrains/python/validation/UnsupportedFeaturesUtil.java @@ -41,8 +41,8 @@ public class UnsupportedFeaturesUtil { public static Map> BUILTINS = new HashMap>(); public static Map> MODULES = new HashMap>(); public static Map>> CLASS_METHODS = new HashMap>>(); + public static final List ALL_LANGUAGE_LEVELS = new ArrayList(); - public static Vector ALL_LANGUAGE_LEVELS; static { try { fillMaps(); @@ -52,7 +52,9 @@ public class UnsupportedFeaturesUtil { Logger log = Logger.getInstance(UnsupportedFeaturesUtil.class.getName()); log.error("Cannot find \"versions.xml\". " + e.getMessage()); } - fillAllLanguageLeves(); + for (LanguageLevel level : LanguageLevel.ALL_LEVELS) { + ALL_LANGUAGE_LEVELS.add(level.toString()); + } } private static void fillTestCaseMethods() throws IOException { @@ -72,19 +74,6 @@ public class UnsupportedFeaturesUtil { } } - private static void fillAllLanguageLeves() { - ALL_LANGUAGE_LEVELS = new Vector(); - ALL_LANGUAGE_LEVELS.add(LanguageLevel.PYTHON24.toString()); - ALL_LANGUAGE_LEVELS.add(LanguageLevel.PYTHON25.toString()); - ALL_LANGUAGE_LEVELS.add(LanguageLevel.PYTHON26.toString()); - ALL_LANGUAGE_LEVELS.add(LanguageLevel.PYTHON27.toString()); - ALL_LANGUAGE_LEVELS.add(LanguageLevel.PYTHON30.toString()); - ALL_LANGUAGE_LEVELS.add(LanguageLevel.PYTHON31.toString()); - ALL_LANGUAGE_LEVELS.add(LanguageLevel.PYTHON32.toString()); - ALL_LANGUAGE_LEVELS.add(LanguageLevel.PYTHON33.toString()); - ALL_LANGUAGE_LEVELS.add(LanguageLevel.PYTHON34.toString()); - } - private static void fillMaps() throws IOException { Logger log = Logger.getInstance(UnsupportedFeaturesUtil.class.getName()); FileReader reader = new FileReader(PythonHelpersLocator.getHelperPath("/tools/versions.xml"));