public class Invoker
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected static java.lang.Object[] |
EMPTY_ARGUMENTS |
protected static java.lang.Class[] |
EMPTY_TYPES |
Constructor and Description |
---|
Invoker() |
Modifier and Type | Method and Description |
---|---|
java.lang.Object[] |
asArray(java.lang.Object arguments)
Converts the given object into an array; if its an array then just
cast otherwise wrap it in an array
|
java.lang.Object[] |
asUnwrappedArray(java.lang.Object arguments) |
java.lang.Object |
getAttribute(java.lang.Object object,
java.lang.String attribute)
Looks up the given attribute (field) on the given object
|
MetaClass |
getMetaClass(java.lang.Object object) |
MetaClassRegistry |
getMetaRegistry() |
Closure |
getMethodPointer(java.lang.Object object,
java.lang.String methodName)
Returns the method pointer for the given object name
|
java.lang.Object |
getProperty(java.lang.Object object,
java.lang.String property)
Looks up the given property of the given object
|
java.lang.Object |
invokeConstructorOf(java.lang.Class type,
java.lang.Object arguments) |
java.lang.Object |
invokeMethod(java.lang.Object object,
java.lang.String methodName,
java.lang.Object arguments)
Invokes the given method on the object.
|
java.lang.Object |
invokeStaticMethod(java.lang.Class type,
java.lang.String method,
java.lang.Object arguments) |
java.lang.Object |
invokeSuperMethod(java.lang.Object object,
java.lang.String methodName,
java.lang.Object arguments) |
void |
removeMetaClass(java.lang.Class clazz) |
void |
setAttribute(java.lang.Object object,
java.lang.String attribute,
java.lang.Object newValue)
Sets the given attribute (field) on the given object
|
void |
setProperty(java.lang.Object object,
java.lang.String property,
java.lang.Object newValue)
Sets the property on the given object
|
protected static final java.lang.Object[] EMPTY_ARGUMENTS
protected static final java.lang.Class[] EMPTY_TYPES
public MetaClassRegistry getMetaRegistry()
public MetaClass getMetaClass(java.lang.Object object)
public java.lang.Object invokeMethod(java.lang.Object object, java.lang.String methodName, java.lang.Object arguments)
public java.lang.Object invokeSuperMethod(java.lang.Object object, java.lang.String methodName, java.lang.Object arguments)
public java.lang.Object invokeStaticMethod(java.lang.Class type, java.lang.String method, java.lang.Object arguments)
public java.lang.Object invokeConstructorOf(java.lang.Class type, java.lang.Object arguments)
public java.lang.Object[] asArray(java.lang.Object arguments)
public java.lang.Object[] asUnwrappedArray(java.lang.Object arguments)
public java.lang.Object getProperty(java.lang.Object object, java.lang.String property)
public void setProperty(java.lang.Object object, java.lang.String property, java.lang.Object newValue)
public java.lang.Object getAttribute(java.lang.Object object, java.lang.String attribute)
public void setAttribute(java.lang.Object object, java.lang.String attribute, java.lang.Object newValue)
public Closure getMethodPointer(java.lang.Object object, java.lang.String methodName)
public void removeMetaClass(java.lang.Class clazz)