Package 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:
  `java.lang.Cloneable`, `java.lang.Comparable`

    public class CachedMethod
    extends MetaMethod
    implements java.lang.Comparable

- ## Field Summary

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

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

  `isVargsMethod, nativeParamTypes, parameterTypes`

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `CachedMethod​(java.lang.reflect.Method method)` |
  `CachedMethod​(CachedClass clazz, java.lang.reflect.Method method)` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `boolean` | `canAccessLegally​(java.lang.Class<?> callerClass)` |
  `int` | `compareTo​(java.lang.Object o)` |
  `CallSite` | `createPogoMetaMethodSite​(CallSite site, MetaClassImpl metaClass, java.lang.Class[] params)` |
  `CallSite` | `createPojoMetaMethodSite​(CallSite site, MetaClassImpl metaClass, java.lang.Class[] params)` |
  `CallSite` | `createStaticMetaMethodSite​(CallSite site, MetaClassImpl metaClass, java.lang.Class[] params)` |
  `boolean` | `equals​(java.lang.Object o)` |
  `static CachedMethod` | `find​(java.lang.reflect.Method method)` |
  `<T extends java.lang.annotation.Annotation> T` | `getAnnotation​(java.lang.Class<T> annotationClass)` |
  `java.lang.reflect.Method` | `getCachedMethod()` |
  `CachedClass` | `getDeclaringClass()` | Gets the class where this method is declared
  `java.lang.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
  `java.lang.String` | `getName()` | Returns the name of the method represented by this class
  `int` | `getParamsCount()` |
  `ParameterTypes` | `getParamTypes()` |
  `java.lang.Class[]` | `getPT()` |
  `java.lang.Class` | `getReturnType()` | Access the return type for this method
  `java.lang.String` | `getSignature()` | Returns the signature of this method
  `CachedMethod` | `getTransformedMethod()` |
  `int` | `hashCode()` |
  `java.lang.Object` | `invoke​(java.lang.Object object, java.lang.Object[] arguments)` | Invoke this method
  `boolean` | `isStatic()` | Returns whether or not this method is static.
  `boolean` | `isSynthetic()` |
  `java.lang.reflect.Method` | `setAccessible()` |
  `void` | `setTransformedMethod​(CachedMethod transformedMethod)` |
  `java.lang.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 Details

  - ### EMPTY_ARRAY

    public static final CachedMethod[] EMPTY_ARRAY

  - ### cachedClass

    public final CachedClass cachedClass

- ## Constructor Details

  - ### CachedMethod

    public CachedMethod​(CachedClass clazz, java.lang.reflect.Method method)

  - ### CachedMethod

    public CachedMethod​(java.lang.reflect.Method method)

- ## Method Details

  - ### find

    public static CachedMethod find​(java.lang.reflect.Method method)

  - ### getPT

    public java.lang.Class[] getPT()
    Overrides:
      `getPT` in class `ParameterTypes`

  - ### getName

    public java.lang.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 java.lang.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 java.lang.Object invoke​(java.lang.Object object, java.lang.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 java.lang.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 java.lang.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 java.lang.reflect.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​(java.lang.Object o)
    Specified by:
      `compareTo` in interface `java.lang.Comparable`

  - ### equals

    public boolean equals​(java.lang.Object o)
    Overrides:
      `equals` in class `java.lang.Object`

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `java.lang.Object`

  - ### toString

    public java.lang.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, java.lang.Class[] params)

  - ### createPojoMetaMethodSite

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

  - ### createStaticMetaMethodSite

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

  - ### getAnnotation

    public <T extends java.lang.annotation.Annotation> T getAnnotation​(java.lang.Class<T> annotationClass)

  - ### isSynthetic

    public boolean isSynthetic()

  - ### getCachedMethod

    public java.lang.reflect.Method getCachedMethod()

  - ### canAccessLegally

    public boolean canAccessLegally​(java.lang.Class<?> callerClass)