jmathlib.core.functions
Class UserFunction

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

public class UserFunction
extends Function

Class for storing user defines

See Also:
Serialized Form

Field Summary
 
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
UserFunction()
          Creates a user function
 
Method Summary
 boolean equals(java.lang.Object obj)
          Tests if an object is equal to this function if obj is an instance of Function or Function token then it compares the name of obj to the functions name otherwise it calls the superclasses version
 OperandToken evaluate(Token[] operands)
          Executes a user function
 boolean isScript()
          returns true if this is a m-script file
 void setCode(OperandToken _code)
          Sets the parsed code as a token tree
 void setParameterVariables(java.util.ArrayList _parameterVariables)
          Returns the number of parameters of this function
 void setReturnVariables(java.util.ArrayList _returnVariables)
           
 void setScript(boolean _mScriptB)
          set true if this is a m-script file and not a function
 
Methods inherited from class jmathlib.core.functions.Function
debugLine, getLastModified, getName, getNArgIn, getNArgOut, getNoOfLeftHandArguments, getPathAndFileName, setLastModified, setName, setNoOfLeftHandArguments, setPathAndFileName, throwMathLibException
 
Methods inherited from class jmathlib.core.interpreter.RootObject
clone, getContextList, getDebug, getFunctionManager, getGlobalVariables, getGraphicsManager, getInterpreter, getPluginsManager, getVariable, getVariables, getWorkingDirectory, setConstants, setDebug, setWorkingDirectory, toString, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

UserFunction

public UserFunction()
Creates a user function

Method Detail

evaluate

public OperandToken evaluate(Token[] operands)
Executes a user function

Specified by:
evaluate in class Function
Parameters:
operands - - the array of parameters
Returns:
the result of the function as an OperandToken

equals

public boolean equals(java.lang.Object obj)
Tests if an object is equal to this function if obj is an instance of Function or Function token then it compares the name of obj to the functions name otherwise it calls the superclasses version

Overrides:
equals in class Function
Parameters:
obj - = object to test
Returns:
true if the objects are equal

setParameterVariables

public void setParameterVariables(java.util.ArrayList _parameterVariables)
Returns the number of parameters of this function


setReturnVariables

public void setReturnVariables(java.util.ArrayList _returnVariables)

setCode

public void setCode(OperandToken _code)
Sets the parsed code as a token tree

Parameters:
code - = parsed code of this function

setScript

public void setScript(boolean _mScriptB)
set true if this is a m-script file and not a function


isScript

public boolean isScript()
returns true if this is a m-script file