summaryrefslogtreecommitdiff
path: root/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA122084.java
blob: 1995793fd0207b7c23d1f4c693eaaa8f0388638c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class InferenceFailBug {
  interface Func1<T1, R> {
    R apply(T1 v1);
    void other();
  }
  interface F1<T1, R> extends Func1<T1, R> {
    default void other() {}
  }

  <T1, R> Func1<T1, R> func(F1<T1, R> f1) { return f1; }

  interface Future<T> {
    <R> Future<R> map(Func1<T, R> f1);
  }
  private Future<Integer> futureExample(Future<String> future) {
    return future.map(func(s -> s.toUpperCase())).map(func(s -> s.length()));
  }
}