Class NullWrappedIf

java.lang.Object
com.singularsys.jep.functions.PostfixMathCommand
com.singularsys.jep.functions.If
com.singularsys.jep.misc.nullwrapper.functions.NullWrappedIf
All Implemented Interfaces:
CallbackEvaluationI, NullWrappedFunctionI, PostfixMathCommandI, Serializable

public class NullWrappedIf extends If implements NullWrappedFunctionI
NullWrapped version of the if function. If the first argument is null then null is returned otherwise results are the same as the standard if function.
Since:
3.4
Author:
Richard Morris
See Also:
  • Constructor Details

    • NullWrappedIf

      public NullWrappedIf()
    • NullWrappedIf

      public NullWrappedIf(Object falseValue)
      Parameters:
      falseValue -
  • Method Details

    • getRoot

      public PostfixMathCommandI getRoot()
      Description copied from interface: NullWrappedFunctionI
      Get to function which this function wraps.
      Specified by:
      getRoot in interface NullWrappedFunctionI
      Returns:
      the root function, may be "this".
    • evaluate

      public Object evaluate(Node node, Evaluator pv) throws EvaluationException
      Description copied from interface: CallbackEvaluationI
      Performs some special evaluation on the node. This method has the responsibility for evaluating the children of the node, and it should generally call
       pv.eval(node.jjtGetChild(i))   
       
      for each child. The SymbolTable is not passed as an argument. This is because it is better practice to get and set variable values by using node.getVar().setValue() rather that through the SymbolTable with requires a hashtable lookup.
      Specified by:
      evaluate in interface CallbackEvaluationI
      Overrides:
      evaluate in class If
      Parameters:
      node - The current node
      pv - The visitor, can be used evaluate the children
      Returns:
      the value after evaluation. This value will be passed to other functions higher up the node tree. The value can be any type including Double or Vector<Object>
      Throws:
      EvaluationException - if the calculation cannot be performed
      See Also: