org.codehaus.groovy.runtime
Class ScriptBytecodeAdapter

java.lang.Object
  extended by org.codehaus.groovy.runtime.ScriptBytecodeAdapter

public class ScriptBytecodeAdapter
extends java.lang.Object

A static helper class to interface bytecode and runtime


Field Summary
static java.lang.Object[] EMPTY_ARGS
           
 
Constructor Summary
ScriptBytecodeAdapter()
           
 
Method Summary
static void assertFailed(java.lang.Object expression, java.lang.Object message)
           
static java.lang.Object asType(java.lang.Object object, java.lang.Class type)
          Provides a hook for type coercion of the given object to the required type
static java.lang.Object bitwiseNegate(java.lang.Object value)
           
static java.lang.Object castToType(java.lang.Object object, java.lang.Class type)
          Provides a hook for type casting of the given object to the required type
static boolean compareEqual(java.lang.Object left, java.lang.Object right)
           
static boolean compareGreaterThan(java.lang.Object left, java.lang.Object right)
           
static boolean compareGreaterThanEqual(java.lang.Object left, java.lang.Object right)
           
static boolean compareIdentical(java.lang.Object left, java.lang.Object right)
           
static boolean compareLessThan(java.lang.Object left, java.lang.Object right)
           
static boolean compareLessThanEqual(java.lang.Object left, java.lang.Object right)
           
static boolean compareNotEqual(java.lang.Object left, java.lang.Object right)
           
static boolean compareNotIdentical(java.lang.Object left, java.lang.Object right)
           
static java.lang.Integer compareTo(java.lang.Object left, java.lang.Object right)
           
static Wrapper createGroovyObjectWrapper(GroovyObject val, java.lang.Class clazz)
           
static java.util.List createList(java.lang.Object[] values)
           
static java.util.Map createMap(java.lang.Object[] values)
           
static Wrapper createPojoWrapper(java.lang.Object val, java.lang.Class clazz)
           
static java.util.List createRange(java.lang.Object from, java.lang.Object to, boolean inclusive)
           
static Tuple createTuple(java.lang.Object[] array)
           
static java.lang.Object[] despreadList(java.lang.Object[] args, java.lang.Object[] spreads, int[] positions)
           
static java.util.regex.Matcher findRegex(java.lang.Object left, java.lang.Object right)
           
static java.lang.Object getField(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object getFieldOnSuper(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object getFieldOnSuperSafe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object getFieldOnSuperSpreadSafe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object getFieldSafe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object getFieldSpreadSafe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object getGroovyObjectField(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object getGroovyObjectFieldSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object getGroovyObjectFieldSpreadSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object getGroovyObjectProperty(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object getGroovyObjectPropertySafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object getGroovyObjectPropertySpreadSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static Closure getMethodPointer(java.lang.Object object, java.lang.String methodName)
          Returns the method pointer for the given object name
static java.lang.Object getProperty(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object getPropertyOnSuper(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object getPropertyOnSuperSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object getPropertyOnSuperSpreadSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object getPropertySafe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object getPropertySpreadSafe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static MetaClass initMetaClass(java.lang.Object object)
           
static java.lang.Object invokeClosure(java.lang.Object closure, java.lang.Object[] arguments)
           
static java.lang.Object invokeMethod0(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object invokeMethod0Safe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object invokeMethod0SpreadSafe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object invokeMethodN(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodNSafe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodNSpreadSafe(java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnCurrent0(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object invokeMethodOnCurrent0Safe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnCurrent0SpreadSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnCurrentN(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnCurrentNSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnCurrentNSpreadSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnSuper0(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static java.lang.Object invokeMethodOnSuper0Safe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnSuper0SpreadSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnSuperN(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnSuperNSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeMethodOnSuperNSpreadSafe(java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static java.lang.Object invokeNew0(java.lang.Class senderClass, java.lang.Class receiver)
           
static java.lang.Object invokeNewN(java.lang.Class senderClass, java.lang.Class receiver, java.lang.Object arguments)
           
static java.lang.Object invokeStaticMethod0(java.lang.Class senderClass, java.lang.Class receiver, java.lang.String messageName)
           
static java.lang.Object invokeStaticMethodN(java.lang.Class senderClass, java.lang.Class receiver, java.lang.String messageName, java.lang.Object[] messageArguments)
           
static boolean isCase(java.lang.Object switchValue, java.lang.Object caseExpression)
           
static boolean matchRegex(java.lang.Object left, java.lang.Object right)
           
static java.util.regex.Pattern regexPattern(java.lang.Object regex)
           
static int selectConstructorAndTransformArguments(java.lang.Object[] arguments, int numberOfConstructors, java.lang.Class which)
           
static void setField(java.lang.Object messageArgument, java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static void setFieldOnSuper(java.lang.Object messageArgument, java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static void setFieldOnSuperSafe(java.lang.Object messageArgument, java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static void setFieldOnSuperSpreadSafe(java.lang.Object messageArgument, java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static void setFieldSafe(java.lang.Object messageArgument, java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static void setFieldSpreadSafe(java.lang.Object messageArgument, java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static void setGroovyObjectField(java.lang.Object messageArgument, java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static void setGroovyObjectFieldSafe(java.lang.Object messageArgument, java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static void setGroovyObjectFieldSpreadSafe(java.lang.Object messageArgument, java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static void setGroovyObjectProperty(java.lang.Object messageArgument, java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static void setGroovyObjectPropertySafe(java.lang.Object messageArgument, java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static void setGroovyObjectPropertySpreadSafe(java.lang.Object messageArgument, java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static void setProperty(java.lang.Object messageArgument, java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static void setPropertyOnSuper(java.lang.Object messageArgument, java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static void setPropertyOnSuperSafe(java.lang.Object messageArgument, java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static void setPropertyOnSuperSpreadSafe(java.lang.Object messageArgument, java.lang.Class senderClass, GroovyObject receiver, java.lang.String messageName)
           
static void setPropertySafe(java.lang.Object messageArgument, java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static void setPropertySpreadSafe(java.lang.Object messageArgument, java.lang.Class senderClass, java.lang.Object receiver, java.lang.String messageName)
           
static java.lang.Object spreadMap(java.lang.Object value)
           
static java.lang.Object unaryMinus(java.lang.Object value)
           
static java.lang.Object unaryPlus(java.lang.Object value)
           
static java.lang.Throwable unwrap(GroovyRuntimeException gre)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EMPTY_ARGS

public static final java.lang.Object[] EMPTY_ARGS
Constructor Detail

ScriptBytecodeAdapter

public ScriptBytecodeAdapter()
Method Detail

unwrap

public static java.lang.Throwable unwrap(GroovyRuntimeException gre)

invokeMethodOnCurrentN

public static java.lang.Object invokeMethodOnCurrentN(java.lang.Class senderClass,
                                                      GroovyObject receiver,
                                                      java.lang.String messageName,
                                                      java.lang.Object[] messageArguments)
                                               throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnCurrentNSafe

public static java.lang.Object invokeMethodOnCurrentNSafe(java.lang.Class senderClass,
                                                          GroovyObject receiver,
                                                          java.lang.String messageName,
                                                          java.lang.Object[] messageArguments)
                                                   throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnCurrentNSpreadSafe

public static java.lang.Object invokeMethodOnCurrentNSpreadSafe(java.lang.Class senderClass,
                                                                GroovyObject receiver,
                                                                java.lang.String messageName,
                                                                java.lang.Object[] messageArguments)
                                                         throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnCurrent0

public static java.lang.Object invokeMethodOnCurrent0(java.lang.Class senderClass,
                                                      GroovyObject receiver,
                                                      java.lang.String messageName)
                                               throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnCurrent0Safe

public static java.lang.Object invokeMethodOnCurrent0Safe(java.lang.Class senderClass,
                                                          GroovyObject receiver,
                                                          java.lang.String messageName,
                                                          java.lang.Object[] messageArguments)
                                                   throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnCurrent0SpreadSafe

public static java.lang.Object invokeMethodOnCurrent0SpreadSafe(java.lang.Class senderClass,
                                                                GroovyObject receiver,
                                                                java.lang.String messageName,
                                                                java.lang.Object[] messageArguments)
                                                         throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnSuperN

public static java.lang.Object invokeMethodOnSuperN(java.lang.Class senderClass,
                                                    GroovyObject receiver,
                                                    java.lang.String messageName,
                                                    java.lang.Object[] messageArguments)
                                             throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnSuperNSafe

public static java.lang.Object invokeMethodOnSuperNSafe(java.lang.Class senderClass,
                                                        GroovyObject receiver,
                                                        java.lang.String messageName,
                                                        java.lang.Object[] messageArguments)
                                                 throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnSuperNSpreadSafe

public static java.lang.Object invokeMethodOnSuperNSpreadSafe(java.lang.Class senderClass,
                                                              GroovyObject receiver,
                                                              java.lang.String messageName,
                                                              java.lang.Object[] messageArguments)
                                                       throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnSuper0

public static java.lang.Object invokeMethodOnSuper0(java.lang.Class senderClass,
                                                    GroovyObject receiver,
                                                    java.lang.String messageName)
                                             throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnSuper0Safe

public static java.lang.Object invokeMethodOnSuper0Safe(java.lang.Class senderClass,
                                                        GroovyObject receiver,
                                                        java.lang.String messageName,
                                                        java.lang.Object[] messageArguments)
                                                 throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodOnSuper0SpreadSafe

public static java.lang.Object invokeMethodOnSuper0SpreadSafe(java.lang.Class senderClass,
                                                              GroovyObject receiver,
                                                              java.lang.String messageName,
                                                              java.lang.Object[] messageArguments)
                                                       throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodN

public static java.lang.Object invokeMethodN(java.lang.Class senderClass,
                                             java.lang.Object receiver,
                                             java.lang.String messageName,
                                             java.lang.Object[] messageArguments)
                                      throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodNSafe

public static java.lang.Object invokeMethodNSafe(java.lang.Class senderClass,
                                                 java.lang.Object receiver,
                                                 java.lang.String messageName,
                                                 java.lang.Object[] messageArguments)
                                          throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethodNSpreadSafe

public static java.lang.Object invokeMethodNSpreadSafe(java.lang.Class senderClass,
                                                       java.lang.Object receiver,
                                                       java.lang.String messageName,
                                                       java.lang.Object[] messageArguments)
                                                throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethod0

public static java.lang.Object invokeMethod0(java.lang.Class senderClass,
                                             java.lang.Object receiver,
                                             java.lang.String messageName)
                                      throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethod0Safe

public static java.lang.Object invokeMethod0Safe(java.lang.Class senderClass,
                                                 java.lang.Object receiver,
                                                 java.lang.String messageName)
                                          throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeMethod0SpreadSafe

public static java.lang.Object invokeMethod0SpreadSafe(java.lang.Class senderClass,
                                                       java.lang.Object receiver,
                                                       java.lang.String messageName)
                                                throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeStaticMethodN

public static java.lang.Object invokeStaticMethodN(java.lang.Class senderClass,
                                                   java.lang.Class receiver,
                                                   java.lang.String messageName,
                                                   java.lang.Object[] messageArguments)
                                            throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeStaticMethod0

public static java.lang.Object invokeStaticMethod0(java.lang.Class senderClass,
                                                   java.lang.Class receiver,
                                                   java.lang.String messageName)
                                            throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeNewN

public static java.lang.Object invokeNewN(java.lang.Class senderClass,
                                          java.lang.Class receiver,
                                          java.lang.Object arguments)
                                   throws java.lang.Throwable
Throws:
java.lang.Throwable

invokeNew0

public static java.lang.Object invokeNew0(java.lang.Class senderClass,
                                          java.lang.Class receiver)
                                   throws java.lang.Throwable
Throws:
java.lang.Throwable

selectConstructorAndTransformArguments

public static int selectConstructorAndTransformArguments(java.lang.Object[] arguments,
                                                         int numberOfConstructors,
                                                         java.lang.Class which)
                                                  throws java.lang.Throwable
Throws:
java.lang.Throwable

getFieldOnSuper

public static java.lang.Object getFieldOnSuper(java.lang.Class senderClass,
                                               java.lang.Object receiver,
                                               java.lang.String messageName)
                                        throws java.lang.Throwable
Throws:
java.lang.Throwable

getFieldOnSuperSafe

public static java.lang.Object getFieldOnSuperSafe(java.lang.Class senderClass,
                                                   java.lang.Object receiver,
                                                   java.lang.String messageName)
                                            throws java.lang.Throwable
Throws:
java.lang.Throwable

getFieldOnSuperSpreadSafe

public static java.lang.Object getFieldOnSuperSpreadSafe(java.lang.Class senderClass,
                                                         java.lang.Object receiver,
                                                         java.lang.String messageName)
                                                  throws java.lang.Throwable
Throws:
java.lang.Throwable

setFieldOnSuper

public static void setFieldOnSuper(java.lang.Object messageArgument,
                                   java.lang.Class senderClass,
                                   java.lang.Object receiver,
                                   java.lang.String messageName)
                            throws java.lang.Throwable
Throws:
java.lang.Throwable

setFieldOnSuperSafe

public static void setFieldOnSuperSafe(java.lang.Object messageArgument,
                                       java.lang.Class senderClass,
                                       java.lang.Object receiver,
                                       java.lang.String messageName)
                                throws java.lang.Throwable
Throws:
java.lang.Throwable

setFieldOnSuperSpreadSafe

public static void setFieldOnSuperSpreadSafe(java.lang.Object messageArgument,
                                             java.lang.Class senderClass,
                                             java.lang.Object receiver,
                                             java.lang.String messageName)
                                      throws java.lang.Throwable
Throws:
java.lang.Throwable

getField

public static java.lang.Object getField(java.lang.Class senderClass,
                                        java.lang.Object receiver,
                                        java.lang.String messageName)
                                 throws java.lang.Throwable
Throws:
java.lang.Throwable

getFieldSafe

public static java.lang.Object getFieldSafe(java.lang.Class senderClass,
                                            java.lang.Object receiver,
                                            java.lang.String messageName)
                                     throws java.lang.Throwable
Throws:
java.lang.Throwable

getFieldSpreadSafe

public static java.lang.Object getFieldSpreadSafe(java.lang.Class senderClass,
                                                  java.lang.Object receiver,
                                                  java.lang.String messageName)
                                           throws java.lang.Throwable
Throws:
java.lang.Throwable

setField

public static void setField(java.lang.Object messageArgument,
                            java.lang.Class senderClass,
                            java.lang.Object receiver,
                            java.lang.String messageName)
                     throws java.lang.Throwable
Throws:
java.lang.Throwable

setFieldSafe

public static void setFieldSafe(java.lang.Object messageArgument,
                                java.lang.Class senderClass,
                                java.lang.Object receiver,
                                java.lang.String messageName)
                         throws java.lang.Throwable
Throws:
java.lang.Throwable

setFieldSpreadSafe

public static void setFieldSpreadSafe(java.lang.Object messageArgument,
                                      java.lang.Class senderClass,
                                      java.lang.Object receiver,
                                      java.lang.String messageName)
                               throws java.lang.Throwable
Throws:
java.lang.Throwable

getGroovyObjectField

public static java.lang.Object getGroovyObjectField(java.lang.Class senderClass,
                                                    GroovyObject receiver,
                                                    java.lang.String messageName)
                                             throws java.lang.Throwable
Throws:
java.lang.Throwable

getGroovyObjectFieldSafe

public static java.lang.Object getGroovyObjectFieldSafe(java.lang.Class senderClass,
                                                        GroovyObject receiver,
                                                        java.lang.String messageName)
                                                 throws java.lang.Throwable
Throws:
java.lang.Throwable

getGroovyObjectFieldSpreadSafe

public static java.lang.Object getGroovyObjectFieldSpreadSafe(java.lang.Class senderClass,
                                                              GroovyObject receiver,
                                                              java.lang.String messageName)
                                                       throws java.lang.Throwable
Throws:
java.lang.Throwable

setGroovyObjectField

public static void setGroovyObjectField(java.lang.Object messageArgument,
                                        java.lang.Class senderClass,
                                        GroovyObject receiver,
                                        java.lang.String messageName)
                                 throws java.lang.Throwable
Throws:
java.lang.Throwable

setGroovyObjectFieldSafe

public static void setGroovyObjectFieldSafe(java.lang.Object messageArgument,
                                            java.lang.Class senderClass,
                                            GroovyObject receiver,
                                            java.lang.String messageName)
                                     throws java.lang.Throwable
Throws:
java.lang.Throwable

setGroovyObjectFieldSpreadSafe

public static void setGroovyObjectFieldSpreadSafe(java.lang.Object messageArgument,
                                                  java.lang.Class senderClass,
                                                  GroovyObject receiver,
                                                  java.lang.String messageName)
                                           throws java.lang.Throwable
Throws:
java.lang.Throwable

getPropertyOnSuper

public static java.lang.Object getPropertyOnSuper(java.lang.Class senderClass,
                                                  GroovyObject receiver,
                                                  java.lang.String messageName)
                                           throws java.lang.Throwable
Throws:
java.lang.Throwable

getPropertyOnSuperSafe

public static java.lang.Object getPropertyOnSuperSafe(java.lang.Class senderClass,
                                                      GroovyObject receiver,
                                                      java.lang.String messageName)
                                               throws java.lang.Throwable
Throws:
java.lang.Throwable

getPropertyOnSuperSpreadSafe

public static java.lang.Object getPropertyOnSuperSpreadSafe(java.lang.Class senderClass,
                                                            GroovyObject receiver,
                                                            java.lang.String messageName)
                                                     throws java.lang.Throwable
Throws:
java.lang.Throwable

setPropertyOnSuper

public static void setPropertyOnSuper(java.lang.Object messageArgument,
                                      java.lang.Class senderClass,
                                      GroovyObject receiver,
                                      java.lang.String messageName)
                               throws java.lang.Throwable
Throws:
java.lang.Throwable

setPropertyOnSuperSafe

public static void setPropertyOnSuperSafe(java.lang.Object messageArgument,
                                          java.lang.Class senderClass,
                                          GroovyObject receiver,
                                          java.lang.String messageName)
                                   throws java.lang.Throwable
Throws:
java.lang.Throwable

setPropertyOnSuperSpreadSafe

public static void setPropertyOnSuperSpreadSafe(java.lang.Object messageArgument,
                                                java.lang.Class senderClass,
                                                GroovyObject receiver,
                                                java.lang.String messageName)
                                         throws java.lang.Throwable
Throws:
java.lang.Throwable

getProperty

public static java.lang.Object getProperty(java.lang.Class senderClass,
                                           java.lang.Object receiver,
                                           java.lang.String messageName)
                                    throws java.lang.Throwable
Throws:
java.lang.Throwable

getPropertySafe

public static java.lang.Object getPropertySafe(java.lang.Class senderClass,
                                               java.lang.Object receiver,
                                               java.lang.String messageName)
                                        throws java.lang.Throwable
Throws:
java.lang.Throwable

getPropertySpreadSafe

public static java.lang.Object getPropertySpreadSafe(java.lang.Class senderClass,
                                                     java.lang.Object receiver,
                                                     java.lang.String messageName)
                                              throws java.lang.Throwable
Throws:
java.lang.Throwable

setProperty

public static void setProperty(java.lang.Object messageArgument,
                               java.lang.Class senderClass,
                               java.lang.Object receiver,
                               java.lang.String messageName)
                        throws java.lang.Throwable
Throws:
java.lang.Throwable

setPropertySafe

public static void setPropertySafe(java.lang.Object messageArgument,
                                   java.lang.Class senderClass,
                                   java.lang.Object receiver,
                                   java.lang.String messageName)
                            throws java.lang.Throwable
Throws:
java.lang.Throwable

setPropertySpreadSafe

public static void setPropertySpreadSafe(java.lang.Object messageArgument,
                                         java.lang.Class senderClass,
                                         java.lang.Object receiver,
                                         java.lang.String messageName)
                                  throws java.lang.Throwable
Throws:
java.lang.Throwable

getGroovyObjectProperty

public static java.lang.Object getGroovyObjectProperty(java.lang.Class senderClass,
                                                       GroovyObject receiver,
                                                       java.lang.String messageName)
                                                throws java.lang.Throwable
Throws:
java.lang.Throwable

getGroovyObjectPropertySafe

public static java.lang.Object getGroovyObjectPropertySafe(java.lang.Class senderClass,
                                                           GroovyObject receiver,
                                                           java.lang.String messageName)
                                                    throws java.lang.Throwable
Throws:
java.lang.Throwable

getGroovyObjectPropertySpreadSafe

public static java.lang.Object getGroovyObjectPropertySpreadSafe(java.lang.Class senderClass,
                                                                 GroovyObject receiver,
                                                                 java.lang.String messageName)
                                                          throws java.lang.Throwable
Throws:
java.lang.Throwable

setGroovyObjectProperty

public static void setGroovyObjectProperty(java.lang.Object messageArgument,
                                           java.lang.Class senderClass,
                                           GroovyObject receiver,
                                           java.lang.String messageName)
                                    throws java.lang.Throwable
Throws:
java.lang.Throwable

setGroovyObjectPropertySafe

public static void setGroovyObjectPropertySafe(java.lang.Object messageArgument,
                                               java.lang.Class senderClass,
                                               GroovyObject receiver,
                                               java.lang.String messageName)
                                        throws java.lang.Throwable
Throws:
java.lang.Throwable

setGroovyObjectPropertySpreadSafe

public static void setGroovyObjectPropertySpreadSafe(java.lang.Object messageArgument,
                                                     java.lang.Class senderClass,
                                                     GroovyObject receiver,
                                                     java.lang.String messageName)
                                              throws java.lang.Throwable
Throws:
java.lang.Throwable

getMethodPointer

public static Closure getMethodPointer(java.lang.Object object,
                                       java.lang.String methodName)
Returns the method pointer for the given object name

Parameters:
object - the object containing the method
methodName - the name of the method of interest
Returns:
the resulting Closure

invokeClosure

public static java.lang.Object invokeClosure(java.lang.Object closure,
                                             java.lang.Object[] arguments)
                                      throws java.lang.Throwable
Throws:
java.lang.Throwable

asType

public static java.lang.Object asType(java.lang.Object object,
                                      java.lang.Class type)
                               throws java.lang.Throwable
Provides a hook for type coercion of the given object to the required type

Parameters:
type - of object to convert the given object to
object - the object to be converted
Returns:
the original object or a new converted value
Throws:
java.lang.Throwable - if the coercion fails

castToType

public static java.lang.Object castToType(java.lang.Object object,
                                          java.lang.Class type)
                                   throws java.lang.Throwable
Provides a hook for type casting of the given object to the required type

Parameters:
type - of object to convert the given object to
object - the object to be converted
Returns:
the original object or a new converted value
Throws:
java.lang.Throwable - if the type casting fails

createTuple

public static Tuple createTuple(java.lang.Object[] array)

createList

public static java.util.List createList(java.lang.Object[] values)

createPojoWrapper

public static Wrapper createPojoWrapper(java.lang.Object val,
                                        java.lang.Class clazz)

createGroovyObjectWrapper

public static Wrapper createGroovyObjectWrapper(GroovyObject val,
                                                java.lang.Class clazz)

createMap

public static java.util.Map createMap(java.lang.Object[] values)

createRange

public static java.util.List createRange(java.lang.Object from,
                                         java.lang.Object to,
                                         boolean inclusive)
                                  throws java.lang.Throwable
Throws:
java.lang.Throwable

assertFailed

public static void assertFailed(java.lang.Object expression,
                                java.lang.Object message)

isCase

public static boolean isCase(java.lang.Object switchValue,
                             java.lang.Object caseExpression)
                      throws java.lang.Throwable
Throws:
java.lang.Throwable

compareIdentical

public static boolean compareIdentical(java.lang.Object left,
                                       java.lang.Object right)

compareNotIdentical

public static boolean compareNotIdentical(java.lang.Object left,
                                          java.lang.Object right)

compareEqual

public static boolean compareEqual(java.lang.Object left,
                                   java.lang.Object right)

compareNotEqual

public static boolean compareNotEqual(java.lang.Object left,
                                      java.lang.Object right)

compareTo

public static java.lang.Integer compareTo(java.lang.Object left,
                                          java.lang.Object right)

compareLessThan

public static boolean compareLessThan(java.lang.Object left,
                                      java.lang.Object right)

compareLessThanEqual

public static boolean compareLessThanEqual(java.lang.Object left,
                                           java.lang.Object right)

compareGreaterThan

public static boolean compareGreaterThan(java.lang.Object left,
                                         java.lang.Object right)

compareGreaterThanEqual

public static boolean compareGreaterThanEqual(java.lang.Object left,
                                              java.lang.Object right)

regexPattern

public static java.util.regex.Pattern regexPattern(java.lang.Object regex)

findRegex

public static java.util.regex.Matcher findRegex(java.lang.Object left,
                                                java.lang.Object right)
                                         throws java.lang.Throwable
Throws:
java.lang.Throwable

matchRegex

public static boolean matchRegex(java.lang.Object left,
                                 java.lang.Object right)

despreadList

public static java.lang.Object[] despreadList(java.lang.Object[] args,
                                              java.lang.Object[] spreads,
                                              int[] positions)

spreadMap

public static java.lang.Object spreadMap(java.lang.Object value)

unaryMinus

public static java.lang.Object unaryMinus(java.lang.Object value)
                                   throws java.lang.Throwable
Throws:
java.lang.Throwable

unaryPlus

public static java.lang.Object unaryPlus(java.lang.Object value)
                                  throws java.lang.Throwable
Throws:
java.lang.Throwable

bitwiseNegate

public static java.lang.Object bitwiseNegate(java.lang.Object value)
                                      throws java.lang.Throwable
Throws:
java.lang.Throwable

initMetaClass

public static MetaClass initMetaClass(java.lang.Object object)