Package org.codehaus.groovy.runtime
Class ScriptBytecodeAdapter
java.lang.Object
org.codehaus.groovy.runtime.ScriptBytecodeAdapter
A static helper class to interface bytecode and runtime
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidassertFailed(Object expression, Object message) static ObjectProvides a hook for type coercion of the given object to the required typestatic ObjectbitwiseNegate(Object value) static ObjectcastToType(Object object, Class type) Provides a hook for type casting of the given object to the required typestatic booleancompareEqual(Object left, Object right) static booleancompareGreaterThan(Object left, Object right) static booleancompareGreaterThanEqual(Object left, Object right) static booleancompareIdentical(Object left, Object right) static booleancompareLessThan(Object left, Object right) static booleancompareLessThanEqual(Object left, Object right) static booleancompareNotEqual(Object left, Object right) static booleancompareNotIdentical(Object left, Object right) static Integerstatic WrappercreateGroovyObjectWrapper(GroovyObject val, Class clazz) static ListcreateList(Object[] values) static Mapstatic WrappercreatePojoWrapper(Object val, Class clazz) static ListcreateRange(Object from, Object to, boolean inclusive) static ListcreateRange(Object from, Object to, boolean exclusiveLeft, boolean exclusiveRight) static TuplecreateTuple(Object[] array) static Object[]despreadList(Object[] args, Object[] spreads, int[] positions) static Matcherstatic Objectstatic ObjectgetFieldOnSuper(Class senderClass, Object receiver, String messageName) static ObjectgetFieldOnSuperSafe(Class senderClass, Object receiver, String messageName) static ObjectgetFieldOnSuperSpreadSafe(Class senderClass, Object receiver, String messageName) static ObjectgetFieldSafe(Class senderClass, Object receiver, String messageName) static ObjectgetFieldSpreadSafe(Class senderClass, Object receiver, String messageName) static ObjectgetGroovyObjectField(Class senderClass, GroovyObject receiver, String messageName) static ObjectgetGroovyObjectFieldSafe(Class senderClass, GroovyObject receiver, String messageName) static ObjectgetGroovyObjectFieldSpreadSafe(Class senderClass, GroovyObject receiver, String messageName) static ObjectgetGroovyObjectProperty(Class senderClass, GroovyObject receiver, String messageName) static ObjectgetGroovyObjectPropertySafe(Class senderClass, GroovyObject receiver, String messageName) static ObjectgetGroovyObjectPropertySpreadSafe(Class senderClass, GroovyObject receiver, String messageName) static ClosuregetMethodPointer(Object object, String methodName) Returns the method pointer for the given object namestatic ObjectgetProperty(Class senderClass, Object receiver, String messageName) static ObjectgetPropertyOnSuper(Class senderClass, GroovyObject receiver, String messageName) static ObjectgetPropertyOnSuperSafe(Class senderClass, GroovyObject receiver, String messageName) static ObjectgetPropertyOnSuperSpreadSafe(Class senderClass, GroovyObject receiver, String messageName) static ObjectgetPropertySafe(Class senderClass, Object receiver, String messageName) static ObjectgetPropertySpreadSafe(Class senderClass, Object receiver, String messageName) static MetaClassinitMetaClass(Object object) static ObjectinvokeClosure(Object closure, Object[] arguments) static ObjectinvokeMethod0(Class senderClass, Object receiver, String messageName) static ObjectinvokeMethod0Safe(Class senderClass, Object receiver, String messageName) static ObjectinvokeMethod0SpreadSafe(Class senderClass, Object receiver, String messageName) static ObjectinvokeMethodN(Class senderClass, Object receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodNSafe(Class senderClass, Object receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodNSpreadSafe(Class senderClass, Object receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnCurrent0(Class senderClass, GroovyObject receiver, String messageName) static ObjectinvokeMethodOnCurrent0Safe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnCurrent0SpreadSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnCurrentN(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnCurrentNSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnCurrentNSpreadSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnSuper0(Class senderClass, GroovyObject receiver, String messageName) static ObjectinvokeMethodOnSuper0Safe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnSuper0SpreadSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnSuperN(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnSuperNSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeMethodOnSuperNSpreadSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) static ObjectinvokeNew0(Class senderClass, Class receiver) static ObjectinvokeNewN(Class senderClass, Class receiver, Object arguments) static ObjectinvokeStaticMethod0(Class senderClass, Class receiver, String messageName) static ObjectinvokeStaticMethodN(Class senderClass, Class receiver, String messageName, Object[] messageArguments) static booleanstatic booleanstatic booleanmatchRegex(Object left, Object right) static PatternregexPattern(Object regex) static intselectConstructorAndTransformArguments(Object[] arguments, int numberOfConstructors, Class which) static voidstatic voidsetFieldOnSuper(Object messageArgument, Class senderClass, Object receiver, String messageName) static voidsetFieldOnSuperSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) static voidsetFieldOnSuperSpreadSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) static voidsetFieldSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) static voidsetFieldSpreadSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) static voidsetGroovyObjectField(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) static voidsetGroovyObjectFieldSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) static voidsetGroovyObjectFieldSpreadSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) static voidsetGroovyObjectProperty(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) static voidsetGroovyObjectPropertySafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) static voidsetGroovyObjectPropertySpreadSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) static voidsetProperty(Object messageArgument, Class senderClass, Object receiver, String messageName) static voidsetPropertyOnSuper(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) static voidsetPropertyOnSuperSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) static voidsetPropertyOnSuperSpreadSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) static voidsetPropertySafe(Object messageArgument, Class senderClass, Object receiver, String messageName) static voidsetPropertySpreadSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) static Objectstatic ObjectunaryMinus(Object value) static Objectstatic Throwable
-
Field Details
-
EMPTY_ARGS
-
-
Constructor Details
-
ScriptBytecodeAdapter
public ScriptBytecodeAdapter()
-
-
Method Details
-
unwrap
-
invokeMethodOnCurrentN
public static Object invokeMethodOnCurrentN(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodOnCurrentNSafe
public static Object invokeMethodOnCurrentNSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodOnCurrentNSpreadSafe
public static Object invokeMethodOnCurrentNSpreadSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodOnCurrent0
public static Object invokeMethodOnCurrent0(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
invokeMethodOnCurrent0Safe
public static Object invokeMethodOnCurrent0Safe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodOnCurrent0SpreadSafe
public static Object invokeMethodOnCurrent0SpreadSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodOnSuperN
public static Object invokeMethodOnSuperN(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodOnSuperNSafe
public static Object invokeMethodOnSuperNSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodOnSuperNSpreadSafe
public static Object invokeMethodOnSuperNSpreadSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodOnSuper0
public static Object invokeMethodOnSuper0(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
invokeMethodOnSuper0Safe
public static Object invokeMethodOnSuper0Safe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodOnSuper0SpreadSafe
public static Object invokeMethodOnSuper0SpreadSafe(Class senderClass, GroovyObject receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodN
public static Object invokeMethodN(Class senderClass, Object receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodNSafe
public static Object invokeMethodNSafe(Class senderClass, Object receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethodNSpreadSafe
public static Object invokeMethodNSpreadSafe(Class senderClass, Object receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeMethod0
public static Object invokeMethod0(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
invokeMethod0Safe
public static Object invokeMethod0Safe(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
invokeMethod0SpreadSafe
public static Object invokeMethod0SpreadSafe(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
invokeStaticMethodN
public static Object invokeStaticMethodN(Class senderClass, Class receiver, String messageName, Object[] messageArguments) throws Throwable - Throws:
Throwable
-
invokeStaticMethod0
public static Object invokeStaticMethod0(Class senderClass, Class receiver, String messageName) throws Throwable - Throws:
Throwable
-
invokeNewN
public static Object invokeNewN(Class senderClass, Class receiver, Object arguments) throws Throwable - Throws:
Throwable
-
invokeNew0
- Throws:
Throwable
-
selectConstructorAndTransformArguments
public static int selectConstructorAndTransformArguments(Object[] arguments, int numberOfConstructors, Class which) throws Throwable - Throws:
Throwable
-
getFieldOnSuper
public static Object getFieldOnSuper(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
getFieldOnSuperSafe
public static Object getFieldOnSuperSafe(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
getFieldOnSuperSpreadSafe
public static Object getFieldOnSuperSpreadSafe(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
setFieldOnSuper
public static void setFieldOnSuper(Object messageArgument, Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
setFieldOnSuperSafe
public static void setFieldOnSuperSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
setFieldOnSuperSpreadSafe
public static void setFieldOnSuperSpreadSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
getField
public static Object getField(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
getFieldSafe
public static Object getFieldSafe(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
getFieldSpreadSafe
public static Object getFieldSpreadSafe(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
setField
public static void setField(Object messageArgument, Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
setFieldSafe
public static void setFieldSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
setFieldSpreadSafe
public static void setFieldSpreadSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
getGroovyObjectField
public static Object getGroovyObjectField(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
getGroovyObjectFieldSafe
public static Object getGroovyObjectFieldSafe(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
getGroovyObjectFieldSpreadSafe
public static Object getGroovyObjectFieldSpreadSafe(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
setGroovyObjectField
public static void setGroovyObjectField(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
setGroovyObjectFieldSafe
public static void setGroovyObjectFieldSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
setGroovyObjectFieldSpreadSafe
public static void setGroovyObjectFieldSpreadSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
getPropertyOnSuper
public static Object getPropertyOnSuper(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
getPropertyOnSuperSafe
public static Object getPropertyOnSuperSafe(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
getPropertyOnSuperSpreadSafe
public static Object getPropertyOnSuperSpreadSafe(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
setPropertyOnSuper
public static void setPropertyOnSuper(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
setPropertyOnSuperSafe
public static void setPropertyOnSuperSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
setPropertyOnSuperSpreadSafe
public static void setPropertyOnSuperSpreadSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
getProperty
public static Object getProperty(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
getPropertySafe
public static Object getPropertySafe(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
getPropertySpreadSafe
public static Object getPropertySpreadSafe(Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
setProperty
public static void setProperty(Object messageArgument, Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
setPropertySafe
public static void setPropertySafe(Object messageArgument, Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
setPropertySpreadSafe
public static void setPropertySpreadSafe(Object messageArgument, Class senderClass, Object receiver, String messageName) throws Throwable - Throws:
Throwable
-
getGroovyObjectProperty
public static Object getGroovyObjectProperty(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
getGroovyObjectPropertySafe
public static Object getGroovyObjectPropertySafe(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
getGroovyObjectPropertySpreadSafe
public static Object getGroovyObjectPropertySpreadSafe(Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
setGroovyObjectProperty
public static void setGroovyObjectProperty(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
setGroovyObjectPropertySafe
public static void setGroovyObjectPropertySafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
setGroovyObjectPropertySpreadSafe
public static void setGroovyObjectPropertySpreadSafe(Object messageArgument, Class senderClass, GroovyObject receiver, String messageName) throws Throwable - Throws:
Throwable
-
getMethodPointer
Returns the method pointer for the given object name- Parameters:
object- the object containing the methodmethodName- the name of the method of interest- Returns:
- the resulting Closure
-
invokeClosure
- Throws:
Throwable
-
asType
Provides a hook for type coercion of the given object to the required type- Parameters:
type- of object to convert the given object toobject- the object to be converted- Returns:
- the original object or a new converted value
- Throws:
Throwable- if the coercion fails
-
castToType
Provides a hook for type casting of the given object to the required type- Parameters:
type- of object to convert the given object toobject- the object to be converted- Returns:
- the original object or a new converted value
- Throws:
Throwable- if the type casting fails
-
createTuple
-
createList
-
createPojoWrapper
-
createGroovyObjectWrapper
-
createMap
-
createRange
public static List createRange(Object from, Object to, boolean exclusiveLeft, boolean exclusiveRight) throws Throwable - Throws:
Throwable
-
createRange
- Throws:
Throwable
-
assertFailed
-
isCase
- Throws:
Throwable
-
isNotCase
- Throws:
Throwable
-
compareIdentical
-
compareNotIdentical
-
compareEqual
-
compareNotEqual
-
compareTo
-
compareLessThan
-
compareLessThanEqual
-
compareGreaterThan
-
compareGreaterThanEqual
-
regexPattern
-
findRegex
- Throws:
Throwable
-
matchRegex
-
despreadList
-
spreadMap
-
unaryMinus
- Throws:
Throwable
-
unaryPlus
- Throws:
Throwable
-
bitwiseNegate
- Throws:
Throwable
-
initMetaClass
-