|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object sleep.engine.ObjectUtilities
public class ObjectUtilities
This class is sort of the center of the HOES universe containing several methods for mapping between Sleep and Java and resolving which mappings make sense.
Field Summary | |
---|---|
static int |
ARG_MATCH_MAYBE
when looking for a Java method that matches the sleep args, we save the maybes and use them as a last resort if no yes match is found |
static int |
ARG_MATCH_NO
when looking for a Java method that matches the sleep args, we immediately drop all of the no answers. |
static int |
ARG_MATCH_YES
when looking for a Java method that matches the sleep args, we use a Yes match immediately |
Constructor Summary | |
---|---|
ObjectUtilities()
|
Method Summary | |
---|---|
static java.lang.Object |
buildArgument(java.lang.Class type,
Scalar value,
ScriptInstance script)
marshalls the Sleep value into a Java value of the specified type. |
static java.lang.Object[] |
buildArgumentArray(java.lang.Class[] types,
java.util.Stack arguments,
ScriptInstance script)
populates a Java array with Sleep values marshalled into values of the specified types. |
static java.lang.String |
buildArgumentErrorMessage(java.lang.Class theClass,
java.lang.String method,
java.lang.Class[] expected,
java.lang.Object[] parameters)
utility to create a string representation of an incompatible argument choice |
static Scalar |
BuildScalar(boolean primitives,
java.lang.Object value)
marshalls a Java type into the appropriate Sleep scalar. |
static java.lang.Class |
convertDescriptionToClass(java.lang.String description)
converts the one character class description to the specified Class type, i.e. |
static java.lang.Class |
convertScalarDescriptionToClass(Scalar description)
this function checks if the specified scalar is a Class literal and uses that if it is, otherwise description is converted to a string and the convertDescriptionToClass method is used |
static java.lang.reflect.Constructor |
findConstructor(java.lang.Class theClass,
java.util.Stack arguments)
attempts to find the constructor that is the closest match to the arguments |
static java.lang.reflect.Method |
findMethod(java.lang.Class theClass,
java.lang.String method,
java.util.Stack arguments)
attempts to find the method that is the closest match to the specified arguments |
static java.lang.Class |
getArrayType(Scalar value,
java.lang.Class defaultc)
Determines the primitive type of the specified array. |
static void |
handleExceptionFromJava(java.lang.Throwable ex,
ScriptEnvironment env,
java.lang.String description,
int lineNumber)
Standard method to handle a Java exception from a HOES call. |
static int |
isArgMatch(java.lang.Class[] check,
java.util.Stack arguments)
convienence method to determine wether or not the stack of values is a safe match for the specified method signature |
static int |
isArgMatch(java.lang.Class check,
Scalar scalar)
determined if the specified scalar can be rightfully cast to the specified class |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int ARG_MATCH_YES
public static final int ARG_MATCH_NO
public static final int ARG_MATCH_MAYBE
Constructor Detail |
---|
public ObjectUtilities()
Method Detail |
---|
public static int isArgMatch(java.lang.Class[] check, java.util.Stack arguments)
public static int isArgMatch(java.lang.Class check, Scalar scalar)
public static java.lang.reflect.Method findMethod(java.lang.Class theClass, java.lang.String method, java.util.Stack arguments)
public static java.lang.reflect.Constructor findConstructor(java.lang.Class theClass, java.util.Stack arguments)
public static java.lang.Class convertScalarDescriptionToClass(Scalar description)
public static java.lang.Class convertDescriptionToClass(java.lang.String description)
public static java.lang.Object buildArgument(java.lang.Class type, Scalar value, ScriptInstance script)
public static java.lang.String buildArgumentErrorMessage(java.lang.Class theClass, java.lang.String method, java.lang.Class[] expected, java.lang.Object[] parameters)
public static java.lang.Object[] buildArgumentArray(java.lang.Class[] types, java.util.Stack arguments, ScriptInstance script)
public static Scalar BuildScalar(boolean primitives, java.lang.Object value)
public static java.lang.Class getArrayType(Scalar value, java.lang.Class defaultc)
public static void handleExceptionFromJava(java.lang.Throwable ex, ScriptEnvironment env, java.lang.String description, int lineNumber)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |