private static bool op_LessThanOrEqual(object lhs, TypeCode lhsTypeCode,
object rhs, TypeCode rhsTypeCode)
{
IConvertible lhsConvertible = (IConvertible)lhs;
IConvertible rhsConvertible = (IConvertible)rhs;
switch (GetConvertTypeCode(lhsTypeCode, rhsTypeCode))
{
case TypeCode.Decimal:
return lhsConvertible.ToDecimal(null) <= rhsConvertible.ToDecimal(null);
case TypeCode.Double:
return lhsConvertible.ToDouble(null) <= rhsConvertible.ToDouble(null);
case TypeCode.Single:
return lhsConvertible.ToSingle(null) <= rhsConvertible.ToSingle(null);
case TypeCode.UInt64:
return lhsConvertible.ToUInt64(null) <= rhsConvertible.ToUInt64(null);
case TypeCode.Int64:
return lhsConvertible.ToInt64(null) <= rhsConvertible.ToInt64(null);
case TypeCode.UInt32:
return lhsConvertible.ToUInt32(null) <= rhsConvertible.ToUInt32(null);
default:
return lhsConvertible.ToInt32(null) <= rhsConvertible.ToInt32(null);
}
}