Package org.codehaus.groovy.vmplugin.v5
Class Java5
- java.lang.Object
-
- org.codehaus.groovy.vmplugin.v5.Java5
-
-
Constructor Summary
Constructors Constructor Description Java5()
-
Method Summary
-
-
-
Method Detail
-
getVersion
public int getVersion()
Description copied from interface:VMPlugin
Gives the version the plugin is made for- Specified by:
getVersion
in interfaceVMPlugin
- Returns:
- 7 for jdk7, 8 for jdk8, 9 for jdk9 or higher
-
getPluginDefaultGroovyMethods
public Class[] getPluginDefaultGroovyMethods()
- Specified by:
getPluginDefaultGroovyMethods
in interfaceVMPlugin
-
getPluginStaticGroovyMethods
public Class[] getPluginStaticGroovyMethods()
- Specified by:
getPluginStaticGroovyMethods
in interfaceVMPlugin
-
setAdditionalClassInformation
public void setAdditionalClassInformation(ClassNode cn)
- Specified by:
setAdditionalClassInformation
in interfaceVMPlugin
-
configureTypeVariableDefinition
public static GenericsType configureTypeVariableDefinition(ClassNode base, ClassNode[] cBounds)
-
configureAnnotationFromDefinition
@Deprecated public void configureAnnotationFromDefinition(AnnotationNode definition, AnnotationNode root)
Deprecated.
-
configureAnnotationNodeFromDefinition
public void configureAnnotationNodeFromDefinition(AnnotationNode definition, AnnotationNode root)
- Specified by:
configureAnnotationNodeFromDefinition
in interfaceVMPlugin
-
configureAnnotation
public void configureAnnotation(AnnotationNode node)
- Specified by:
configureAnnotation
in interfaceVMPlugin
-
getElementCode
protected int getElementCode(ElementType value)
-
configureClassNode
public void configureClassNode(CompileUnit compileUnit, ClassNode classNode)
- Specified by:
configureClassNode
in interfaceVMPlugin
-
invalidateCallSites
public void invalidateCallSites()
- Specified by:
invalidateCallSites
in interfaceVMPlugin
-
getInvokeSpecialHandle
public Object getInvokeSpecialHandle(Method m, Object receiver)
Description copied from interface:VMPlugin
Returns 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:
getInvokeSpecialHandle
in interfaceVMPlugin
- Returns:
- null in case of jdk<7, otherwise a handle that takes the method call arguments for the invokespecial call
-
invokeHandle
public Object invokeHandle(Object handle, Object[] args) throws Throwable
Description copied from interface:VMPlugin
Invokes a handle produced by #getInvokeSpecialdHandle- Specified by:
invokeHandle
in interfaceVMPlugin
- Parameters:
handle
- the handleargs
- arguments for the method call, can be empty but not null- Returns:
- the result of the method call
- Throws:
Throwable
-
-