< prev index next >

src/java.base/share/classes/jdk/internal/access/JavaLangInvokeAccess.java

Print this page
*** 28,21 ***
--- 28,45 ---
  import jdk.internal.invoke.NativeEntryPoint;
  
  import java.lang.invoke.MethodHandle;
  import java.lang.invoke.MethodType;
  import java.lang.invoke.VarHandle;
+ import java.lang.reflect.Constructor;
+ import java.lang.reflect.Method;
  import java.nio.ByteOrder;
  import java.util.List;
  import java.util.Map;
  import java.util.stream.Stream;
  
  public interface JavaLangInvokeAccess {
+ 
+     /**
+      * Creates a direct method handle that can invoke the reflected method
+      */
+     MethodHandle privilegedUnreflect(Method method);
+ 
+     /**
+      * Create a method handle for the reflected constructor.
+      */
+     MethodHandle privilegedUnreflect(Constructor<?> ctor);
+ 
+     /**
+      * Create a method handle for a static method
+      */
+     MethodHandle privilegedFindStatic(Class<?> refc, String name, MethodType type)
+         throws NoSuchMethodException;
+ 
      /**
       * Create a new MemberName instance. Used by {@code StackFrameInfo}.
       */
      Object newMemberName();
  
+     /**
+      * Create a new MemberName instance. Used by {@code StackFrameInfo}.
+      */
+     Object newMemberName(Method method);
+ 
      /**
       * Returns the name for the given MemberName. Used by {@code StackFrameInfo}.
       */
      String getName(Object mname);
  
< prev index next >