Package org.codehaus.groovy.vmplugin.v7

# Class IndyInterface

java.lang.Object
org.codehaus.groovy.vmplugin.v7.IndyInterface

@Deprecated public class IndyInterface extends Object
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

  Nested Classes
  Modifier and Type
  Class
  Description
  `static enum`
  `IndyInterface.CallType`
  Deprecated.
  Enum for easy differentiation between call types

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `GROOVY_OBJECT`
  Deprecated.
  flags for method and property calls
  `static final int`
  `IMPLICIT_THIS`
  Deprecated.
  flags for method and property calls
  `static final MethodHandles.Lookup`
  `LOOKUP`
  Deprecated.
  LOOKUP constant used for for example unreflect calls
  `static final int`
  `SAFE_NAVIGATION`
  Deprecated.
  flags for method and property calls
  `static final int`
  `SPREAD_CALL`
  Deprecated.
  flags for method and property calls
  `static final int`
  `THIS_CALL`
  Deprecated.
  flags for method and property calls
  `static final int`
  `UNCACHED_CALL`
  Deprecated.
  flags for method and property calls

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `IndyInterface()`
  Deprecated.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `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.
  `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.
  `protected static void`
  `invalidateSwitchPoints()`
  Deprecated.
  Callback for constant meta class update change (legacy API)
  `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.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### SAFE_NAVIGATION

    public static final int SAFE_NAVIGATION
    Deprecated.
    flags for method and property calls
    See Also:
      - Constant Field Values

  - ### THIS_CALL

    public static final int THIS_CALL
    Deprecated.
    flags for method and property calls
    See Also:
      - Constant Field Values

  - ### GROOVY_OBJECT

    public static final int GROOVY_OBJECT
    Deprecated.
    flags for method and property calls
    See Also:
      - Constant Field Values

  - ### IMPLICIT_THIS

    public static final int IMPLICIT_THIS
    Deprecated.
    flags for method and property calls
    See Also:
      - Constant Field Values

  - ### SPREAD_CALL

    public static final int SPREAD_CALL
    Deprecated.
    flags for method and property calls
    See Also:
      - Constant Field Values

  - ### UNCACHED_CALL

    public static final int UNCACHED_CALL
    Deprecated.
    flags for method and property calls
    See Also:
      - Constant Field Values

  - ### LOOKUP

    public static final MethodHandles.Lookup LOOKUP
    Deprecated.
    LOOKUP constant used for for example unreflect calls

- ## Constructor Details

  - ### IndyInterface

    public IndyInterface()
    Deprecated.

- ## Method Details

  - ### invalidateSwitchPoints

    protected static void invalidateSwitchPoints()
    Deprecated.
    Callback for constant meta class update change (legacy API)

  - ### 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 caller
      `callType` - - the type of the call
      `type` - - the call site type
      `name` - - the real method name
      `flags` - - call flags
    Returns:
      the produced CallSite
    Since:
      2.1.0

  - ### 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

    public static CallSite staticArrayAccess(MethodHandles.Lookup lookup, String name, MethodType type)
    Deprecated.
    Since:
      2.5.0