< prev index next >

src/java.base/share/classes/java/lang/invoke/MemberName.java

Print this page

        

*** 23,32 **** --- 23,34 ---- * questions. */ package java.lang.invoke; + import jdk.internal.misc.JavaLangInvokeAccess; + import jdk.internal.misc.SharedSecrets; import sun.invoke.util.BytecodeDescriptor; import sun.invoke.util.VerifyAccess; import java.lang.reflect.Constructor; import java.lang.reflect.Field;
*** 1141,1157 **** return buf; } } static { ! // Allow privileged classes outside of java.lang ! jdk.internal.misc.SharedSecrets.setJavaLangInvokeAccess(new jdk.internal.misc.JavaLangInvokeAccess() { public Object newMemberName() { return new MemberName(); } public String getName(Object mname) { MemberName memberName = (MemberName)mname; return memberName.getName(); } }); } } --- 1143,1169 ---- return buf; } } static { ! // StackFrameInfo stores Member and this provides the shared secrets ! // for stack walker to access MemberName information. ! SharedSecrets.setJavaLangInvokeAccess(new JavaLangInvokeAccess() { ! @Override public Object newMemberName() { return new MemberName(); } + + @Override public String getName(Object mname) { MemberName memberName = (MemberName)mname; return memberName.getName(); } + + @Override + public boolean isNative(Object mname) { + MemberName memberName = (MemberName)mname; + return memberName.isNative(); + } }); } }
< prev index next >