HierarchyProvider (@NotNull LanguageExtension<HierarchyProvider> extension, @Nullable PsiElement psiElement, @Nullable PsiFile psiFile, @NotNull DataContext dataContext) { HierarchyProvider provider = findBestHierarchyProvider(extension, psiElement, dataContext); if (provider == null) { return findBestHierarchyProvider(extension, psiFile, dataContext); } return provider; }