private static boolean isExtensionPointNameDeclarationField(@NotNull UField uField) {
    if (!uField.isFinal()) {
      return false;
    }

    final UExpression initializer = uField.getUastInitializer();
    if (!(initializer instanceof UCallExpression) &&
        !(initializer instanceof UQualifiedReferenceExpression)) {
      return false;
    }

    final PsiClass fieldClass = PsiTypesUtil.getPsiClass(uField.getType());
    if (fieldClass == null) {
      return false;
    }

    final String qualifiedClassName = fieldClass.getQualifiedName();
    return ExtensionPointName.class.getName().equals(qualifiedClassName) ||
           ProjectExtensionPointName.class.getName().equals(qualifiedClassName) ||
           InheritanceUtil.isInheritor(fieldClass, false, KeyedExtensionCollector.class.getName());
  }
private static boolean isExtensionPointNameDeclarationField(@NotNull UField uField)