private static @NotNull LanguageReferenceProviders byLanguageInner(@NotNull Language language) {
    List<PsiSymbolReferenceProviderBean> result = new ArrayList<>();
    for (PsiSymbolReferenceProviderBean bean : EP_NAME.getExtensionList()) {
      Language hostLanguage = bean.getHostLanguage();
      boolean matches = hostLanguage instanceof MetaLanguage ? ((MetaLanguage)hostLanguage).matchesLanguage(language)
                                                             : hostLanguage == Language.ANY || language.isKindOf(hostLanguage);
      if (matches) {
        result.add(bean);
      }
    }
    return new LanguageReferenceProviders(result);
  }
private static @NotNull LanguageReferenceProviders byLanguageInner(@NotNull Language language)