@Nullable public static Language getLanguage(String langName) { for (LanguageCodeStyleSettingsProvider provider : Extensions.getExtensions(EP_NAME)) { String name = provider.getLanguageName(); if (name == null) name = provider.getLanguage().getDisplayName(); if (langName.equals(name)) { return provider.getLanguage(); } } return null; }
@NotNull public static Language[] getLanguagesWithCodeStyleSettings() { final ArrayList<Language> languages = new ArrayList<>(); for (LanguageCodeStyleSettingsProvider provider : Extensions.getExtensions(EP_NAME)) { languages.add(provider.getLanguage()); } return languages.toArray(new Language[languages.size()]); }
@Nullable public static LanguageCodeStyleSettingsProvider forLanguage(final Language language) { for (LanguageCodeStyleSettingsProvider provider : Extensions.getExtensions(EP_NAME)) { if (provider.getLanguage().equals(language)) { return provider; } } return null; }