Here is my sample java code:
public class Test {
    public static void main(String[] args) {
        methodDepth0(
            ()->
                methodDepth1(
                    ()->
                        methodDepth2()
                )
        );
    }
    static Object methodDepth2() {
        return null;
    }
    interface MyIF {
        void call();
    }
    static void methodDepth0(MyIF myIf){
        myIf.call();
    }
    interface MyIF2 {
        void call();
    }
    static void methodDepth1(MyIF2 myIf2){
        myIf2.call();
    }
}
When I open call hierarchy of method methodDepth2() from Eclipse(4.4), 
open call hierarchy stop searching next caller:

What I expect is like opening call hierarchy of method methodDepth1() which show until the main method.

From what I can tell the lack of call hierarchy depth is due to (re)evaluation of code at runtime. It is explained in 15.27.4 Run-Time Evaluation of Lambda Expressions in the Java Language Specification.
At run time, evaluation of a lambda expression is similar to evaluation of a class instance creation expression, insofar as normal completion produces a reference to an object. Evaluation of a lambda expression is distinct from execution of the lambda body.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With