Inference/src/TypeSystem/Operations/BinaryArithmeticalOperation.cs
/// <summary>
///  This method returns true if the type expression passed as argumen can be a type expression able to promote to a String if it is combined 
///  with another typeExpression, ussing as operand: + or +=
/// </summary>
/// <param name="tE">tE TypeExpression passed as argument</param>
/// <returns>true if the type expression passed as argumen can be a type expression able to promote to a String if it is combined 
///  with another typeExpression, ussing as operand: + or +=
///  false otherwise.
///  </returns>
This method returns true if the type expression passed as argumen can be a type expression able to promote to a String if it is combined
with another typeExpression, ussing as operand: + or +
This method returns true if the type expression passed as argumen can be a type expression able to promote to a String if it is combined with another typeExpression ussing as operand : + or +
protected bool promotableToStringInAddition(TypeExpression tE) {
            return (int)tE.AcceptOperation(new PromotionLevelOperation(DoubleType.Instance), null) != -1
               || (bool)tE.AcceptOperation(new EquivalentOperation(CharType.Instance), null)
               || (bool)tE.AcceptOperation(new EquivalentOperation(StringType.Instance), null)
               || (bool)tE.AcceptOperation(new EquivalentOperation(NullType.Instance), null);
        }
protected bool promotableToStringInAddition ( TypeExpression tE ) { return ( int ) tE . AcceptOperation ( new PromotionLevelOperation ( DoubleType . Instance ) , null ) != - 1 || ( bool ) tE . AcceptOperation ( new EquivalentOperation ( CharType . Instance ) , null ) || ( bool ) tE . AcceptOperation ( new EquivalentOperation ( StringType . Instance ) , null ) || ( bool ) tE . AcceptOperation ( new EquivalentOperation ( NullType . Instance ) , null ) ; }
This method returns true if the type expression passed as argumen can be a type expression able to promote to a String if it is combined
with another typeExpression, ussing as operand: + or +
This method returns true if the type expression passed as argumen can be a type expression able to promote to a String if it is combined with another typeExpression ussing as operand : + or +
true if the type expression passed as argumen can be a type expression able to promote to a String if it is combined
with another typeExpression, ussing as operand: + or +
false otherwise.
true if the type expression passed as argumen can be a type expression able to promote to a String if it is combined with another typeExpression ussing as operand : + or + false otherwise .
tE
TypeExpression
tE TypeExpression passed as argument
tE TypeExpression passed as argument