private Lookup safeReadLookup(Class<?> declaringClass)
      throws IllegalAccessException, InvocationTargetException, NoSuchMethodException {
    Lookup lookup = MethodHandles.lookup();

    Object privateLookupIn =
        MethodHandles.class
            .getMethod("privateLookupIn", Class.class, Lookup.class)
            .invoke(null, declaringClass, lookup);
    return (Lookup) privateLookupIn;
  }
equivalent to:

<pre>
return MethodHandles.privateLookupIn(declaringClass, MethodHandles.lookup());
</pre>

@param declaringClass
@return
@throws IllegalAccessException
@throws InvocationTargetException
@throws NoSuchMethodException
core/src/main/java/feign/DefaultMethodHandler.java