org.codehaus.groovy.runtime.callsite

## Class StaticMetaMethodSite

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

- All Implemented Interfaces:
    CallSite
  Direct Known Subclasses:
    StaticMetaMethodSite.StaticMetaMethodSiteNoUnwrap, StaticMetaMethodSite.StaticMetaMethodSiteNoUnwrapNoCoerce

      public class StaticMetaMethodSite
      extends MetaMethodSite

  POJO call site meta class - cached method - cached

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `StaticMetaMethodSite.StaticMetaMethodSiteNoUnwrap` Call site where we know there is no need to unwrap arguments
    `static class` | `StaticMetaMethodSite.StaticMetaMethodSiteNoUnwrapNoCoerce` 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`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `StaticMetaMethodSite(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `call(java.lang.Object receiver, java.lang.Object[] args)`
    `java.lang.Object` | `callStatic(java.lang.Class 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` | `createStaticMetaMethodSite(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.AbstractCallSite

      `acceptGetProperty, acceptGroovyObjectGetProperty, call, call, call, call, call, callConstructor, callConstructor, callConstructor, callConstructor, callConstructor, callConstructor, callCurrent, callCurrent, callCurrent, callCurrent, callCurrent, callCurrent, callGetProperty, callGetPropertySafe, callGroovyObjectGetProperty, callGroovyObjectGetPropertySafe, callSafe, callSafe, callSafe, callSafe, callSafe, callSafe, 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 Detail

    - #### StaticMetaMethodSite

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

  - ### Method Detail

    - #### invoke

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

      Throws:
        `java.lang.Throwable`

    - #### checkCall

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

    - #### checkCall

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

    - #### checkCall

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

    - #### checkCall

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

    - #### checkCall

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

    - #### checkCall

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

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

    - #### callStatic

          public java.lang.Object callStatic(java.lang.Class receiver,
                                    java.lang.Object[] args)
                                      throws java.lang.Throwable

      Specified by:
        `callStatic` in interface `CallSite`
      Overrides:
        `callStatic` in class `AbstractCallSite`
      Throws:
        `java.lang.Throwable`

    - #### createStaticMetaMethodSite

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