public class IndyInterface
extends java.lang.Object
Modifier and Type | Class | Description |
---|---|---|
static class |
IndyInterface.CALL_TYPES |
Enum for easy differentiation between call types
|
Modifier and Type | Field | Description |
---|---|---|
static int |
GROOVY_OBJECT |
flags for method and property calls
|
static int |
IMPLICIT_THIS |
flags for method and property calls
|
protected static java.util.logging.Logger |
LOG |
Logger
|
protected static boolean |
LOG_ENABLED |
boolean to indicate if logging for indy is enabled
|
static java.lang.invoke.MethodHandles.Lookup |
LOOKUP |
LOOKUP constant used for for example unreflect calls
|
static int |
SAFE_NAVIGATION |
flags for method and property calls
|
static int |
SPREAD_CALL |
flags for method and property calls
|
protected static java.lang.invoke.SwitchPoint |
switchPoint |
|
static int |
THIS_CALL |
flags for method and property calls
|
static int |
UNCACHED_CALL |
flags for method and property calls
|
Constructor | Description |
---|---|
IndyInterface() |
Modifier and Type | Method | Description |
---|---|---|
static java.lang.invoke.CallSite |
bootstrap(java.lang.invoke.MethodHandles.Lookup caller,
java.lang.String name,
java.lang.invoke.MethodType type) |
Deprecated.
since Groovy 2.1.0
|
static java.lang.invoke.CallSite |
bootstrap(java.lang.invoke.MethodHandles.Lookup caller,
java.lang.String callType,
java.lang.invoke.MethodType type,
java.lang.String name,
int flags) |
bootstrap method for method calls from Groovy compiled code with indy
enabled.
|
static java.lang.invoke.CallSite |
bootstrapCurrent(java.lang.invoke.MethodHandles.Lookup caller,
java.lang.String name,
java.lang.invoke.MethodType type) |
Deprecated.
since Groovy 2.1.0
|
static java.lang.invoke.CallSite |
bootstrapCurrentSafe(java.lang.invoke.MethodHandles.Lookup caller,
java.lang.String name,
java.lang.invoke.MethodType type) |
Deprecated.
since Groovy 2.1.0
|
static java.lang.invoke.CallSite |
bootstrapSafe(java.lang.invoke.MethodHandles.Lookup caller,
java.lang.String name,
java.lang.invoke.MethodType type) |
Deprecated.
since Groovy 2.1.0
|
protected static void |
invalidateSwitchPoints() |
Callback for constant meta class update change
|
protected static java.lang.invoke.MethodHandle |
makeFallBack(java.lang.invoke.MutableCallSite mc,
java.lang.Class<?> sender,
java.lang.String name,
int callID,
java.lang.invoke.MethodType type,
boolean safeNavigation,
boolean thisCall,
boolean spreadCall) |
Makes a fallback method for an invalidated method selection
|
static java.lang.Object |
selectMethod(java.lang.invoke.MutableCallSite callSite,
java.lang.Class sender,
java.lang.String methodName,
int callID,
java.lang.Boolean safeNavigation,
java.lang.Boolean thisCall,
java.lang.Boolean spreadCall,
java.lang.Object dummyReceiver,
java.lang.Object[] arguments) |
Core method for indy method selection using runtime types.
|
public static final int SAFE_NAVIGATION
public static final int THIS_CALL
public static final int GROOVY_OBJECT
public static final int IMPLICIT_THIS
public static final int SPREAD_CALL
public static final int UNCACHED_CALL
protected static final java.util.logging.Logger LOG
protected static final boolean LOG_ENABLED
public static final java.lang.invoke.MethodHandles.Lookup LOOKUP
protected static java.lang.invoke.SwitchPoint switchPoint
protected static void invalidateSwitchPoints()
public static java.lang.invoke.CallSite bootstrap(java.lang.invoke.MethodHandles.Lookup caller, java.lang.String callType, java.lang.invoke.MethodType type, java.lang.String name, int flags)
SAFE_NAVIGATION
THIS_CALL
caller
- - the callercallType
- - the type of the calltype
- - the call site typename
- - the real method nameflags
- - call flags@Deprecated public static java.lang.invoke.CallSite bootstrapCurrent(java.lang.invoke.MethodHandles.Lookup caller, java.lang.String name, java.lang.invoke.MethodType type)
@Deprecated public static java.lang.invoke.CallSite bootstrapCurrentSafe(java.lang.invoke.MethodHandles.Lookup caller, java.lang.String name, java.lang.invoke.MethodType type)
@Deprecated public static java.lang.invoke.CallSite bootstrap(java.lang.invoke.MethodHandles.Lookup caller, java.lang.String name, java.lang.invoke.MethodType type)
@Deprecated public static java.lang.invoke.CallSite bootstrapSafe(java.lang.invoke.MethodHandles.Lookup caller, java.lang.String name, java.lang.invoke.MethodType type)
protected static java.lang.invoke.MethodHandle makeFallBack(java.lang.invoke.MutableCallSite mc, java.lang.Class<?> sender, java.lang.String name, int callID, java.lang.invoke.MethodType type, boolean safeNavigation, boolean thisCall, boolean spreadCall)
public static java.lang.Object selectMethod(java.lang.invoke.MutableCallSite callSite, java.lang.Class sender, java.lang.String methodName, int callID, java.lang.Boolean safeNavigation, java.lang.Boolean thisCall, java.lang.Boolean spreadCall, java.lang.Object dummyReceiver, java.lang.Object[] arguments) throws java.lang.Throwable
java.lang.Throwable