Package org.codehaus.groovy.vmplugin.v16
Class Java16
java.lang.Object
org.codehaus.groovy.vmplugin.v8.Java8
org.codehaus.groovy.vmplugin.v9.Java9
org.codehaus.groovy.vmplugin.v10.Java10
org.codehaus.groovy.vmplugin.v16.Java16
- All Implemented Interfaces:
- VMPlugin
Additional Java 16 based functions will be added here as needed.
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptiongetInvokeSpecialHandle(Method method, Object receiver) Returns a handle with bound receiver to invokeSpecial the given method.getRecordComponentNames(Class<?> maybeRecord) Returns the list of record component names or the empty list if the class is not a record or running on a pre16 JDK.intGives the version the plugin is made forinvokeHandle(Object handle, Object[] args) Invokes a handle produced by #getInvokeSpecialdHandleprotected voidmakeRecordComponents(CompileUnit cu, ClassNode classNode, Class<?> clazz) protected MethodHandles.LookupDeprecated.Methods inherited from class org.codehaus.groovy.vmplugin.v10.Java10getPluginDefaultGroovyMethodsMethods inherited from class org.codehaus.groovy.vmplugin.v9.Java9checkAccessible, checkCanSetAccessible, getDefaultImportClasses, getLookupConstructor, getPrivateLookup, transformMetaMethod, trySetAccessibleMethods inherited from class org.codehaus.groovy.vmplugin.v8.Java8configureAnnotation, configureAnnotation, configureAnnotationNodeFromDefinition, configureClassNode, configureTypeVariableDefinition, configureTypeVariableReference, doPrivileged, doPrivileged, fillParameterNames, getElementCode, getLookup, getPluginStaticGroovyMethods, invalidateCallSites, makeClassNode, of, setAdditionalClassInformation, transformMetaMethod
- 
Constructor Details- 
Java16public Java16()
 
- 
- 
Method Details- 
getVersionpublic int getVersion()Description copied from interface:VMPluginGives the version the plugin is made for- Specified by:
- getVersionin interface- VMPlugin
- Overrides:
- getVersionin class- Java10
- Returns:
- 7 for jdk7, 8 for jdk8, 9 for jdk9 or higher
 
- 
getInvokeSpecialHandleDescription copied from interface:VMPluginReturns a handle with bound receiver to invokeSpecial the given method. This method will require at least Java 7, but since the source has to compile on older Java versions as well it is not marked to return a MethodHandle and uses Object instead- Specified by:
- getInvokeSpecialHandlein interface- VMPlugin
- Overrides:
- getInvokeSpecialHandlein class- Java8
- Returns:
- null in case of jdk<7, otherwise a handle that takes the method call arguments for the invokespecial call
 
- 
invokeHandleDescription copied from interface:VMPluginInvokes a handle produced by #getInvokeSpecialdHandle- Specified by:
- invokeHandlein interface- VMPlugin
- Overrides:
- invokeHandlein class- Java8
- Parameters:
- handle- the handle
- args- arguments for the method call, can be empty but not null
- Returns:
- the result of the method call
- Throws:
- Throwable
 
- 
makeRecordComponents- Overrides:
- makeRecordComponentsin class- Java8
 
- 
newLookupDeprecated.
- 
getRecordComponentNamesDescription copied from interface:VMPluginReturns the list of record component names or the empty list if the class is not a record or running on a pre16 JDK.- Parameters:
- maybeRecord- the class in question
- Returns:
- the default list of names
 
 
-