Class ClosureMetaMethod
- java.lang.Object
-
- org.codehaus.groovy.reflection.ParameterTypes
-
- groovy.lang.MetaMethod
-
- org.codehaus.groovy.runtime.metaclass.ClosureMetaMethod
-
- All Implemented Interfaces:
ClosureInvokingMethod
,java.lang.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
-
-
Field Summary
-
Fields inherited from class org.codehaus.groovy.reflection.ParameterTypes
isVargsMethod, nativeParamTypes, parameterTypes
-
-
Constructor Summary
Constructors Constructor Description ClosureMetaMethod(java.lang.String name, Closure c, CachedMethod doCall)
ClosureMetaMethod(java.lang.String name, java.lang.Class declaringClass, Closure c, CachedMethod doCall)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ClosureMetaMethod
copy(ClosureMetaMethod closureMethod)
static java.util.List<MetaMethod>
createMethodList(java.lang.String name, java.lang.Class declaringClass, Closure closure)
Closure
getClosure()
Retrieves the closure that is invoked by this MetaMethodCachedClass
getDeclaringClass()
CachedMethod
getDoCall()
int
getModifiers()
java.lang.String
getName()
The method namejava.lang.Class
getReturnType()
java.lang.Object
invoke(java.lang.Object object, java.lang.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, correctArguments, getNativeParameterTypes, getParameterTypes, getPT, isValidExactMethod, isValidExactMethod, 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(java.lang.String name, Closure c, CachedMethod doCall)
-
ClosureMetaMethod
public ClosureMetaMethod(java.lang.String name, java.lang.Class declaringClass, Closure c, CachedMethod doCall)
-
-
Method Detail
-
getModifiers
public int getModifiers()
- Specified by:
getModifiers
in classMetaMethod
-
getName
public java.lang.String getName()
Description copied from interface:ClosureInvokingMethod
The method name- Specified by:
getName
in interfaceClosureInvokingMethod
- Specified by:
getName
in classMetaMethod
- Returns:
- The method name
-
getReturnType
public java.lang.Class getReturnType()
- Specified by:
getReturnType
in classMetaMethod
-
getDeclaringClass
public CachedClass getDeclaringClass()
- Specified by:
getDeclaringClass
in classMetaMethod
-
invoke
public java.lang.Object invoke(java.lang.Object object, java.lang.Object[] arguments)
- Specified by:
invoke
in classMetaMethod
-
getClosure
public Closure getClosure()
Retrieves the closure that is invoked by this MetaMethod- Specified by:
getClosure
in interfaceClosureInvokingMethod
- Returns:
- The closure
-
createMethodList
public static java.util.List<MetaMethod> createMethodList(java.lang.String name, java.lang.Class declaringClass, Closure closure)
-
getDoCall
public CachedMethod getDoCall()
-
copy
public static ClosureMetaMethod copy(ClosureMetaMethod closureMethod)
-
-