Package com.singularsys.jep.bigdecimal
Class BigDecOperatorTable
java.lang.Object
com.singularsys.jep.EmptyOperatorTable
com.singularsys.jep.OperatorTable2
com.singularsys.jep.standard.StandardOperatorTable2
com.singularsys.jep.bigdecimal.BigDecOperatorTable
- All Implemented Interfaces:
FixedPrecisionFunctionI,JepComponent,OperatorTableI,Serializable
A set of operators for using BigDecimal numbers
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.singularsys.jep.OperatorTable2
OperatorTable2.BasicOperators, OperatorTable2.PsudoOperators, OperatorTable2.SpecialOperatorsNested classes/interfaces inherited from class com.singularsys.jep.EmptyOperatorTable
EmptyOperatorTable.OperatorKey -
Constructor Summary
ConstructorsModifierConstructorDescriptionBigDecOperatorTable(OperatorTable2 oldTable, MathContext mc) BigDecOperatorTable(OperatorTable2 oldTable, MathContext mc, int scale) BigDecOperatorTable(MathContext mc, boolean allowStrings) Create an operator table specifying the math context and whether string operations can be usedBigDecOperatorTable(MathContext mc, int scale) BigDecOperatorTable(MathContext mc, int scale, boolean allowStrings) Create an operator table specifying the math context and whether string operations can be usedprotectedBigDecOperatorTable(MathContext mc, int scale, Map<EmptyOperatorTable.OperatorKey, Operator> map) protected -
Method Summary
Modifier and TypeMethodDescriptionintGets the number of decimal places used.voidsetAllowStrings(boolean allowStrings) Sets the allowStrings flag of the operators.protected voidSets the standard set of pfmc's for basic operators.protected voidprotected voidsetBDPfmcs(int scale) voidsetDecimalPlaces(int scale) Set the number of decimal digits used for fixed-point numbersvoidprotected voidSets the standard set of pfmcs for special operator: assignment, dot product, cross product, the list operator and the element-of operator.Create a new version of this OperatorTable.Methods inherited from class com.singularsys.jep.standard.StandardOperatorTable2
setPsudoPfmcsMethods inherited from class com.singularsys.jep.OperatorTable2
getAdd, getAnd, getAssign, getCross, getDivide, getDot, getEle, getEQ, getGE, getGT, getLE, getList, getLT, getMod, getMultiply, getNE, getNop, getNot, getOr, getPower, getRange, getSubtract, getUDivide, getUMinus, getUPlusMethods inherited from class com.singularsys.jep.EmptyOperatorTable
addOperator, addOperator, addOperator, appendOperator, appendOperator, entrySet, getAllOperatorsByName, getKey, getKeys, getLightWeightInstance, getNumOps, getOperator, getOperatorByName, getOperatorMap, getOperators, getOperatorsByName, getOperatorsBySymbol, init, insertOperator, insertOperator, keySet, removeOperator, removeOperator, replaceOperator, replaceOperator, setBinaryInverseOp, setDistributiveOver, setGroupOperatorRelations, setGroupOperatorRelations, setInverseOp, setPrecedenceTable, setRootOp, setStandardOperatorRelations, threadSafeMapCopy, toString
-
Constructor Details
-
BigDecOperatorTable
-
BigDecOperatorTable
- Parameters:
oldTable-
-
BigDecOperatorTable
Create an operator table specifying the math context and whether string operations can be used- Parameters:
mc-allowStrings- whether strings can be used.- Since:
- 3.4.0
-
BigDecOperatorTable
-
BigDecOperatorTable
-
BigDecOperatorTable
- Parameters:
oldTable-
-
BigDecOperatorTable
Create an operator table specifying the math context and whether string operations can be used- Parameters:
mc-allowStrings- whether strings can be used.- Since:
- 3.4.0
-
BigDecOperatorTable
protected BigDecOperatorTable(MathContext mc, int scale, Map<EmptyOperatorTable.OperatorKey, Operator> map)
-
-
Method Details
-
setBasicPfmcs
protected void setBasicPfmcs()Description copied from class:StandardOperatorTable2Sets the standard set of pfmc's for basic operators. This method is called by the constructor and subclasses can override this method to change or prevent building of these pfmcs.- Overrides:
setBasicPfmcsin classStandardOperatorTable2- See Also:
-
setSpecialPfmcs
protected void setSpecialPfmcs()Description copied from class:StandardOperatorTable2Sets the standard set of pfmcs for special operator: assignment, dot product, cross product, the list operator and the element-of operator. This method is called by the constructor and subclasses can override this method to change or prevent building of these pfmcs.- Overrides:
setSpecialPfmcsin classStandardOperatorTable2- See Also:
-
setBDPfmcs
protected void setBDPfmcs() -
setBDPfmcs
protected void setBDPfmcs(int scale) -
getMathContext
-
setMathContext
-
setAllowStrings
public void setAllowStrings(boolean allowStrings) Sets the allowStrings flag of the operators.- Parameters:
allowStrings-- Since:
- 3.4.0
-
shallowCopy
Description copied from class:EmptyOperatorTableCreate a new version of this OperatorTable. Operators are copied into new table. However, Operators whose pfmc implement JepComponent are duplicated. This means the table could be used in a separate thread without problem. Subclasses should override with method to return a table of the correct type, a typical implementation would beusing the@Override public OperatorTableI shallowCopy() { Map<OperatorKey, Operator> map = this.threadSafeMapCopy(); return new MyOperatorTable(map); }EmptyOperatorTable.threadSafeMapCopy()method to return a copy of the map of operators and a constructor taking this map which uses theEmptyOperatorTable(Map)constructor.- Specified by:
shallowCopyin interfaceOperatorTableI- Overrides:
shallowCopyin classStandardOperatorTable2- Returns:
- a new Table
-
setDecimalPlaces
public void setDecimalPlaces(int scale) Set the number of decimal digits used for fixed-point numbers- Specified by:
setDecimalPlacesin interfaceFixedPrecisionFunctionI- Parameters:
scale-
-
getDecimalPlaces
public int getDecimalPlaces()Description copied from interface:FixedPrecisionFunctionIGets the number of decimal places used.- Specified by:
getDecimalPlacesin interfaceFixedPrecisionFunctionI- Returns:
- either zero, a positive number or -1 for floating-point formats
-