Class ArithmeticExpression

  • All Implemented Interfaces:
    Expression

    public abstract class ArithmeticExpression
    extends BinaryExpression
    An expression which performs an operation on two expression values.
    Version:
    $Revision: 1.2 $
    • Method Detail

      • createPlus

        public static Expression createPlus​(Expression left,
                                            Expression right)
        Creates plus expression.
        Parameters:
        left - left
        right - right
        Returns:
        expression
      • createMinus

        public static Expression createMinus​(Expression left,
                                             Expression right)
        Creates minus expression.
        Parameters:
        left - left
        right - right
        Returns:
        expression
      • createMultiply

        public static Expression createMultiply​(Expression left,
                                                Expression right)
        Creates multiply expression.
        Parameters:
        left - left
        right - right
        Returns:
        expression
      • createDivide

        public static Expression createDivide​(Expression left,
                                              Expression right)
        Creates divide expression.
        Parameters:
        left - left
        right - right
        Returns:
        expression
      • createMod

        public static Expression createMod​(Expression left,
                                           Expression right)
        Creates mod expression.
        Parameters:
        left - left
        right - right
        Returns:
        expression
      • plus

        protected Number plus​(Number left,
                              Number right)
        Calculates plus.
        Parameters:
        left - left
        right - right
        Returns:
        result
      • minus

        protected Number minus​(Number left,
                               Number right)
        Calculates minus.
        Parameters:
        left - left
        right - right
        Returns:
        result
      • multiply

        protected Number multiply​(Number left,
                                  Number right)
        Calculates multiply.
        Parameters:
        left - left
        right - right
        Returns:
        result
      • divide

        protected Number divide​(Number left,
                                Number right)
        Calculates divide.
        Parameters:
        left - left
        right - right
        Returns:
        result
      • mod

        protected Number mod​(Number left,
                             Number right)
        Calculates mod.
        Parameters:
        left - left
        right - right
        Returns:
        result
      • asNumber

        protected Number asNumber​(Object value)
        Conerts to Number.
        Parameters:
        value - value
        Returns:
        result
      • evaluate

        protected abstract io.atlasmap.v2.Field evaluate​(io.atlasmap.v2.Field lvalue,
                                                         io.atlasmap.v2.Field rvalue)
        Evaluates the expression.
        Parameters:
        lvalue - Field represents left value
        rvalue - Field represents right value
        Returns:
        Field represents a result