// (C) Ximian, Inc. http://www.ximian.com
//
-namespace System {
-
- public interface IConvertible {
+//
+// Functions Implementing this interface should check out
+// System.Convert. Most of these methods are implemented
+// there for all these data types.
+//
+// System.Convert has ToType helper method for the object
+// ToType (Type conversionType, IFormatProvider provider)
+// method. In most cases you can specify your ToType function
+// as calling
+//
+// public Type value; // value of this data type
+// public object ToType(Type conversionType, IFormatProvider provider) {
+// Convert.ToType (value, conversionType, provider);
+// }
+//
+// Which is just a wrapper for your ToType methods.
+//
+// See http://lists.ximian.com/archives/public/mono-list/2001-July/000525.html
+// for more discussion on the topic
+//
- TypeCode GetTypeCode ();
+namespace System {
- bool ToBoolean (IFormatProvider provider);
- byte ToByte (IFormatProvider provider);
- char ToChar (IFormatProvider provider);
- DateTime ToDateType (IFormatProvider provider);
- Decimal ToDecimal (IFormatProvider provider);
- Double ToDouble (IFormatProvider provider);
- Int16 ToInt16 (IFormatProvider provider);
- Int32 ToInt32 (IFormatProvider provider);
- Int32 ToInt64 (IFormatProvider provider);
- SByte ToSByte (IFormatProvider provider);
- float ToSingle (IFormatProvider provider);
- string ToString (IFormatProvider provider);
- object ToType (Type conversionType, IFormatProvider provider);
- UInt16 ToUInt16 (IFormatProvider provider);
- UInt32 ToUInt32 (IFormatProvider provider);
- UInt32 ToUInt64 (IFormatProvider provider);
- }
+ [CLSCompliant(false)]
+ public interface IConvertible {
+
+ TypeCode GetTypeCode ();
+
+ bool ToBoolean (IFormatProvider provider);
+ byte ToByte (IFormatProvider provider);
+ char ToChar (IFormatProvider provider);
+ DateTime ToDateTime (IFormatProvider provider);
+ decimal ToDecimal (IFormatProvider provider);
+ double ToDouble (IFormatProvider provider);
+ short ToInt16 (IFormatProvider provider);
+ int ToInt32 (IFormatProvider provider);
+ long ToInt64 (IFormatProvider provider);
+ sbyte ToSByte (IFormatProvider provider);
+ float ToSingle (IFormatProvider provider);
+ string ToString (IFormatProvider provider);
+ object ToType (Type conversionType, IFormatProvider provider);
+ ushort ToUInt16 (IFormatProvider provider);
+ uint ToUInt32 (IFormatProvider provider);
+ ulong ToUInt64 (IFormatProvider provider);
+ }
}