Package org.codehaus.groovy.runtime.callsite

# Class PogoMetaMethodSite

java.lang.Object
org.codehaus.groovy.runtime.callsite.AbstractCallSite
org.codehaus.groovy.runtime.callsite.MetaClassSite
org.codehaus.groovy.runtime.callsite.MetaMethodSite
org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite
org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite

All Implemented Interfaces:
  `CallSite`

Direct Known Subclasses:
  `PogoMetaMethodSite.PogoCachedMethodSite`, `PogoMetaMethodSite.PogoMetaMethodSiteNoUnwrap`, `PogoMetaMethodSite.PogoMetaMethodSiteNoUnwrapNoCoerce`

    public class PogoMetaMethodSite
    extends PlainObjectMetaMethodSite

POGO call site meta class - cached method - cached

- ## Nested Class Summary

  Nested Classes
  Modifier and Type | Class | Description
  --- | --- | ---
  `static class` | `PogoMetaMethodSite.PogoCachedMethodSite` |
  `static class` | `PogoMetaMethodSite.PogoCachedMethodSiteNoUnwrap` |
  `static class` | `PogoMetaMethodSite.PogoCachedMethodSiteNoUnwrapNoCoerce` |
  `static class` | `PogoMetaMethodSite.PogoMetaMethodSiteNoUnwrap` | Call site where we know there is no need to unwrap arguments
  `static class` | `PogoMetaMethodSite.PogoMetaMethodSiteNoUnwrapNoCoerce` | Call site where we know there is no need neither unwrap nor coerce arguments

- ## Field Summary

  ### Fields inherited from class org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite

  `VM_PLUGIN`

  ### Fields inherited from class org.codehaus.groovy.runtime.callsite.MetaMethodSite

  `params`

  ### Fields inherited from class org.codehaus.groovy.runtime.callsite.MetaClassSite

  `metaClass`

  ### Fields inherited from class org.codehaus.groovy.runtime.callsite.AbstractCallSite

  `array, index, name`

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `PogoMetaMethodSite​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params)` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `java.lang.Object` | `call​(java.lang.Object receiver, java.lang.Object[] args)` |
  `java.lang.Object` | `callCurrent​(GroovyObject receiver, java.lang.Object[] args)` |
  `protected boolean` | `checkCall​(java.lang.Object receiver)` |
  `protected boolean` | `checkCall​(java.lang.Object receiver, java.lang.Object arg1)` |
  `protected boolean` | `checkCall​(java.lang.Object receiver, java.lang.Object[] args)` |
  `protected boolean` | `checkCall​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2)` |
  `protected boolean` | `checkCall​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)` |
  `protected boolean` | `checkCall​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)` |
  `static CallSite` | `createCachedMethodSite​(CallSite site, MetaClassImpl metaClass, CachedMethod metaMethod, java.lang.Class[] params, java.lang.Object[] args)` |
  `static CallSite` | `createPogoMetaMethodSite​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object[] args)` |
  `java.lang.Object` | `invoke​(java.lang.Object receiver, java.lang.Object[] args)` |

  ### Methods inherited from class org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite

  `doInvoke`

  ### Methods inherited from class org.codehaus.groovy.runtime.callsite.AbstractCallSite

  `acceptGetProperty, acceptGroovyObjectGetProperty, call, call, call, call, call, callConstructor, callConstructor, callConstructor, callConstructor, callConstructor, callConstructor, callCurrent, callCurrent, callCurrent, callCurrent, callCurrent, callGetProperty, callGetPropertySafe, callGroovyObjectGetProperty, callGroovyObjectGetPropertySafe, callSafe, callSafe, callSafe, callSafe, callSafe, callSafe, callStatic, callStatic, callStatic, callStatic, callStatic, callStatic, createGetPropertySite, createGroovyObjectGetPropertySite, getArray, getIndex, getName, getProperty`

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

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

- ## Constructor Details

  - ### PogoMetaMethodSite

    public PogoMetaMethodSite​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params)

- ## Method Details

  - ### invoke

    public java.lang.Object invoke​(java.lang.Object receiver, java.lang.Object[] args) throws java.lang.Throwable
    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`
    Overrides:
      `callCurrent` in class `AbstractCallSite`
    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`
    Overrides:
      `call` in class `AbstractCallSite`
    Throws:
      `java.lang.Throwable`

  - ### checkCall

    protected boolean checkCall​(java.lang.Object receiver, java.lang.Object[] args)

  - ### checkCall

    protected boolean checkCall​(java.lang.Object receiver)

  - ### checkCall

    protected boolean checkCall​(java.lang.Object receiver, java.lang.Object arg1)

  - ### checkCall

    protected boolean checkCall​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2)

  - ### checkCall

    protected boolean checkCall​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)

  - ### checkCall

    protected boolean checkCall​(java.lang.Object receiver, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)

  - ### createPogoMetaMethodSite

    public static CallSite createPogoMetaMethodSite​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object[] args)

  - ### createCachedMethodSite

    public static CallSite createCachedMethodSite​(CallSite site, MetaClassImpl metaClass, CachedMethod metaMethod, java.lang.Class[] params, java.lang.Object[] args)