2002-08-21 Miguel de Icaza <miguel@ximian.com>
[mono.git] / mcs / class / corlib / System / Char.cs
index 7255faa0e7fba508f432a66f44f546013fd30f3b..58e5dc33ab6b007959447b33e2e86857f7ff2914 100644 (file)
@@ -279,13 +279,9 @@ namespace System {
                        if (str == null)
                                throw new ArgumentNullException (Locale.GetText ("str is a null reference"));
 
-                       int len = str.Length;
-                       if (len != 1){
-                               if (len < 1)
-                                       throw new ArgumentNullException ();
-                               else
-                                       throw new FormatException ();
-                       }
+                       if (str.Length != 1)
+                               throw new FormatException ("string contains more than one character.");
+                       
                        return str [0];
                }
 
@@ -315,64 +311,64 @@ namespace System {
                        return TypeCode.Char;
                }         
 
-               public object ToType (Type conversionType, IFormatProvider provider)
+               object IConvertible.ToType (Type conversionType, IFormatProvider provider)
                {
                        return System.Convert.ToType(value, conversionType, provider);
                }
                
-               public bool ToBoolean (IFormatProvider provider)
+               bool IConvertible.ToBoolean (IFormatProvider provider)
                {
                        throw new InvalidCastException();
                }
                
-               public byte ToByte (IFormatProvider provider)
+               byte IConvertible.ToByte (IFormatProvider provider)
                {
                        return System.Convert.ToByte(value);
                }
                
-               public char ToChar (IFormatProvider provider)
+               char IConvertible.ToChar (IFormatProvider provider)
                {
                        return value;
                }
                
                [CLSCompliant(false)]
-               public DateTime ToDateTime (IFormatProvider provider)
+               DateTime IConvertible.ToDateTime (IFormatProvider provider)
                {
                        throw new InvalidCastException();
                }
                
-               public decimal ToDecimal (IFormatProvider provider)
+               decimal IConvertible.ToDecimal (IFormatProvider provider)
                {
                        throw new InvalidCastException();
                }
                
-               public double ToDouble (IFormatProvider provider)
+               double IConvertible.ToDouble (IFormatProvider provider)
                {
                        throw new InvalidCastException();
                }
                
-               public short ToInt16 (IFormatProvider provider)
+               short IConvertible.ToInt16 (IFormatProvider provider)
                {
                        return System.Convert.ToInt16(value);
                }
                
-               public int ToInt32 (IFormatProvider provider)
+               int IConvertible.ToInt32 (IFormatProvider provider)
                {
                        return System.Convert.ToInt32(value);
                }
                
-               public long ToInt64 (IFormatProvider provider)
+               long IConvertible.ToInt64 (IFormatProvider provider)
                {
                        return System.Convert.ToInt64(value);
                }
                
                [CLSCompliant(false)] 
-               public sbyte ToSByte (IFormatProvider provider)
+               sbyte IConvertible.ToSByte (IFormatProvider provider)
                {
                        return System.Convert.ToSByte(value);
                }
                
-               public float ToSingle (IFormatProvider provider)
+               float IConvertible.ToSingle (IFormatProvider provider)
                {
                        throw new InvalidCastException();
                }
@@ -383,19 +379,19 @@ namespace System {
                }
 
                [CLSCompliant(false)]
-               public ushort ToUInt16 (IFormatProvider provider)
+               ushort IConvertible.ToUInt16 (IFormatProvider provider)
                {
                        return System.Convert.ToUInt16(value);
                }
                
                [CLSCompliant(false)]
-               public uint ToUInt32 (IFormatProvider provider)
+               uint IConvertible.ToUInt32 (IFormatProvider provider)
                {
                        return System.Convert.ToUInt32(value);
                }
                
                [CLSCompliant(false)]
-               public ulong ToUInt64 (IFormatProvider provider)
+               ulong IConvertible.ToUInt64 (IFormatProvider provider)
                {
                        return System.Convert.ToUInt64(value);
                }