Class AbstractUnaryOperator

  • All Implemented Interfaces:
    LazyOperator, Operator
    Direct Known Subclasses:
    Expression.UnaryOperator

    public abstract class AbstractUnaryOperator
    extends AbstractOperator
    Abstract implementation of an unary operator.

    This abstract implementation implements eval so that it forwards its first parameter to evalUnary.
    • Constructor Detail

      • AbstractUnaryOperator

        protected AbstractUnaryOperator​(java.lang.String oper,
                                        int precedence,
                                        boolean leftAssoc)
        Creates a new operator.
        Parameters:
        oper - The operator name (pattern).
        precedence - The operators precedence.
        leftAssoc - true if the operator is left associative, else false.
    • Method Detail

      • eval

        public java.lang.Number eval​(java.lang.Number v1,
                                     java.lang.Number v2)
        Description copied from interface: Operator
        Implementation for this operator.
        Parameters:
        v1 - Operand 1.
        v2 - Operand 2.
        Returns:
        The result of the operation.
      • evalUnary

        public abstract java.lang.Number evalUnary​(java.lang.Number v1)
        Implementation of this unary operator.
        Parameters:
        v1 - The parameter.
        Returns:
        The result of the operation.