jmathlib.core.functions
Class ReflectionFunctionCall

java.lang.Object
  extended by jmathlib.core.interpreter.RootObject
      extended by jmathlib.core.functions.Function
          extended by jmathlib.core.functions.ExternalFunction
              extended by jmathlib.core.functions.ReflectionFunctionCall
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, ErrorCodes, TokenConstants

public class ReflectionFunctionCall
extends ExternalFunction

Class for call a function from an external class using reflection

See Also:
Serialized Form

Field Summary
private  java.lang.Class externalClass
           
 
Fields inherited from class jmathlib.core.functions.ExternalFunction
IMAG, REAL
 
Fields inherited from class jmathlib.core.functions.Function
lastModified, name, pathAndFileName
 
Fields inherited from interface jmathlib.core.constants.ErrorCodes
ERR_BRACKET_OPEN, ERR_BRACKET_ORDER, ERR_FUNCTION_NOT_FOUND, ERR_FUNCTION_NOT_IMPLEMENTED, ERR_INSUFFICIENT_PARAMETERS, ERR_INVALID_PARAMETER, ERR_LVALUE_REQUIRED, ERR_MATRIX_SINGULAR, ERR_NOT_SQUARE_MATRIX, ERR_OPNOTSUPPORTED, ERR_TOO_MANY_PARAMETERS, ERR_USER_ERROR, ERR_VARIABLE_NOTDEFINED, OK, OK_FUNCTION_PROCESS
 
Fields inherited from interface jmathlib.core.constants.TokenConstants
ADDSUB_PRIORITY, AND_PRIORITY, ANDAND_PRIORITY, ASSIGN_PRIORITY, BRACKET_PRIORITY, COMPARE_PRIORITY, CONCAT, MATRIX, MULDIV_PRIORITY, OR_PRIORITY, OROR_PRIORITY, PARAMETER, POWER_PRIORITY, RELATION_PRIORITY, SINGLE, ttDelimiter, ttNotSet, ttOperand, ttOperator
 
Constructor Summary
ReflectionFunctionCall(java.lang.Class _externalClass, java.lang.String functionName)
          creates a reflection function call containing the class being called
 
Method Summary
 OperandToken evaluate(Token[] operands, GlobalValues globals)
          Executes the function
private  void evaluateMethod(java.lang.reflect.Method calledMethod)
           
 java.lang.String toString()
           
 
Methods inherited from class jmathlib.core.functions.ExternalFunction
getParamCount
 
Methods inherited from class jmathlib.core.functions.Function
debugLine, equals, getLastModified, getName, getNArgIn, getNArgOut, getNoOfLeftHandArguments, getPathAndFileName, setLastModified, setName, setNoOfLeftHandArguments, setPathAndFileName, throwMathLibException
 
Methods inherited from class jmathlib.core.interpreter.RootObject
clone, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

externalClass

private java.lang.Class externalClass
Constructor Detail

ReflectionFunctionCall

public ReflectionFunctionCall(java.lang.Class _externalClass,
                              java.lang.String functionName)
creates a reflection function call containing the class being called

Method Detail

evaluate

public OperandToken evaluate(Token[] operands,
                             GlobalValues globals)
Description copied from class: Function
Executes the function

Specified by:
evaluate in class Function
Parameters:
operands - - an array of the functions paramaters
globals - TODO
Returns:
the result as an OperandToken

evaluateMethod

private void evaluateMethod(java.lang.reflect.Method calledMethod)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

FOOTER

BOTTOM