org.codehaus.groovy.vmplugin.v7

## Class Selector

- java.lang.Object
- - org.codehaus.groovy.vmplugin.v7.Selector

    public abstract class Selector
    extends java.lang.Object

### Field Summary

Fields
`java.lang.Object[]` `args`
`boolean` `cache`
`java.lang.invoke.MutableCallSite` `callSite`
`IndyInterface.CALL_TYPES` `callType`
`boolean` `catchException`
`java.lang.invoke.MethodType` `currentType`
`java.lang.invoke.MethodHandle` `handle`
`boolean` `isVargs`
`MetaMethod` `method`
`java.lang.String` `name`
`java.lang.Object[]` `originalArguments`
`boolean` `safeNavigation`
`boolean` `safeNavigationOrig`
`java.lang.Class` `selectionBase`
`java.lang.Class` `sender`
`boolean` `skipSpreadCollector`
`boolean` `spread`
`java.lang.invoke.MethodType` `targetType`
`boolean` `thisCall`
`boolean` `useMetaClass`

### Constructor Summary

Constructors
Constructor and Description
`Selector()`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`java.lang.Object` `getCorrectedReceiver()` Returns `NullObject.getNullObject()` if the receiver (args[0]) is null.
`static Selector` `getSelector(java.lang.invoke.MutableCallSite callSite, java.lang.Class sender, java.lang.String methodName, int callID, boolean safeNavigation, boolean thisCall, boolean spreadCall, java.lang.Object[] arguments)` Returns the Selector

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

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

### Field Detail

#### args

    public java.lang.Object[] args

#### originalArguments

    public java.lang.Object[] originalArguments

#### method

    public MetaMethod method

#### targetType

    public java.lang.invoke.MethodType targetType

#### currentType

    public java.lang.invoke.MethodType currentType

#### name

    public java.lang.String name

#### handle

    public java.lang.invoke.MethodHandle handle

#### useMetaClass

    public boolean useMetaClass

#### cache

    public boolean cache

#### callSite

    public java.lang.invoke.MutableCallSite callSite

#### sender

    public java.lang.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 java.lang.Class selectionBase

#### catchException

    public boolean catchException

#### callType

    public IndyInterface.CALL_TYPES callType

### Constructor Detail

#### Selector

    public Selector()

### Method Detail

#### getSelector

    public static Selector getSelector(java.lang.invoke.MutableCallSite callSite,
                                       java.lang.Class sender,
                                       java.lang.String methodName,
                                       int callID,
                                       boolean safeNavigation,
                                       boolean thisCall,
                                       boolean spreadCall,
                                       java.lang.Object[] arguments)

Returns the Selector

#### getCorrectedReceiver

    public java.lang.Object getCorrectedReceiver()

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