Package org.codehaus.groovy.runtime.callsite

# Class AbstractCallSite

java.lang.Object
org.codehaus.groovy.runtime.callsite.AbstractCallSite

All Implemented Interfaces:
  `CallSite`

Direct Known Subclasses:
  `DummyCallSite`, `GetEffectivePogoFieldSite`, `GetEffectivePojoPropertySite`, `MetaClassSite`, `NullCallSite`, `PerInstancePojoMetaClassSite`, `PogoGetPropertySite`, `PogoInterceptableSite`, `PogoMetaClassGetPropertySite`, `PojoMetaClassGetPropertySite`

    public class AbstractCallSite
    extends java.lang.Object
    implements CallSite

Base class for all call sites.

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `protected CallSiteArray` | `array` |
  `protected int` | `index` |
  `protected java.lang.String` | `name` |

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `AbstractCallSite​(CallSite prev)` |
  `AbstractCallSite​(CallSiteArray array, int index, java.lang.String name)` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `CallSite` | `acceptGetProperty​(java.lang.Object receiver)` |
  `CallSite` | `acceptGroovyObjectGetProperty​(java.lang.Object receiver)` |
  `java.lang.Object` | `call​(java.lang.Object receiver)` |
  `java.lang.Object` | `call​(java.lang.Object receiver, java.lang.Object arg1)` |
  `java.lang.Object` | `call​(java.lang.Object receiver, java.lang.Object[] args)` |
  `java.lang.Object` | `call​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2)` |
  `java.lang.Object` | `call​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)` |
  `java.lang.Object` | `call​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)` |
  `java.lang.Object` | `callConstructor​(java.lang.Object receiver)` |
  `java.lang.Object` | `callConstructor​(java.lang.Object receiver, java.lang.Object arg1)` |
  `java.lang.Object` | `callConstructor​(java.lang.Object receiver, java.lang.Object[] args)` |
  `java.lang.Object` | `callConstructor​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2)` |
  `java.lang.Object` | `callConstructor​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)` |
  `java.lang.Object` | `callConstructor​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)` |
  `java.lang.Object` | `callCurrent​(GroovyObject receiver)` |
  `java.lang.Object` | `callCurrent​(GroovyObject receiver, java.lang.Object arg1)` |
  `java.lang.Object` | `callCurrent​(GroovyObject receiver, java.lang.Object[] args)` |
  `java.lang.Object` | `callCurrent​(GroovyObject receiver, java.lang.Object arg1, java.lang.Object arg2)` |
  `java.lang.Object` | `callCurrent​(GroovyObject receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)` |
  `java.lang.Object` | `callCurrent​(GroovyObject receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)` |
  `java.lang.Object` | `callGetProperty​(java.lang.Object receiver)` |
  `java.lang.Object` | `callGetPropertySafe​(java.lang.Object receiver)` |
  `java.lang.Object` | `callGroovyObjectGetProperty​(java.lang.Object receiver)` |
  `java.lang.Object` | `callGroovyObjectGetPropertySafe​(java.lang.Object receiver)` |
  `java.lang.Object` | `callSafe​(java.lang.Object receiver)` |
  `java.lang.Object` | `callSafe​(java.lang.Object receiver, java.lang.Object arg1)` |
  `java.lang.Object` | `callSafe​(java.lang.Object receiver, java.lang.Object[] args)` |
  `java.lang.Object` | `callSafe​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2)` |
  `java.lang.Object` | `callSafe​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)` |
  `java.lang.Object` | `callSafe​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)` |
  `java.lang.Object` | `callStatic​(java.lang.Class receiver)` |
  `java.lang.Object` | `callStatic​(java.lang.Class receiver, java.lang.Object arg1)` |
  `java.lang.Object` | `callStatic​(java.lang.Class receiver, java.lang.Object[] args)` |
  `java.lang.Object` | `callStatic​(java.lang.Class receiver, java.lang.Object arg1, java.lang.Object arg2)` |
  `java.lang.Object` | `callStatic​(java.lang.Class receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)` |
  `java.lang.Object` | `callStatic​(java.lang.Class receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)` |
  `protected CallSite` | `createGetPropertySite​(java.lang.Object receiver)` |
  `protected CallSite` | `createGroovyObjectGetPropertySite​(java.lang.Object receiver)` |
  `CallSiteArray` | `getArray()` |
  `int` | `getIndex()` |
  `java.lang.String` | `getName()` |
  `java.lang.Object` | `getProperty​(java.lang.Object receiver)` |

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

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

- ## Field Details

  - ### index

    protected final int index

  - ### name

    protected final java.lang.String name

  - ### array

    protected final CallSiteArray array

- ## Constructor Details

  - ### AbstractCallSite

    public AbstractCallSite​(CallSiteArray array, int index, java.lang.String name)

  - ### AbstractCallSite

    public AbstractCallSite​(CallSite prev)

- ## Method Details

  - ### getIndex

    public int getIndex()
    Specified by:
      `getIndex` in interface `CallSite`

  - ### getArray

    public CallSiteArray getArray()
    Specified by:
      `getArray` in interface `CallSite`

  - ### getName

    public java.lang.String getName()
    Specified by:
      `getName` in interface `CallSite`

  - ### callSafe

    public final java.lang.Object callSafe​(java.lang.Object receiver, java.lang.Object[] args) throws java.lang.Throwable
    Specified by:
      `callSafe` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callSafe

    public final java.lang.Object callSafe​(java.lang.Object receiver) throws java.lang.Throwable
    Specified by:
      `callSafe` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callSafe

    public final java.lang.Object callSafe​(java.lang.Object receiver, java.lang.Object arg1) throws java.lang.Throwable
    Specified by:
      `callSafe` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callSafe

    public final java.lang.Object callSafe​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2) throws java.lang.Throwable
    Specified by:
      `callSafe` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callSafe

    public final java.lang.Object callSafe​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3) throws java.lang.Throwable
    Specified by:
      `callSafe` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callSafe

    public java.lang.Object callSafe​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4) throws java.lang.Throwable
    Specified by:
      `callSafe` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### call

    public java.lang.Object call​(java.lang.Object receiver, java.lang.Object[] args) throws java.lang.Throwable
    Specified by:
      `call` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### call

    public java.lang.Object call​(java.lang.Object receiver) throws java.lang.Throwable
    Specified by:
      `call` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### call

    public java.lang.Object call​(java.lang.Object receiver, java.lang.Object arg1) throws java.lang.Throwable
    Specified by:
      `call` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### call

    public java.lang.Object call​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2) throws java.lang.Throwable
    Specified by:
      `call` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### call

    public java.lang.Object call​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3) throws java.lang.Throwable
    Specified by:
      `call` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### call

    public java.lang.Object call​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4) throws java.lang.Throwable
    Specified by:
      `call` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callCurrent

    public java.lang.Object callCurrent​(GroovyObject receiver, java.lang.Object[] args) throws java.lang.Throwable
    Specified by:
      `callCurrent` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callCurrent

    public java.lang.Object callCurrent​(GroovyObject receiver) throws java.lang.Throwable
    Specified by:
      `callCurrent` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callCurrent

    public java.lang.Object callCurrent​(GroovyObject receiver, java.lang.Object arg1) throws java.lang.Throwable
    Specified by:
      `callCurrent` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callCurrent

    public java.lang.Object callCurrent​(GroovyObject receiver, java.lang.Object arg1, java.lang.Object arg2) throws java.lang.Throwable
    Specified by:
      `callCurrent` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callCurrent

    public java.lang.Object callCurrent​(GroovyObject receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3) throws java.lang.Throwable
    Specified by:
      `callCurrent` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callCurrent

    public java.lang.Object callCurrent​(GroovyObject receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4) throws java.lang.Throwable
    Specified by:
      `callCurrent` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callStatic

    public java.lang.Object callStatic​(java.lang.Class receiver, java.lang.Object[] args) throws java.lang.Throwable
    Specified by:
      `callStatic` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callStatic

    public java.lang.Object callStatic​(java.lang.Class receiver) throws java.lang.Throwable
    Specified by:
      `callStatic` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callStatic

    public java.lang.Object callStatic​(java.lang.Class receiver, java.lang.Object arg1) throws java.lang.Throwable
    Specified by:
      `callStatic` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callStatic

    public java.lang.Object callStatic​(java.lang.Class receiver, java.lang.Object arg1, java.lang.Object arg2) throws java.lang.Throwable
    Specified by:
      `callStatic` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callStatic

    public java.lang.Object callStatic​(java.lang.Class receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3) throws java.lang.Throwable
    Specified by:
      `callStatic` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callStatic

    public java.lang.Object callStatic​(java.lang.Class receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4) throws java.lang.Throwable
    Specified by:
      `callStatic` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callConstructor

    public java.lang.Object callConstructor​(java.lang.Object receiver, java.lang.Object[] args) throws java.lang.Throwable
    Specified by:
      `callConstructor` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callConstructor

    public java.lang.Object callConstructor​(java.lang.Object receiver) throws java.lang.Throwable
    Specified by:
      `callConstructor` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callConstructor

    public java.lang.Object callConstructor​(java.lang.Object receiver, java.lang.Object arg1) throws java.lang.Throwable
    Specified by:
      `callConstructor` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callConstructor

    public java.lang.Object callConstructor​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2) throws java.lang.Throwable
    Specified by:
      `callConstructor` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callConstructor

    public java.lang.Object callConstructor​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3) throws java.lang.Throwable
    Specified by:
      `callConstructor` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callConstructor

    public java.lang.Object callConstructor​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4) throws java.lang.Throwable
    Specified by:
      `callConstructor` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callGetProperty

    public java.lang.Object callGetProperty​(java.lang.Object receiver) throws java.lang.Throwable
    Specified by:
      `callGetProperty` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callGroovyObjectGetProperty

    public java.lang.Object callGroovyObjectGetProperty​(java.lang.Object receiver) throws java.lang.Throwable
    Specified by:
      `callGroovyObjectGetProperty` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### acceptGetProperty

    public CallSite acceptGetProperty​(java.lang.Object receiver)

  - ### acceptGroovyObjectGetProperty

    public CallSite acceptGroovyObjectGetProperty​(java.lang.Object receiver)

  - ### createGetPropertySite

    protected final CallSite createGetPropertySite​(java.lang.Object receiver)

  - ### createGroovyObjectGetPropertySite

    protected final CallSite createGroovyObjectGetPropertySite​(java.lang.Object receiver)

  - ### getProperty

    public java.lang.Object getProperty​(java.lang.Object receiver) throws java.lang.Throwable
    Specified by:
      `getProperty` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callGetPropertySafe

    public final java.lang.Object callGetPropertySafe​(java.lang.Object receiver) throws java.lang.Throwable
    Specified by:
      `callGetPropertySafe` in interface `CallSite`
    Throws:
      `java.lang.Throwable`

  - ### callGroovyObjectGetPropertySafe

    public final java.lang.Object callGroovyObjectGetPropertySafe​(java.lang.Object receiver) throws java.lang.Throwable
    Specified by:
      `callGroovyObjectGetPropertySafe` in interface `CallSite`
    Throws:
      `java.lang.Throwable`