## org.codehaus.groovy.runtime.metaclass
Class ClosureMetaMethod

    java.lang.Object
      org.codehaus.groovy.reflection.ParameterTypes
          groovy.lang.MetaMethod
              org.codehaus.groovy.runtime.metaclass.ClosureMetaMethod

All Implemented Interfaces:
  ClosureInvokingMethod, Cloneable

    public class ClosureMetaMethod

extends MetaMethod
implements ClosureInvokingMethod

A MetaMethod that accepts a closure in the constructor which is invoked when the MetaMethod is called. The delegate of the closure is set to the instance that the MetaMethod is invoked on when called.

Since:
  1.1
Author:
  Graeme Rocher

Field Summary

Fields inherited from class org.codehaus.groovy.reflection.ParameterTypes
`isVargsMethod, nativeParamTypes, parameterTypes`

Constructor Summary
`ClosureMetaMethod(String name, Class declaringClass, Closure c)`
`ClosureMetaMethod(String name, Closure c)`

Method Summary
`Closure` `getClosure()` Retrieves the closure that is invoked by this MetaMethod
`CachedClass` `getDeclaringClass()`
`int` `getModifiers()`
`String` `getName()` The method name
`Class` `getReturnType()`
`Object` `invoke(Object object, Object[] arguments)`

Methods inherited from class groovy.lang.MetaMethod
`checkParameters, clone, doMethodInvoke, equal, equal, getDescriptor, getMopName, getSignature, isAbstract, isCacheable, isMethod, isPrivate, isProtected, isPublic, isSame, isStatic, processDoMethodInvokeException, toString`

Methods inherited from class org.codehaus.groovy.reflection.ParameterTypes
`coerceArgumentsToClasses, getNativeParameterTypes, getParameterTypes, getPT, isValidMethod, isValidMethod, isVargsMethod, setParametersTypes`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface groovy.lang.ClosureInvokingMethod
`isStatic`

Constructor Detail

### ClosureMetaMethod

    public ClosureMetaMethod(String name,
                             Closure c)

### ClosureMetaMethod

    public ClosureMetaMethod(String name,
                             Class declaringClass,
                             Closure c)

Method Detail

### getModifiers

    public int getModifiers()

  Specified by:
    `getModifiers` in class `MetaMethod`

### getName

    public String getName()

  Description copied from interface: `ClosureInvokingMethod`
  The method name

  Specified by:
    `getName` in interface `ClosureInvokingMethod`
  Specified by:
    `getName` in class `MetaMethod`
  Returns:
    The method name

### getReturnType

    public Class getReturnType()

  Specified by:
    `getReturnType` in class `MetaMethod`

### getDeclaringClass

    public CachedClass getDeclaringClass()

  Specified by:
    `getDeclaringClass` in class `MetaMethod`

### invoke

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

  Specified by:
    `invoke` in class `MetaMethod`

### getClosure

    public Closure getClosure()

  Retrieves the closure that is invoked by this MetaMethod

  Specified by:
    `getClosure` in interface `ClosureInvokingMethod`
  Returns:
    The closure

Copyright © 2003-2008 The Codehaus. All rights reserved.