Ejemplo n.º 1
0
        public override DataType staticTypeCheck()
        {
            DataType leftType  = LeftOperand.staticTypeCheck();
            DataType rightType = RightOperand.staticTypeCheck();

            if (leftType == DataType.StringType && rightType == DataType.StringType)
            {
                return(DataType.StringType);
            }

            else if (leftType == DataType.FloatType || rightType == DataType.FloatType)
            {
                return(DataType.FloatType);
            }

            else if (leftType == DataType.IntegerType && rightType == DataType.IntegerType)
            {
                return(DataType.IntegerType);
            }

            Log.Error("Type mismatch", Filename, Line, Position);
            return(DataType.NoneType);
        }