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 ClosureMetaMethodcopy(ClosureMetaMethod closureMethod)static java.util.List<MetaMethod>createMethodList(java.lang.String name, java.lang.Class declaringClass, Closure closure)ClosuregetClosure()Retrieves the closure that is invoked by this MetaMethodCachedClassgetDeclaringClass()CachedMethodgetDoCall()intgetModifiers()java.lang.StringgetName()The method namejava.lang.ClassgetReturnType()java.lang.Objectinvoke(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:
getModifiersin classMetaMethod
-
getName
public java.lang.String getName()
Description copied from interface:ClosureInvokingMethodThe method name- Specified by:
getNamein interfaceClosureInvokingMethod- Specified by:
getNamein classMetaMethod- Returns:
- The method name
-
getReturnType
public java.lang.Class getReturnType()
- Specified by:
getReturnTypein classMetaMethod
-
getDeclaringClass
public CachedClass getDeclaringClass()
- Specified by:
getDeclaringClassin classMetaMethod
-
invoke
public java.lang.Object invoke(java.lang.Object object, java.lang.Object[] arguments)- Specified by:
invokein classMetaMethod
-
getClosure
public Closure getClosure()
Retrieves the closure that is invoked by this MetaMethod- Specified by:
getClosurein 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)
-
-