public class IndyInterface extends Object
Bytecode level interface for bootstrap methods used by invokedynamic. This class provides a logging ability by using the boolean system property groovy.indy.logging. Other than that this class contains the interfacing methods with bytecode for invokedynamic as well as some helper methods and classes.
| Modifiers | Name | Description | 
|---|---|---|
| enum | IndyInterface.CallType | Enum for easy differentiation between call types | 
| Modifiers | Name | Description | 
|---|---|---|
| static MethodHandles.Lookup | LOOKUP | LOOKUP constant used for for example unreflect calls | 
| static int | SAFE_NAVIGATION | flags for method and property calls | 
| Type Params | Return Type | Name and description | 
|---|---|---|
|  | public static CallSite | bootstrap(MethodHandles.Lookup caller, String callType, MethodType type, String name, int flags)bootstrap method for method calls from Groovy compiled code with indy enabled. | 
|  | public static Object | fromCache(MutableCallSite callSite, Class<?> sender, String methodName, int callID, Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver, Object[] arguments)Get the cached methodhandle. if the related methodhandle is not found in the inline cache, cache and return it. | 
|  | public static Object | selectMethod(MutableCallSite callSite, Class<?> sender, String methodName, int callID, Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver, Object[] arguments)Core method for indy method selection using runtime types. | 
|  | public static CallSite | staticArrayAccess(MethodHandles.Lookup lookup, String name, MethodType type)
 | 
LOOKUP constant used for for example unreflect calls
flags for method and property calls
bootstrap method for method calls from Groovy compiled code with indy enabled. This method gets a flags parameter which uses the following encoding:
caller -    - the callercallType -  - the type of the calltype -      - the call site typename -      - the real method nameflags -     - call flagsGet the cached methodhandle. if the related methodhandle is not found in the inline cache, cache and return it.
Core method for indy method selection using runtime types.