Package org.lemsml.jlems.core.expression
Class FunctionNode
- java.lang.Object
-
- org.lemsml.jlems.core.expression.Node
-
- org.lemsml.jlems.core.expression.AbstractUnaryNode
-
- org.lemsml.jlems.core.expression.FunctionNode
-
- All Implemented Interfaces:
DoubleParseTreeNode,ParseTreeNode
public class FunctionNode extends AbstractUnaryNode implements DoubleParseTreeNode
-
-
Field Summary
Fields Modifier and Type Field Description (package private) DoubleParseTreeNodeargEvaluable(package private) GroupNodeargs(package private) java.lang.Stringfname-
Fields inherited from class org.lemsml.jlems.core.expression.AbstractUnaryNode
right
-
-
Constructor Summary
Constructors Constructor Description FunctionNode(java.lang.String sf)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description doublecall(double arg)private voidcheckArg()voidclaim()voiddoVisit(ExpressionVisitor ev)static doubleevaluate(double arg, java.lang.String fname)DimensionalevaluateDimensional(java.util.HashMap<java.lang.String,Dimensional> dhm)DimensionalgetDimensionality(java.util.HashMap<java.lang.String,Dimensional> dimHM)AbstractDValmakeEvaluable(java.util.HashMap<java.lang.String,java.lang.Double> fixedHM)voidreplaceChild(Node nold, Node nnew)voidsubstituteVariables(java.util.HashMap<java.lang.String,java.lang.String> varHM)java.lang.StringtoExpression()java.lang.StringtoString()-
Methods inherited from class org.lemsml.jlems.core.expression.AbstractUnaryNode
claimRight, replaceSymbols
-
Methods inherited from class org.lemsml.jlems.core.expression.Node
deparent, detachNext, detachPrevious, dispose, isClose, isOpen, linkNext, next, parent, previous, remove, replaceNext, replacePrevious, replaceWith, setParent, siblingsToString
-
-
-
-
Field Detail
-
fname
java.lang.String fname
-
args
GroupNode args
-
argEvaluable
DoubleParseTreeNode argEvaluable
-
-
Method Detail
-
toExpression
public java.lang.String toExpression() throws ContentError- Specified by:
toExpressionin interfaceDoubleParseTreeNode- Specified by:
toExpressionin interfaceParseTreeNode- Throws:
ContentError
-
claim
public void claim() throws ParseError- Overrides:
claimin classAbstractUnaryNode- Throws:
ParseError
-
replaceChild
public void replaceChild(Node nold, Node nnew) throws ParseError
- Overrides:
replaceChildin classNode- Throws:
ParseError
-
call
public double call(double arg)
-
evaluate
public static double evaluate(double arg, java.lang.String fname)
-
checkArg
private void checkArg() throws ContentError- Throws:
ContentError
-
makeEvaluable
public AbstractDVal makeEvaluable(java.util.HashMap<java.lang.String,java.lang.Double> fixedHM) throws ContentError
- Specified by:
makeEvaluablein interfaceDoubleParseTreeNode- Throws:
ContentError
-
getDimensionality
public Dimensional getDimensionality(java.util.HashMap<java.lang.String,Dimensional> dimHM) throws ContentError
- Specified by:
getDimensionalityin interfaceParseTreeNode- Throws:
ContentError
-
evaluateDimensional
public Dimensional evaluateDimensional(java.util.HashMap<java.lang.String,Dimensional> dhm) throws ContentError
- Specified by:
evaluateDimensionalin interfaceParseTreeNode- Throws:
ContentError
-
substituteVariables
public void substituteVariables(java.util.HashMap<java.lang.String,java.lang.String> varHM) throws ContentError- Specified by:
substituteVariablesin interfaceParseTreeNode- Throws:
ContentError
-
doVisit
public void doVisit(ExpressionVisitor ev) throws ContentError
- Specified by:
doVisitin interfaceParseTreeNode- Throws:
ContentError
-
-