Package groovy.lang
Class MetaMethod
java.lang.Object
org.codehaus.groovy.reflection.ParameterTypes
groovy.lang.MetaMethod
- All Implemented Interfaces:
Cloneable
- Direct Known Subclasses:
CachedMethod,CallSiteAwareMetaMethod,ClosureMetaMethod,ClosureStaticMetaMethod,GeneratedMetaMethod,MetaClassImpl.MetaConstructor,MixinInstanceMetaMethod,ReflectionMetaMethod,TransformMetaMethod
Represents a Method on a Java object a little like
Method
except without using reflection to invoke the method-
Field Summary
FieldsFields inherited from class org.codehaus.groovy.reflection.ParameterTypes
isVargsMethod, nativeParamTypes, parameterTypes -
Constructor Summary
ConstructorsConstructorDescriptionConstructor for a metamethod with an empty parameter listMetaMethod(Class[] pt) Constructor wit a list of parameter classes -
Method Summary
Modifier and TypeMethodDescriptionvoidcheckParameters(Class[] arguments) Checks that the given parameters are valid to call this methodclone()doMethodInvoke(Object object, Object[] argumentArray) Invokes the method this object represents.protected static booleanequal(CachedClass[] a, Class[] b) protected static booleanequal(CachedClass[] a, CachedClass[] b) abstract CachedClassGets the class where this method is declaredReturn a descriptor of this method based on the return type and parameters of this method.abstract intReturns the modifiers for this methodabstract StringgetName()Returns the name of the method represented by this classabstract ClassAccess the return type for this methodReturns the signature of this methodabstract ObjectInvoke this methodbooleanReturns whether this method is abstract.booleanReturns whether this object is cacheablebooleanReturns whether this method is interface-default.booleanisMethod(MetaMethod method) Returns true if this metamethod represents the same method as the argument.final booleanReturns whether this method is private.final booleanReturns whether this method is protected.final booleanisPublic()Returns whether this method is public.final booleanisSame(MetaMethod method) booleanisStatic()Returns whether this method is static.final RuntimeExceptionprocessDoMethodInvokeException(Exception e, Object object, Object[] argumentArray) This method is called when an exception occurs while invoking this method.toString()Returns a string representation of this methodMethods inherited from class org.codehaus.groovy.reflection.ParameterTypes
coerceArgumentsToClasses, correctArguments, getNativeParameterTypes, getParameterTypes, getPT, isValidExactMethod, isValidExactMethod, isValidMethod, isValidMethod, isVargsMethod, isVargsMethod, setParametersTypes
-
Field Details
-
EMPTY_ARRAY
-
-
Constructor Details
-
MetaMethod
public MetaMethod()Constructor for a metamethod with an empty parameter list -
MetaMethod
Constructor wit a list of parameter classes- Parameters:
pt- A list of parameters types
-
-
Method Details
-
getModifiers
public abstract int getModifiers()Returns the modifiers for this method- Returns:
- modifiers as an int.
-
getName
Returns the name of the method represented by this class- Returns:
- name of this method
-
getReturnType
Access the return type for this method- Returns:
- the return type of this method
-
getDeclaringClass
Gets the class where this method is declared- Returns:
- class of this method
-
invoke
Invoke this method- Parameters:
object- The object this method should be invoked onarguments- The arguments for the method if applicable- Returns:
- The return value of the invocation
-
checkParameters
Checks that the given parameters are valid to call this method- Parameters:
arguments- the arguments to check- Throws:
IllegalArgumentException- if the parameters are not valid
-
isMethod
Returns true if this metamethod represents the same method as the argument.- Parameters:
method- A metaMethod instance- Returns:
- true if method is for the same method as this method, false otherwise.
-
equal
-
equal
-
toString
Returns a string representation of this method -
clone
-
isStatic
public boolean isStatic()Returns whether this method is static.- Returns:
- true if this method is static
-
isAbstract
public boolean isAbstract()Returns whether this method is abstract.- Returns:
- true if this method is abstract
-
isDefault
public boolean isDefault()Returns whether this method is interface-default.- Returns:
- true if this method is default
-
isPrivate
public final boolean isPrivate()Returns whether this method is private.- Returns:
- true if this method is private
-
isProtected
public final boolean isProtected()Returns whether this method is protected.- Returns:
- true if this method is protected
-
isPublic
public final boolean isPublic()Returns whether this method is public.- Returns:
- true if this method is public
-
isSame
- Parameters:
method- the method to compare against- Returns:
- true if the given method has the same name, parameters, return type and modifiers but may be defined on another type
-
isCacheable
public boolean isCacheable()Returns whether this object is cacheable -
getDescriptor
Return a descriptor of this method based on the return type and parameters of this method. -
getSignature
Returns the signature of this method- Returns:
- The signature of this method
-
getMopName
-
processDoMethodInvokeException
public final RuntimeException processDoMethodInvokeException(Exception e, Object object, Object[] argumentArray) This method is called when an exception occurs while invoking this method. -
doMethodInvoke
Invokes the method this object represents. This method is not final but it should be overloaded very carefully and only by generated methods there is no guarantee that it will be called- Parameters:
object- The object the method is to be called at.argumentArray- Arguments for the method invocation.- Returns:
- The return value of the invoked method.
-