package p;
class TestInlineLambda1 {
private Object fun1() {
Object fi1 = (FI) x -> x++; // [1]
Object fi2;
fi2 = (FI) x -> x++; // [2]
Object[] a = new Object[] {(FI) x -> x++, (FI) x -> x++}; // [3]
Object[][] b = new Object[][] {{(FI) x -> x++, (FI) x -> x++}, {(FI) x -> x++}}; // [4]
Object[] c = {(FI) x -> x++, (FI) x -> x++}; // [5]
Object[][] d = {{(FI) x -> x++}, {(FI) x -> x++}}; // [6]
int x1 = fun2((FI) x -> x++); // [7]
TestInlineLambda1 c1 = new TestInlineLambda1((FI) x -> x++); // [8]
F f1 = (fi_p) -> ((FI) x -> x++); // [9]
F f2 = (fi_p) -> {
return (FI) x -> x++; // [10]
};
f1.bar((FI) x -> x++); // [11]
Object fi4 = true ? (FI) x -> x++ : (FI) x -> x++; // [12]
return (FI) x -> x++; // [13]
}
private int fun2(Object fi) {return 0;}
public TestInlineLambda1(Object fi) { }
}
@FunctionalInterface
interface FI {
int foo(int x);
}
@FunctionalInterface
interface F {
Object bar(Object fi);
}