Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'mcs/class/corlib/System/Single.cs')
-rw-r--r--mcs/class/corlib/System/Single.cs200
1 files changed, 200 insertions, 0 deletions
diff --git a/mcs/class/corlib/System/Single.cs b/mcs/class/corlib/System/Single.cs
new file mode 100644
index 00000000000..81e5159d52c
--- /dev/null
+++ b/mcs/class/corlib/System/Single.cs
@@ -0,0 +1,200 @@
+//
+// System.Single.cs
+//
+// Author:
+// Miguel de Icaza (miguel@ximian.com)
+//
+// (C) Ximian, Inc. http://www.ximian.com
+//
+
+using System.Globalization;
+
+namespace System {
+
+ public struct Single : IComparable, IFormattable, IConvertible {
+ public const float Epsilon = 1.4e-45f;
+ public const float MaxValue = 3.40282346638528859e38f;
+ public const float MinValue = -3.40282346638528859e38f;
+ public const float NaN = 0.0f / 0.0f;
+ public const float PositiveInfinity = 1.0f / 0.0f;
+ public const float NegativeInfinity = -1.0f / 0.0f;
+
+ // VES needs to know about value. public is workaround
+ // so source will compile
+ public float value;
+
+ public int CompareTo (object v)
+ {
+ if (v == null)
+ return 1;
+
+ if (!(v is System.Single))
+ throw new ArgumentException (Locale.GetText ("Value is not a System.Single"));
+
+ return (int) (value - ((float) v));
+ }
+
+ public override bool Equals (object o)
+ {
+ if (!(o is System.Single))
+ return false;
+
+ return ((float) o) == value;
+ }
+
+ public override int GetHashCode ()
+ {
+ return (int) value;
+ }
+
+ public static bool IsInfinity (float f)
+ {
+ return (f == PositiveInfinity || f == NegativeInfinity);
+ }
+
+ public static bool IsNaN (float f)
+ {
+ return (f != f);
+ }
+
+ public static bool IsNegativeInfinity (float f)
+ {
+ return (f < 0.0f && (f == NegativeInfinity || f == PositiveInfinity));
+ }
+
+ public static bool IsPositiveInfinity (float f)
+ {
+ return (f > 0.0f && (f == NegativeInfinity || f == PositiveInfinity));
+ }
+
+ public static float Parse (string s)
+ {
+ return Parse (s, (NumberStyles.Float | NumberStyles.AllowThousands), null);
+ }
+
+ public static float Parse (string s, IFormatProvider fp)
+ {
+ return Parse (s, (NumberStyles.Float | NumberStyles.AllowThousands), fp);
+ }
+
+ public static float Parse (string s, NumberStyles style)
+ {
+ return Parse (s, style, null);
+ }
+
+ [MonoTODO]
+ public static float Parse (string s, NumberStyles style, IFormatProvider fp)
+ {
+ // TODO: Implement me
+ throw new NotImplementedException ();
+ }
+
+ public override string ToString ()
+ {
+ return ToString (null, null);
+ }
+
+ public string ToString (IFormatProvider fp)
+ {
+ return ToString (null, fp);
+ }
+
+ public string ToString (string format)
+ {
+ return ToString (format, null);
+ }
+
+ [MonoTODO]
+ public string ToString (string format, IFormatProvider fp)
+ {
+ // TODO: Implement me.
+ throw new NotImplementedException ();
+ }
+
+ // ============= IConvertible Methods ============ //
+
+ public TypeCode GetTypeCode ()
+ {
+ return TypeCode.Single;
+ }
+
+ public bool ToBoolean (IFormatProvider provider)
+ {
+ return System.Convert.ToBoolean (value);
+ }
+
+ public byte ToByte (IFormatProvider provider)
+ {
+ return System.Convert.ToByte (value);
+ }
+
+ public char ToChar (IFormatProvider provider)
+ {
+ return System.Convert.ToChar (value);
+ }
+
+ public DateTime ToDateTime (IFormatProvider provider)
+ {
+ return System.Convert.ToDateTime (value);
+ }
+
+ public decimal ToDecimal (IFormatProvider provider)
+ {
+ return System.Convert.ToDecimal (value);
+ }
+
+ public double ToDouble (IFormatProvider provider)
+ {
+ return System.Convert.ToDouble (value);
+ }
+
+ public short ToInt16 (IFormatProvider provider)
+ {
+ return System.Convert.ToInt16 (value);
+ }
+
+ public int ToInt32 (IFormatProvider provider)
+ {
+ return System.Convert.ToInt32 (value);
+ }
+
+ public long ToInt64 (IFormatProvider provider)
+ {
+ return System.Convert.ToInt64 (value);
+ }
+
+ [CLSCompliant (false)]
+ public sbyte ToSByte (IFormatProvider provider)
+ {
+ return System.Convert.ToSByte (value);
+ }
+
+ public float ToSingle (IFormatProvider provider)
+ {
+ return System.Convert.ToSingle (value);
+ }
+
+ public object ToType (Type conversionType, IFormatProvider provider)
+ {
+ return System.Convert.ToType (value, conversionType, provider);
+ }
+
+ [CLSCompliant (false)]
+ public ushort ToUInt16 (IFormatProvider provider)
+ {
+ return System.Convert.ToUInt16 (value);
+ }
+
+ [CLSCompliant (false)]
+ public uint ToUInt32 (IFormatProvider provider)
+ {
+ return System.Convert.ToUInt32 (value);
+ }
+
+ [CLSCompliant (false)]
+ public ulong ToUInt64 (IFormatProvider provider)
+ {
+ return System.Convert.ToUInt64 (value);
+ }
+ }
+}