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 Object
      implements CallSite

  Base class for all call sites.

- - ### Field Summary

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

  - ### Constructor Summary

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

  - ### Method Summary

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

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

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

- - ### Field Detail

    - #### index

          protected final int index

    - #### name

          protected final String name

    - #### array

          protected final CallSiteArray array

  - ### Constructor Detail

    - #### AbstractCallSite

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

    - #### AbstractCallSite

          public AbstractCallSite​(CallSite prev)

  - ### Method Detail

    - #### getIndex

          public int getIndex()

      Specified by:
        `getIndex` in interface `CallSite`

    - #### getArray

          public CallSiteArray getArray()

      Specified by:
        `getArray` in interface `CallSite`

    - #### getName

          public String getName()

      Specified by:
        `getName` in interface `CallSite`

    - #### callSafe

          public final Object callSafe​(Object receiver,
                                       Object[] args)
                                throws Throwable

      Specified by:
        `callSafe` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callSafe

          public final Object callSafe​(Object receiver)
                                throws Throwable

      Specified by:
        `callSafe` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callSafe

          public final Object callSafe​(Object receiver,
                                       Object arg1)
                                throws Throwable

      Specified by:
        `callSafe` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callSafe

          public final Object callSafe​(Object receiver,
                                       Object arg1,
                                       Object arg2)
                                throws Throwable

      Specified by:
        `callSafe` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callSafe

          public final Object callSafe​(Object receiver,
                                       Object arg1,
                                       Object arg2,
                                       Object arg3)
                                throws Throwable

      Specified by:
        `callSafe` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callSafe

          public Object callSafe​(Object receiver,
                                 Object arg1,
                                 Object arg2,
                                 Object arg3,
                                 Object arg4)
                          throws Throwable

      Specified by:
        `callSafe` in interface `CallSite`
      Throws:
        `Throwable`

    - #### call

          public Object call​(Object receiver,
                             Object[] args)
                      throws Throwable

      Specified by:
        `call` in interface `CallSite`
      Throws:
        `Throwable`

    - #### call

          public Object call​(Object receiver)
                      throws Throwable

      Specified by:
        `call` in interface `CallSite`
      Throws:
        `Throwable`

    - #### call

          public Object call​(Object receiver,
                             Object arg1)
                      throws Throwable

      Specified by:
        `call` in interface `CallSite`
      Throws:
        `Throwable`

    - #### call

          public Object call​(Object receiver,
                             Object arg1,
                             Object arg2)
                      throws Throwable

      Specified by:
        `call` in interface `CallSite`
      Throws:
        `Throwable`

    - #### call

          public Object call​(Object receiver,
                             Object arg1,
                             Object arg2,
                             Object arg3)
                      throws Throwable

      Specified by:
        `call` in interface `CallSite`
      Throws:
        `Throwable`

    - #### call

          public Object call​(Object receiver,
                             Object arg1,
                             Object arg2,
                             Object arg3,
                             Object arg4)
                      throws Throwable

      Specified by:
        `call` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callCurrent

          public Object callCurrent​(GroovyObject receiver,
                                    Object[] args)
                             throws Throwable

      Specified by:
        `callCurrent` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callCurrent

          public Object callCurrent​(GroovyObject receiver)
                             throws Throwable

      Specified by:
        `callCurrent` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callCurrent

          public Object callCurrent​(GroovyObject receiver,
                                    Object arg1)
                             throws Throwable

      Specified by:
        `callCurrent` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callCurrent

          public Object callCurrent​(GroovyObject receiver,
                                    Object arg1,
                                    Object arg2)
                             throws Throwable

      Specified by:
        `callCurrent` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callCurrent

          public Object callCurrent​(GroovyObject receiver,
                                    Object arg1,
                                    Object arg2,
                                    Object arg3)
                             throws Throwable

      Specified by:
        `callCurrent` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callCurrent

          public Object callCurrent​(GroovyObject receiver,
                                    Object arg1,
                                    Object arg2,
                                    Object arg3,
                                    Object arg4)
                             throws Throwable

      Specified by:
        `callCurrent` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callStatic

          public Object callStatic​(Class receiver,
                                   Object[] args)
                            throws Throwable

      Specified by:
        `callStatic` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callStatic

          public Object callStatic​(Class receiver)
                            throws Throwable

      Specified by:
        `callStatic` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callStatic

          public Object callStatic​(Class receiver,
                                   Object arg1)
                            throws Throwable

      Specified by:
        `callStatic` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callStatic

          public Object callStatic​(Class receiver,
                                   Object arg1,
                                   Object arg2)
                            throws Throwable

      Specified by:
        `callStatic` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callStatic

          public Object callStatic​(Class receiver,
                                   Object arg1,
                                   Object arg2,
                                   Object arg3)
                            throws Throwable

      Specified by:
        `callStatic` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callStatic

          public Object callStatic​(Class receiver,
                                   Object arg1,
                                   Object arg2,
                                   Object arg3,
                                   Object arg4)
                            throws Throwable

      Specified by:
        `callStatic` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callConstructor

          public Object callConstructor​(Object receiver,
                                        Object[] args)
                                 throws Throwable

      Specified by:
        `callConstructor` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callConstructor

          public Object callConstructor​(Object receiver)
                                 throws Throwable

      Specified by:
        `callConstructor` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callConstructor

          public Object callConstructor​(Object receiver,
                                        Object arg1)
                                 throws Throwable

      Specified by:
        `callConstructor` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callConstructor

          public Object callConstructor​(Object receiver,
                                        Object arg1,
                                        Object arg2)
                                 throws Throwable

      Specified by:
        `callConstructor` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callConstructor

          public Object callConstructor​(Object receiver,
                                        Object arg1,
                                        Object arg2,
                                        Object arg3)
                                 throws Throwable

      Specified by:
        `callConstructor` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callConstructor

          public Object callConstructor​(Object receiver,
                                        Object arg1,
                                        Object arg2,
                                        Object arg3,
                                        Object arg4)
                                 throws Throwable

      Specified by:
        `callConstructor` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callGetProperty

          public Object callGetProperty​(Object receiver)
                                 throws Throwable

      Specified by:
        `callGetProperty` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callGroovyObjectGetProperty

          public Object callGroovyObjectGetProperty​(Object receiver)
                                             throws Throwable

      Specified by:
        `callGroovyObjectGetProperty` in interface `CallSite`
      Throws:
        `Throwable`

    - #### acceptGetProperty

          public CallSite acceptGetProperty​(Object receiver)

    - #### acceptGroovyObjectGetProperty

          public CallSite acceptGroovyObjectGetProperty​(Object receiver)

    - #### createGetPropertySite

          protected final CallSite createGetPropertySite​(Object receiver)

    - #### createGroovyObjectGetPropertySite

          protected final CallSite createGroovyObjectGetPropertySite​(Object receiver)

    - #### getProperty

          public Object getProperty​(Object receiver)
                             throws Throwable

      Specified by:
        `getProperty` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callGetPropertySafe

          public final Object callGetPropertySafe​(Object receiver)
                                           throws Throwable

      Specified by:
        `callGetPropertySafe` in interface `CallSite`
      Throws:
        `Throwable`

    - #### callGroovyObjectGetPropertySafe

          public final Object callGroovyObjectGetPropertySafe​(Object receiver)
                                                       throws Throwable

      Specified by:
        `callGroovyObjectGetPropertySafe` in interface `CallSite`
      Throws:
        `Throwable`