Set<InspectionSuppressor> (@NotNull PsiElement element) { PsiFile file = element.getContainingFile(); if (file == null) { PsiUtilCore.ensureValid(element); return Collections.emptySet(); } PsiUtilCore.ensureValid(file); FileViewProvider viewProvider = file.getViewProvider(); Language elementLanguage = element.getLanguage(); List<InspectionSuppressor> elementLanguageSuppressors = LanguageInspectionSuppressors.INSTANCE.allForLanguage(elementLanguage); Language baseLanguage = viewProvider.getBaseLanguage(); if (viewProvider instanceof TemplateLanguageFileViewProvider) { Set<InspectionSuppressor> suppressors = new LinkedHashSet<>(); suppressors.addAll(LanguageInspectionSuppressors.INSTANCE.allForLanguage(baseLanguage)); for (Language language : viewProvider.getLanguages()) { suppressors.addAll(LanguageInspectionSuppressors.INSTANCE.allForLanguage(language)); } suppressors.addAll(elementLanguageSuppressors); return suppressors; } if (!elementLanguage.isKindOf(baseLanguage)) { // handling embedding elements {@link EmbeddingElementType} Set<InspectionSuppressor> suppressors = new LinkedHashSet<>(); suppressors.addAll(LanguageInspectionSuppressors.INSTANCE.allForLanguage(baseLanguage)); suppressors.addAll(elementLanguageSuppressors); return suppressors; } int size = elementLanguageSuppressors.size(); return switch (size) { case 0 -> Collections.emptySet(); case 1 -> Collections.singleton(elementLanguageSuppressors.get(0)); default -> new HashSet<>(elementLanguageSuppressors); }; }