code: public static Supplier<ExpressionTree> receiverInstance() {
      return new Supplier<ExpressionTree>() {
        @Override
        public ExpressionTree get(VisitorState state) {
          MethodInvocationTree method = (MethodInvocationTree) state.getPath().getLeaf();
          return ((JCFieldAccess) method.getMethodSelect()).getExpression();
        }
      };
    }
docs: Supplies the expression which gives the instance of an object that will receive the method
  call. For example, in {@code a.getB().getC()} if the visitor is currently visiting the {@code
  getC()} method invocation, then this supplier gives the expression {@code a.getB()}.