[Java] Class Java9
- org.codehaus.groovy.vmplugin.v9.Java9
public class Java9 extends Java8
Additional Java 9 based functions will be added here as needed.
Methods Summary
Type Params | Return Type | Name and description |
---|---|---|
public boolean |
checkAccessible(Class<?> callerClass, Class<?> declaringClass, int memberModifiers, boolean allowIllegalAccess) | |
public boolean |
checkCanSetAccessible(AccessibleObject accessibleObject, Class<?> callerClass) This method may be used by a caller in class C to check whether to enable access to a member of declaring class D successfully if Java8#checkCanSetAccessible(java.lang.reflect.AccessibleObject, java.lang.Class) returns true and any of the following hold: | |
public Map<String, Set<String>> |
getDefaultImportClasses(String[] packageNames) | |
public Object |
getInvokeSpecialHandle(Method method, Object receiver) | |
public int |
getVersion() | |
public static MethodHandles.Lookup |
of(Class<?> declaringClass) | |
public MetaMethod |
transformMetaMethod(MetaClass metaClass, MetaMethod metaMethod, Class<?> caller) | |
public boolean |
trySetAccessible(AccessibleObject ao) |
Inherited Methods Summary
Method Detail
@Override public boolean checkAccessible(Class<?> callerClass, Class<?> declaringClass, int memberModifiers, boolean allowIllegalAccess)
public boolean checkCanSetAccessible(AccessibleObject accessibleObject, Class<?> callerClass)
This method may be used by a caller in class C to check whether to enable access to a member of declaring class D successfully if Java8#checkCanSetAccessible(java.lang.reflect.AccessibleObject, java.lang.Class) returns true and any of the following hold:
1) C and D are in the same module. 2) The member is public and D is public in a package that the module containing D exports to at least the module containing C. 3) The member is protected static, D is public in a package that the module containing D exports to at least the module containing C, and C is a subclass of D. 4) D is in a package that the module containing D opens to at least the module containing C. All packages in unnamed and open modules are open to all modules and so this method always succeeds when D is in an unnamed or open module.
- Parameters:
-
accessibleObject
- the accessible object to check -
callerClass
- the callerClass to invokesetAccessible
- Returns:
- the check result
@Override public Map<String, Set<String>> getDefaultImportClasses(String[] packageNames)
@Override public Object getInvokeSpecialHandle(Method method, Object receiver)
@Override public int getVersion()
public static MethodHandles.Lookup of(Class<?> declaringClass)
@Override public MetaMethod transformMetaMethod(MetaClass metaClass, MetaMethod metaMethod, Class<?> caller)
@Override public boolean trySetAccessible(AccessibleObject ao)
© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/3.0.7/html/gapi/org/codehaus/groovy/vmplugin/v9/Java9.html