{
[Serializable]
[CLSCompliant (false)]
-#if NET_2_0
[System.Runtime.InteropServices.ComVisible (true)]
-#endif
- public struct UInt16 : IFormattable, IConvertible, IComparable
-#if NET_2_0
- , IComparable<UInt16>, IEquatable <UInt16>
-#endif
+ public struct UInt16 : IFormattable, IConvertible, IComparable, IComparable<UInt16>, IEquatable <UInt16>
{
public const ushort MaxValue = 0xffff;
public const ushort MinValue = 0;
if(!(value is System.UInt16))
throw new ArgumentException (Locale.GetText ("Value is not a System.UInt16."));
- return this.m_value - ((ushort) value);
+ return CompareTo ((ushort) value);
}
public override bool Equals (object obj)
return m_value;
}
-#if NET_2_0
public int CompareTo (ushort value)
{
- if (m_value == value)
- return 0;
- if (m_value > value)
- return 1;
- else
- return -1;
+ return m_value - value;
}
- public bool Equals (ushort value)
+ public bool Equals (ushort obj)
{
- return value == m_value;
+ return obj == m_value;
}
-#endif
-
[CLSCompliant (false)]
public static ushort Parse (string s, IFormatProvider provider)
return Parse (s, NumberStyles.Number, null);
}
-#if NET_2_0
[CLSCompliant(false)]
public static bool TryParse (string s, out ushort result)
{
result = (ushort)tmpResult;
return true;
}
-#endif
public override string ToString ()
{
- return new NumberFormatter(null, m_value).FormatDecimal(-1, null);
+ return NumberFormatter.NumberToString (m_value, null);
}
public string ToString (IFormatProvider provider)
{
- NumberFormatInfo nfi = NumberFormatInfo.GetInstance (provider);
- return new NumberFormatter(null, m_value).FormatDecimal(-1, nfi);
+ return NumberFormatter.NumberToString (m_value, provider);
}
public string ToString (string format)
public string ToString (string format, IFormatProvider provider)
{
- NumberFormatInfo nfi = NumberFormatInfo.GetInstance (provider);
- return NumberFormatter.NumberToString (format, m_value, nfi);
+ return NumberFormatter.NumberToString (format, m_value, provider);
}
// =========== IConvertible Methods =========== //
return System.Convert.ToSingle (m_value);
}
- object IConvertible.ToType (Type conversionType, IFormatProvider provider)
+ object IConvertible.ToType (Type targetType, IFormatProvider provider)
{
- return System.Convert.ToType (m_value, conversionType, provider);
+ if (targetType == null)
+ throw new ArgumentNullException ("targetType");
+
+ return System.Convert.ToType (m_value, targetType, provider, false);
}
ushort IConvertible.ToUInt16 (IFormatProvider provider)