Class NewInstanceMetaMethod
java.lang.Object
org.codehaus.groovy.reflection.ParameterTypes
groovy.lang.MetaMethod
org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod
org.codehaus.groovy.runtime.metaclass.NewMetaMethod
org.codehaus.groovy.runtime.metaclass.NewInstanceMetaMethod
- All Implemented Interfaces:
MetaMember,Cloneable
- Direct Known Subclasses:
GroovyCategorySupport.CategoryMethod
A MetaMethod implementation where the underlying method is really a static
helper method on some class but it appears to be an instance method on a class.
This implementation is used to add new methods to the JDK writing them as normal
static methods with the first parameter being the class on which the method is added.
-
Field Summary
Fields inherited from class org.codehaus.groovy.runtime.metaclass.NewMetaMethod
bytecodeParameterTypes, EMPTY_TYPE_ARRAYFields inherited from class org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod
methodFields inherited from class groovy.lang.MetaMethod
EMPTY_ARRAY -
Constructor Summary
ConstructorsConstructorDescriptionNewInstanceMetaMethod(CachedMethod method) Constructs a new NewInstanceMetaMethod. -
Method Summary
Modifier and TypeMethodDescriptionintReturns the modifiers for this method (PUBLIC without STATIC).Invokes the underlying static method with the object as the first argument.booleanisStatic()Indicates this method is not static (it appears as an instance method).Methods inherited from class org.codehaus.groovy.runtime.metaclass.NewMetaMethod
getBytecodeParameterTypes, getDeclaringClass, getOwnerClassMethods inherited from class org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod
getCachedMethod, getName, getPT, getReturnType, toStringMethods inherited from class groovy.lang.MetaMethod
checkParameters, clone, doMethodInvoke, equal, equal, getDescriptor, getMopName, getSignature, isAbstract, isCacheable, isDefault, isMethod, isSame, processDoMethodInvokeExceptionMethods inherited from class org.codehaus.groovy.reflection.ParameterTypes
coerceArgumentsToClasses, correctArguments, getNativeParameterTypes, getParameterTypes, isValidExactMethod, isValidExactMethod, isValidMethod, isValidMethod, isVargsMethod, isVargsMethod, setParametersTypesMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface groovy.lang.MetaMember
isFinal, isPackagePrivate, isPrivate, isProtected, isPublic, isSynthetic
-
Constructor Details
-
NewInstanceMetaMethod
Constructs a new NewInstanceMetaMethod.- Parameters:
method- the cached static helper method
-
-
Method Details
-
isStatic
public boolean isStatic()Indicates this method is not static (it appears as an instance method).- Returns:
- false, as this wraps a static method to appear as an instance method
-
getModifiers
public int getModifiers()Returns the modifiers for this method (PUBLIC without STATIC).- Specified by:
getModifiersin interfaceMetaMember- Overrides:
getModifiersin classReflectionMetaMethod- Returns:
- PUBLIC modifier only
-
invoke
Invokes the underlying static method with the object as the first argument. This adapts instance method calls to the underlying static method signature.- Overrides:
invokein classReflectionMetaMethod- Parameters:
object- the object to invoke the method on (passed as first argument to static method)arguments- the method arguments- Returns:
- the method return value
-