private static List<? extends PsiType> composeAcceptableType(@NotNull PsiClass interface2Consider,
                                                             @NotNull PsiFunctionalExpression expression,
                                                             PsiType qualifierType) {
    final PsiType type = JavaPsiFacade.getElementFactory(interface2Consider.getProject()).createType(interface2Consider, PsiSubstitutor.EMPTY);
    if (expression.isAcceptable(type)) {
      return Collections.singletonList(type);
    }

    return composeAcceptableType1(interface2Consider, expression, qualifierType);
  }
private static List<? extends PsiType> composeAcceptableType(@NotNull PsiClass interface2Consider,
                                                             @NotNull PsiFunctionalExpression expression,
                                                             PsiType qualifierType)