Class AbstractOperator

    • Constructor Detail

      • AbstractOperator

        protected AbstractOperator​(java.lang.String oper,
                                   int precedence,
                                   boolean leftAssoc,
                                   boolean booleanOperator,
                                   boolean unaryOperator)
        Creates a new unary operator.
        Parameters:
        oper - The operator name (pattern).
        precedence - The operators precedence.
        leftAssoc - true if the operator is left associative, else false.
        booleanOperator - Whether this operator is boolean.
        unaryOperator - Whether the operator is unary (true) or not (false).
      • AbstractOperator

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

        protected AbstractOperator​(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 Expression.LazyNumber eval​(Expression.LazyNumber v1,
                                          Expression.LazyNumber v2)
        Implementation of this operator supporting either 1 or 2 operands.
        Specified by:
        eval in interface LazyOperator
        Parameters:
        v1 - The first operand expected for the operation.
        v2 - The second operand expected for the operation. For postfix unary operators, v2=null condition was added.
        Returns:
        LazyNumber object. The result of the operation.