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.PogoMetaMethodSite

All Implemented Interfaces:
  CallSite

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

    public class PogoMetaMethodSite
    extends MetaMethodSite

POGO call site meta class - cached method - cached

### Nested Class Summary

Nested Classes
`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.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, usage`

### Constructor Summary

Constructors
Constructor and Description
`PogoMetaMethodSite(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, Class[] params)`

### Method Summary

Methods
`Object` `call(Object receiver, Object[] args)`
`Object` `callCurrent(GroovyObject receiver, Object[] args)`
`protected boolean` `checkCall(Object receiver)`
`protected boolean` `checkCall(Object receiver, Object arg1)`
`protected boolean` `checkCall(Object receiver, Object[] args)`
`protected boolean` `checkCall(Object receiver, Object arg1, Object arg2)`
`protected boolean` `checkCall(Object receiver, Object arg1, Object arg2, Object arg3)`
`protected boolean` `checkCall(Object receiver, Object arg1, Object arg2, Object arg3, Object arg4)`
`static CallSite` `createCachedMethodSite(CallSite site, MetaClassImpl metaClass, CachedMethod metaMethod, Class[] params, Object[] args)`
`static CallSite` `createPogoMetaMethodSite(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, Class[] params, Object[] args)`
`Object` `invoke(Object receiver, Object[] args)`

### 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, getUsage`

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

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

### Constructor Detail

#### PogoMetaMethodSite

    public PogoMetaMethodSite(CallSite site,
                      MetaClassImpl metaClass,
                      MetaMethod metaMethod,
                      Class[] params)

### Method Detail

#### invoke

    public Object invoke(Object receiver,
                Object[] args)
                  throws Throwable

Throws:
  `Throwable`

#### callCurrent

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

Specified by:
  `callCurrent` in interface `CallSite`
Overrides:
  `callCurrent` in class `AbstractCallSite`
Throws:
  `Throwable`

#### call

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

Specified by:
  `call` in interface `CallSite`
Overrides:
  `call` in class `AbstractCallSite`
Throws:
  `Throwable`

#### checkCall

    protected boolean checkCall(Object receiver,
                    Object[] args)

#### checkCall

    protected boolean checkCall(Object receiver)

#### checkCall

    protected boolean checkCall(Object receiver,
                    Object arg1)

#### checkCall

    protected boolean checkCall(Object receiver,
                    Object arg1,
                    Object arg2)

#### checkCall

    protected boolean checkCall(Object receiver,
                    Object arg1,
                    Object arg2,
                    Object arg3)

#### checkCall

    protected boolean checkCall(Object receiver,
                    Object arg1,
                    Object arg2,
                    Object arg3,
                    Object arg4)

#### createPogoMetaMethodSite

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

#### createCachedMethodSite

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