Package com.singularsys.jep.functions
Class Sum
- java.lang.Object
-
- com.singularsys.jep.functions.PostfixMathCommand
-
- com.singularsys.jep.functions.Sum
-
- All Implemented Interfaces:
PostfixMathCommandI
,java.io.Serializable
public class Sum extends PostfixMathCommand
Adds it argumentssum(1,2,3,4,5)
will be 15. Note does not expand array in its arguments sosum([1,2],[3,4])
is[4,6]
rather than 10.This class serves mainly as an example of a function that accepts any number of parameters. Note that the numberOfParameters is initialized to -1.
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected static Add
addFun
Function used to add pairs of items.-
Fields inherited from class com.singularsys.jep.functions.PostfixMathCommand
curNumberOfParameters, name, NaN, numberOfParameters
-
-
Constructor Summary
Constructors Constructor Description Sum()
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
checkNumberOfParameters(int n)
Must have one or more parametervoid
run(java.util.Stack<java.lang.Object> stack)
Calculates the result of summing up all parameters.-
Methods inherited from class com.singularsys.jep.functions.PostfixMathCommand
asArray, asBool, asDouble, asInt, asLong, asStrictInt, asString, getName, getNumberOfParameters, setCurNumberOfParameters, setName, toString, toString
-
-
-
-
Field Detail
-
addFun
protected static Add addFun
Function used to add pairs of items.
-
-
Method Detail
-
checkNumberOfParameters
public boolean checkNumberOfParameters(int n)
Must have one or more parameter- Specified by:
checkNumberOfParameters
in interfacePostfixMathCommandI
- Overrides:
checkNumberOfParameters
in classPostfixMathCommand
- Parameters:
n
- number of parameters function will be called with.- Returns:
- false if an illegal number of parameters is supplied, true otherwise.
-
run
public void run(java.util.Stack<java.lang.Object> stack) throws EvaluationException
Calculates the result of summing up all parameters.- Specified by:
run
in interfacePostfixMathCommandI
- Overrides:
run
in classPostfixMathCommand
- Parameters:
stack
- arguments for function- Throws:
EvaluationException
- if function cannot be evaluated
-
-