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.5
- Author:
- Graeme Rocher
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, correctArguments, getNativeParameterTypes, getParameterTypes, getPT, isValidExactMethod, isValidExactMethod, isValidMethod, isValidMethod, isVargsMethod, setParametersTypes |
ClosureMetaMethod
public ClosureMetaMethod(String name,
Closure c,
CachedMethod doCall)
ClosureMetaMethod
public ClosureMetaMethod(String name,
Class declaringClass,
Closure c,
CachedMethod doCall)
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
createMethodList
public static List<MetaMethod> createMethodList(String name,
Class declaringClass,
Closure closure)
getDoCall
public CachedMethod getDoCall()
copy
public static ClosureMetaMethod copy(ClosureMetaMethod closureMethod)