Package org.codehaus.groovy.vmplugin.v8

# Class Selector

java.lang.Object
org.codehaus.groovy.vmplugin.v8.Selector

public abstract class Selector extends Object

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `Object[]`
  `args`
  `boolean`
  `cache`
  `CacheableCallSite`
  `callSite`
  `IndyInterface.CallType`
  `callType`
  `boolean`
  `catchException`
  `MethodType`
  `currentType`
  `MethodHandle`
  `handle`
  `boolean`
  `isVargs`
  `MetaMethod`
  `method`
  `String`
  `name`
  `Object[]`
  `originalArguments`
  `boolean`
  `safeNavigation`
  `boolean`
  `safeNavigationOrig`
  `Class<?>`
  `selectionBase`
  `Class<?>`
  `sender`
  `boolean`
  `skipSpreadCollector`
  `boolean`
  `spread`
  `MethodType`
  `targetType`
  `boolean`
  `thisCall`
  `boolean`
  `useMetaClass`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Selector()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `getCorrectedReceiver()`
  Returns `NullObject.getNullObject()` if the receiver (args[0]) is null.
  `static Selector`
  `getSelector(CacheableCallSite callSite, Class<?> sender, String methodName, int callID, boolean safeNavigation, boolean thisCall, boolean spreadCall, Object[] arguments)`
  Returns the Selector

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

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

- ## Field Details

  - ### args

    public Object[] args

  - ### originalArguments

    public Object[] originalArguments

  - ### method

    public MetaMethod method

  - ### targetType

    public MethodType targetType

  - ### currentType

    public MethodType currentType

  - ### name

    public String name

  - ### handle

    public MethodHandle handle

  - ### useMetaClass

    public boolean useMetaClass

  - ### cache

    public boolean cache

  - ### callSite

    public CacheableCallSite callSite

  - ### sender

    public Class<?> sender

  - ### isVargs

    public boolean isVargs

  - ### safeNavigation

    public boolean safeNavigation

  - ### safeNavigationOrig

    public boolean safeNavigationOrig

  - ### spread

    public boolean spread

  - ### skipSpreadCollector

    public boolean skipSpreadCollector

  - ### thisCall

    public boolean thisCall

  - ### selectionBase

    public Class<?> selectionBase

  - ### catchException

    public boolean catchException

  - ### callType

    public IndyInterface.CallType callType

- ## Constructor Details

  - ### Selector

    public Selector()

- ## Method Details

  - ### getSelector

    public static Selector getSelector(CacheableCallSite callSite, Class<?> sender, String methodName, int callID, boolean safeNavigation, boolean thisCall, boolean spreadCall, Object[] arguments)
    Returns the Selector

  - ### getCorrectedReceiver

    public Object getCorrectedReceiver()
    Returns `NullObject.getNullObject()` if the receiver (args[0]) is null. If it is not null, the receiver itself is returned.