org.codehaus.groovy.reflection

## Class CachedMethod

- java.lang.Object
- - org.codehaus.groovy.reflection.ParameterTypes
  - - groovy.lang.MetaMethod
    - - org.codehaus.groovy.reflection.CachedMethod

- All Implemented Interfaces:
    Cloneable, Comparable

      public class CachedMethod
      extends MetaMethod
      implements Comparable

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `CachedClass` | `cachedClass`
    `static CachedMethod[]` | `EMPTY_ARRAY`

    - ### Fields inherited from class org.codehaus.groovy.reflection.ParameterTypes

      `isVargsMethod, nativeParamTypes, parameterTypes`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CachedMethod(CachedClass clazz, Method method)`
    `CachedMethod(Method method)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `canAccessLegally(Class<?> callerClass)`
    `int` | `compareTo(Object o)`
    `CallSite` | `createPogoMetaMethodSite(CallSite site, MetaClassImpl metaClass, Class[] params)`
    `CallSite` | `createPojoMetaMethodSite(CallSite site, MetaClassImpl metaClass, Class[] params)`
    `CallSite` | `createStaticMetaMethodSite(CallSite site, MetaClassImpl metaClass, Class[] params)`
    `boolean` | `equals(Object o)`
    `static CachedMethod` | `find(Method method)`
    `<T extends Annotation> T` | `getAnnotation(Class<T> annotationClass)`
    `Method` | `getCachedMethod()`
    `CachedClass` | `getDeclaringClass()` Gets the class where this method is declared
    `String` | `getDescriptor()` Return a descriptor of this method based on the return type and parameters of this method.
    `int` | `getModifiers()` Returns the modifiers for this method
    `String` | `getName()` Returns the name of the method represented by this class
    `int` | `getParamsCount()`
    `ParameterTypes` | `getParamTypes()`
    `Class[]` | `getPT()`
    `Class` | `getReturnType()` Access the return type for this method
    `String` | `getSignature()` Returns the signature of this method
    `CachedMethod` | `getTransformedMethod()`
    `int` | `hashCode()`
    `Object` | `invoke(Object object, Object[] arguments)` Invoke this method
    `boolean` | `isStatic()` Returns whether or not this method is static.
    `boolean` | `isSynthetic()`
    `Method` | `setAccessible()`
    `void` | `setTransformedMethod(CachedMethod transformedMethod)`
    `String` | `toString()` Returns a string representation of this method

    - ### Methods inherited from class groovy.lang.MetaMethod

      `checkParameters, clone, doMethodInvoke, equal, equal, getMopName, isAbstract, isCacheable, isMethod, isPrivate, isProtected, isPublic, isSame, processDoMethodInvokeException`

    - ### Methods inherited from class org.codehaus.groovy.reflection.ParameterTypes

      `coerceArgumentsToClasses, correctArguments, getNativeParameterTypes, getParameterTypes, isValidExactMethod, isValidExactMethod, isValidMethod, isValidMethod, isVargsMethod, isVargsMethod, setParametersTypes`

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

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### EMPTY_ARRAY

          public static final CachedMethod[] EMPTY_ARRAY

    - #### cachedClass

          public final CachedClass cachedClass

  - ### Constructor Detail

    - #### CachedMethod

          public CachedMethod(CachedClass clazz,
                              Method method)

    - #### CachedMethod

          public CachedMethod(Method method)

  - ### Method Detail

    - #### find

          public static CachedMethod find(Method method)

    - #### getPT

          public Class[] getPT()

      Overrides:
        `getPT` in class `ParameterTypes`

    - #### getName

          public String getName()

      Description copied from class: `MetaMethod`
      Returns the name of the method represented by this class
      Specified by:
        `getName` in class `MetaMethod`
      Returns:
        name of this method

    - #### getDescriptor

          public String getDescriptor()

      Description copied from class: `MetaMethod`
      Return a descriptor of this method based on the return type and parameters of this method.
      Overrides:
        `getDescriptor` in class `MetaMethod`

    - #### getDeclaringClass

          public CachedClass getDeclaringClass()

      Description copied from class: `MetaMethod`
      Gets the class where this method is declared
      Specified by:
        `getDeclaringClass` in class `MetaMethod`
      Returns:
        class of this method

    - #### invoke

          public final Object invoke(Object object,
                                     Object[] arguments)

      Description copied from class: `MetaMethod`
      Invoke this method
      Specified by:
        `invoke` in class `MetaMethod`
      Parameters:
        `object` - The object this method should be invoked on
        `arguments` - The arguments for the method if applicable
      Returns:
        The return value of the invocation

    - #### getParamTypes

          public ParameterTypes getParamTypes()

    - #### getReturnType

          public Class getReturnType()

      Description copied from class: `MetaMethod`
      Access the return type for this method
      Specified by:
        `getReturnType` in class `MetaMethod`
      Returns:
        the return type of this method

    - #### getParamsCount

          public int getParamsCount()

    - #### getModifiers

          public int getModifiers()

      Description copied from class: `MetaMethod`
      Returns the modifiers for this method
      Specified by:
        `getModifiers` in class `MetaMethod`
      Returns:
        modifiers as an int.

    - #### getSignature

          public String getSignature()

      Description copied from class: `MetaMethod`
      Returns the signature of this method
      Overrides:
        `getSignature` in class `MetaMethod`
      Returns:
        The signature of this method

    - #### setAccessible

          public final Method setAccessible()

    - #### isStatic

          public boolean isStatic()

      Description copied from class: `MetaMethod`
      Returns whether or not this method is static.
      Overrides:
        `isStatic` in class `MetaMethod`
      Returns:
        true if this method is static

    - #### getTransformedMethod

          public CachedMethod getTransformedMethod()

    - #### setTransformedMethod

          public void setTransformedMethod(CachedMethod transformedMethod)

    - #### compareTo

          public int compareTo(Object o)

      Specified by:
        `compareTo` in interface `Comparable`

    - #### equals

          public boolean equals(Object o)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### toString

          public String toString()

      Description copied from class: `MetaMethod`
      Returns a string representation of this method
      Overrides:
        `toString` in class `MetaMethod`

    - #### createPogoMetaMethodSite

          public CallSite createPogoMetaMethodSite(CallSite site,
                                                   MetaClassImpl metaClass,
                                                   Class[] params)

    - #### createPojoMetaMethodSite

          public CallSite createPojoMetaMethodSite(CallSite site,
                                                   MetaClassImpl metaClass,
                                                   Class[] params)

    - #### createStaticMetaMethodSite

          public CallSite createStaticMetaMethodSite(CallSite site,
                                                     MetaClassImpl metaClass,
                                                     Class[] params)

    - #### getAnnotation

          public <T extends Annotation> T getAnnotation(Class<T> annotationClass)

    - #### isSynthetic

          public boolean isSynthetic()

    - #### getCachedMethod

          public Method getCachedMethod()

    - #### canAccessLegally

          public boolean canAccessLegally(Class<?> callerClass)