Package org.codehaus.groovy.vmplugin.v7
Class IndyInterface
java.lang.Object
org.codehaus.groovy.vmplugin.v7.IndyInterface
Deprecated.
Legacy class containing methods called by Groovy 2.5 Indy compiled bytecode.
Includes the interfacing methods with bytecode for invokedynamic and some helper methods and classes.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
Deprecated.Enum for easy differentiation between call types -
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Deprecated.flags for method and property callsstatic final int
Deprecated.flags for method and property callsstatic final MethodHandles.Lookup
Deprecated.LOOKUP constant used for example in unreflect callsstatic final int
Deprecated.flags for method and property callsstatic final int
Deprecated.flags for method and property callsstatic final int
Deprecated.flags for method and property callsstatic final int
Deprecated.flags for method and property calls -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic CallSite
bootstrap
(MethodHandles.Lookup caller, String callType, MethodType type, String name, int flags) Deprecated.bootstrap method for method calls from Groovy compiled code with indy enabled.static Object
fromCache
(MutableCallSite callSite, Class<?> sender, String methodName, int callID, Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver, Object[] arguments) Deprecated.Get the cached methodhandle.static Object
selectMethod
(MutableCallSite callSite, Class<?> sender, String methodName, int callID, Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver, Object[] arguments) Deprecated.Core method for indy method selection using runtime types.static CallSite
staticArrayAccess
(MethodHandles.Lookup lookup, String name, MethodType type) Deprecated.
-
Field Details
-
SAFE_NAVIGATION
public static final int SAFE_NAVIGATIONDeprecated.flags for method and property calls- See Also:
-
THIS_CALL
public static final int THIS_CALLDeprecated.flags for method and property calls- See Also:
-
GROOVY_OBJECT
public static final int GROOVY_OBJECTDeprecated.flags for method and property calls- See Also:
-
IMPLICIT_THIS
public static final int IMPLICIT_THISDeprecated.flags for method and property calls- See Also:
-
SPREAD_CALL
public static final int SPREAD_CALLDeprecated.flags for method and property calls- See Also:
-
UNCACHED_CALL
public static final int UNCACHED_CALLDeprecated.flags for method and property calls- See Also:
-
LOOKUP
Deprecated.LOOKUP constant used for example in unreflect calls
-
-
Constructor Details
-
IndyInterface
public IndyInterface()Deprecated.
-
-
Method Details
-
bootstrap
public static CallSite bootstrap(MethodHandles.Lookup caller, String callType, MethodType type, String name, int flags) Deprecated.bootstrap method for method calls from Groovy compiled code with indy enabled. This method gets a flags parameter which uses the following encoding:- 1 is the flag value for safe navigation see
SAFE_NAVIGATION
- 2 is the flag value for a call on this see
THIS_CALL
- Parameters:
caller
- - the callercallType
- - the type of the calltype
- - the call site typename
- - the real method nameflags
- - call flags- Returns:
- the produced CallSite
- Since:
- 2.1.0
- 1 is the flag value for safe navigation see
-
fromCache
public static Object fromCache(MutableCallSite callSite, Class<?> sender, String methodName, int callID, Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver, Object[] arguments) throws Throwable Deprecated.Get the cached methodhandle. if the related methodhandle is not found in the inline cache, cache and return it.- Throws:
Throwable
-
selectMethod
public static Object selectMethod(MutableCallSite callSite, Class<?> sender, String methodName, int callID, Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver, Object[] arguments) throws Throwable Deprecated.Core method for indy method selection using runtime types.- Throws:
Throwable
-
staticArrayAccess
Deprecated.- Since:
- 2.5.0
-