<Type Name="Enum" FullName="System.Enum" FullNameSP="System_Enum" Maintainer="ecma">
  <TypeSignature Language="ILASM" Value=".class public abstract serializable Enum extends System.ValueType implements System.IComparable, System.IFormattable" />
  <TypeSignature Language="C#" Value="public abstract class Enum : ValueType, IComparable, IConvertible, IFormattable" />
  <MemberOfLibrary>BCL</MemberOfLibrary>
  <AssemblyInfo>
    <AssemblyName>mscorlib</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ]</AssemblyPublicKey>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.ValueType</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>System.IComparable</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>System.IConvertible</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>System.IFormattable</InterfaceName>
    </Interface>
  </Interfaces>
  <Docs>
    <summary>
      <para>Provides support for all enumeration types. Serves as
      the base
      class for all enumeration types.</para>
    </summary>
    <remarks>
      <para> A <see cref="T:System.Enum" /> is a distinct type
   with named constant members. Each enumeration type has a corresponding integral
   type called the <paramref name="underlying type" /> of the enumeration
   type.
   
   This underlying type is required
   to be a system-supplied integer type that is large enough to represent all values
   defined in the enumeration; the field that holds the underlying type must be called <see langword="value__" />. A <see cref="T:System.Enum" /> declaration is allowed to
   explicitly declare any integral type other
   than <see cref="T:System.Char" />
   as an underlying type. This includes <see cref="T:System.Byte" />, <see cref="T:System.SByte" />, <see cref="T:System.Int16" />, <see cref="T:System.Int32" />, <see cref="T:System.Int64" />, <see cref="T:System.UInt16" />, <see cref="T:System.UInt32" />, and <see cref="T:System.UInt64" />. A <see cref="T:System.Enum" /> declaration that does not explicitly declare an
   underlying type has an underlying type of <see cref="T:System.Int32" />
   
   .</para>
      <para>
        <see cref="T:System.Enum" /> derives from <see cref="T:System.ValueType" /> but is not a value type.
Programming languages typically provide syntax to declare sets of a specified
enumeration type consisting of named constants and their values.</para>
      <para>It is possible to treat instances of a <see cref="T:System.Enum" /> as bit fields containing multiple values. For more information, see <see cref="T:System.FlagsAttribute" /> 
.</para>
      <para>
        <block subset="none" type="note">
          <see cref="T:System.Enum" /> provides
methods to compare instances of enumeration types, convert the value of an
instance to its <see cref="T:System.String" /> representation, convert the <see cref="T:System.String" /> representation of
a number to an instance of the enumeration type, and create an instance of a
specified enumeration and value.</block>
      </para>
    </remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected Enum ();" />
      <MemberType>Constructor</MemberType>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="CompareTo">
      <MemberSignature Language="ILASM" Value=".method public final hidebysig virtual int32 CompareTo(object target)" />
      <MemberSignature Language="C#" Value="public int CompareTo (object target);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="target" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="target">An object to compare the current instance to.</param>
        <summary>
          <para> Returns the sort order of the current instance compared
      to the specified <see cref="T:System.Object" />.</para>
        </summary>
        <returns>
          <para>The return value is a negative number, zero, or a positive number reflecting the sort order of the current instance as compared to <paramref name="target" />. For non-zero return values, the exact value returned by this method is unspecified. The following table defines the return value:</para>
          <list type="table">
            <listheader>
              <term>Return Value</term>
              <description>Description</description>
            </listheader>
            <item>
              <term> 
         A negative
         integer</term>
              <description>The value of the current instance is less than
         the value of <paramref name="target" />.</description>
            </item>
            <item>
              <term> Zero</term>
              <description>The value of the current instance is equal to the
         value of <paramref name="target" />.</description>
            </item>
            <item>
              <term> Any
         positive integer</term>
              <description>The value of the current instance is greater than the
         value of <paramref name="target" />, or <paramref name="target" /> is
      <see langword="null" />.</description>
            </item>
          </list>
        </returns>
        <remarks>
          <para>
            <block subset="none" type="note"> This method is
      implemented to support the <see cref="T:System.IComparable" />
      interface.</block>
          </para>
        </remarks>
        <exception cref="T:System.ArgumentException">
          <paramref name="target" /> and the current instance are not of the same enumeration type.</exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Equals">
      <MemberSignature Language="ILASM" Value=".method public hidebysig virtual bool Equals(object obj)" />
      <MemberSignature Language="C#" Value="public override bool Equals (object obj);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="obj" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="obj">An object to compare the current instance to.</param>
        <param name="obj">To be added.</param>
        <summary>
          <para>Determines whether the current instance and the specified
   <see cref="T:System.Object" /> represent the same type and
      value.</para>
        </summary>
        <returns>
          <para>
            <see langword="true" /> if <paramref name="obj" /> is of the same
   enumeration type and represents the same value as the current instance;
   otherwise, <see langword="false" />.</para>
        </returns>
        <remarks>
          <para>
            <block subset="none" type="note"> This method
      overrides <see cref="M:System.Object.Equals(System.Object)" />.</block>
          </para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Format">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static string Format(class System.Type enumType, object value, string format)" />
      <MemberSignature Language="C#" Value="public static string Format (Type enumType, object value, string format);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.Object" />
        <Parameter Name="format" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="enumType">A <see cref="T:System.Type" /> that specifies the type of the enumeration of which <paramref name="value" /> is a member. </param>
        <param name="value">The enumeration element to be converted. </param>
        <param name="format">A <see cref="T:System.String" /> that specifies the output format to use. </param>
        <param name="value">To be added.</param>
        <param name="format">To be added.</param>
        <summary>
          <para> Converts the specified element of the specified
      enumeration type to its <see cref="T:System.String" />
      representation using the specified format. </para>
        </summary>
        <returns>
          <para> The <see cref="T:System.String" /> representation of the value of the enumeration
   element. </para>
        </returns>
        <remarks>
          <para> For cross-platform portability, the only valid values for
   <paramref name="format" /> are:
      </para>
          <list type="table">
            <listheader>
              <term> Format</term>
              <description> Description</description>
            </listheader>
            <item>
              <term> "G" or "g"</term>
              <description>
                <para> If value is equal to a defined value of
            <paramref name="enumType" />
            , returns the element name defined for value. If the <see cref="T:System.FlagsAttribute" />
            attribute is set on the <see cref="T:System.Enum" /> declaration and <paramref name="value" /> is
            a built-in integer type and is equal to a summation of
            enumeration elements, the return value contains the element names in an
            unspecified order, separated by commas (e.g. "Red, Yellow").
            Otherwise, <paramref name="value" /> is returned in
            
            decimal format.</para>
              </description>
            </item>
            <item>
              <term> "X" or "x"</term>
              <description> Returns <paramref name="value" />
      in hexadecimal format, without a leading 0x. The value is padded
      with leading zeroes to ensure the returned value is
      at least eight digits in length.</description>
            </item>
            <item>
              <term> "F" or "f"</term>
              <description>Behaves identically to "G", except the
   <see langword="FlagsAttribute" /> is not required to be present
      on the <see cref="T:System.Enum" />
      declaration.</description>
            </item>
            <item>
              <term> "D" or "d"</term>
              <description> Returns <paramref name="value" /> in decimal
   format with no leading zeroes.</description>
            </item>
          </list>
        </remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" />, <paramref name="value" /> or <paramref name="format" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Enum" />.</para>
          <para> -or-</para>
          <para>
            <paramref name="value" /> is neither of type <paramref name="enumType" /> nor does it have the same underlying type as <paramref name="enumType" />.</para>
        </exception>
        <exception cref="T:System.FormatException">
          <paramref name="format" /> contains an invalid value. </exception>
        <example>
          <para>The following example demonstrates formatting enumeration values.</para>
          <code lang="C#">using System;
public enum Signs {
  Stop = 1,
  Yield = 2,
  Merge = 4
};
[Flags]
public enum Lights {
  Red = 1,
  Yellow = 2,
  Green = 4
};
public class EnumCompTo {
  public static void Main() {
   Console.WriteLine(Signs.Format(typeof(Signs), Signs.Merge, "d"));
   Console.WriteLine(Signs.Format(typeof(Signs), 7, "g"));
   Console.WriteLine(Lights.Format(typeof(Lights), Lights.Yellow, "x"));
   Console.WriteLine(Lights.Format(typeof(Lights), 7, "g"));
  }
}
   </code>
          <para>The output is</para>
          <c>
            <para>4</para>
            <para>7</para>
            <para>00000002</para>
            <para>Red, Yellow, Green</para>
          </c>
        </example>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="GetHashCode">
      <MemberSignature Language="ILASM" Value=".method public hidebysig virtual int32 GetHashCode()" />
      <MemberSignature Language="C#" Value="public override int GetHashCode ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Generates a hash code for the current instance.</para>
        </summary>
        <returns>
          <para>A <see cref="T:System.Int32" /> containing a hash code for the current instance.</para>
        </returns>
        <remarks>
          <para> The algorithm used to
      generate the hash code is unspecified.</para>
          <para>
            <block subset="none" type="note"> This method
      overrides <see cref="M:System.Object.GetHashCode" />.</block>
          </para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetName">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static string GetName(class System.Type enumType, object value)" />
      <MemberSignature Language="C#" Value="public static string GetName (Type enumType, object value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="enumType">A <see cref="T:System.Type" /> that specifies the type of the enumeration. </param>
        <param name="value">A <see cref="T:System.Object" /> that contains the integral value or the name of an enumeration constant. </param>
        <summary>
          <para> Retrieves the name of the constant of the
      specified enumeration type that has the
      specified value.
      </para>
        </summary>
        <returns>
          <para> A <see cref="T:System.String" /> containing the name of the enumerated constant
   in <paramref name="enumType" /> whose value is <paramref name="value" />, or a null reference
   if no such constant is found. If multiple constants have the same value, as to which name is returned for that value, is unspecified.</para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> or <paramref name="value" /> is a null reference.</exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
          <para> -or-</para>
          <para>
            <paramref name="value" /> is neither of type <paramref name="enumType" /> nor does it have the same underlying type as <paramref name="enumType" />.</para>
        </exception>
        <example>
          <para>The following example demonstrates the <see cref="M:System.Enum.GetName(System.Type,System.Object)" /> method.</para>
          <code lang="C#">using System;
public enum Signs {
  Stop = 1,
  Yield = 2,
  Merge = 4
};
public class EnumCompTo {
  public static void Main() {
   Console.Write( "The name of the constant with the value 4 is: " );
   Console.WriteLine( "{0}.", Signs.GetName(typeof(Signs), 4));
   Console.Write( "The name of the constant with the value Stop is: " );
   Console.WriteLine( "{0}.", Signs.GetName(typeof(Signs), Signs.Stop ));
  }
}
</code>
          <para>The output is</para>
          <c>
            <para>The name of the constant with the value 4 is: Merge.</para>
            <para>The name of the constant with the value Stop is: Stop.</para>
          </c>
        </example>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="GetNames">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static class System.String[] GetNames(class System.Type enumType)" />
      <MemberSignature Language="C#" Value="public static string[] GetNames (Type enumType);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String[]</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
      </Parameters>
      <Docs>
        <param name="enumType">A <see cref="T:System.Type" /> that specifies the type of an enumeration. </param>
        <summary>
          <para>Returns a zero-based, one-dimensional <see cref="T:System.String" /> array that contains the names of the constants of the specified enumeration type. </para>
        </summary>
        <returns>
          <para>A <see cref="T:System.String" /> vector of the names of the constants in
<paramref name="enumType" />. The elements of the vector
   are sorted by the values of the enumerated constants.  If multiple constants have the same value, the order in which their names appear in the vector, relative to each other, is unspecified.</para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name=" enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
        <example>
          <para>The following example demonstrates the <see cref="M:System.Enum.GetNames(System.Type)" /> method.</para>
          <code lang="C#">using System;

public enum Colors {
   Red,
   White,
   Blue
};

public class enumGetNames {

   public static void Main() {
      int i = 0;
      String[] strAry = Colors.GetNames( typeof(Colors) );
      foreach (String str in strAry) { 
         Console.Write("The value indexed '{0}' ", i++ );
         Console.WriteLine("is {0}.", str);
      }
   }
}
</code>
          <para>The output is</para>
          <c>
            <para>The value indexed '0' is Red.</para>
            <para>The value indexed '1' is White.</para>
            <para>The value indexed '2' is Blue.</para>
          </c>
        </example>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="GetTypeCode">
      <MemberSignature Language="C#" Value="public TypeCode GetTypeCode ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.TypeCode</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetUnderlyingType">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static class System.Type GetUnderlyingType(class System.Type enumType)" />
      <MemberSignature Language="C#" Value="public static Type GetUnderlyingType (Type enumType);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Type</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <summary>
          <para> Returns the underlying type of the specified enumeration type.
      </para>
        </summary>
        <returns>
          <para> A <see cref="T:System.Type" /> instance that describes the underlying type of <paramref name="enumType" />. </para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not an enumeration type.</para>
        </exception>
        <example>
          <para>The following example demonstrates the <see cref="M:System.Enum.GetUnderlyingType(System.Type)" /> 
method.</para>
          <code lang="C#">using System;
public enum Colors {
  Red,
  White,
  Blue
}
public class EnumUnderlyingTypeTest {
  public static void Main() {
     Type t = Colors.GetUnderlyingType( typeof(Colors) );
     Console.WriteLine("The underlying type of Colors is {0}.", t.ToString());
  }
}
</code>
          <para>The output is</para>
          <c>
            <para>The underlying type of Colors is System.Int32.</para>
          </c>
        </example>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="GetValues">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static class System.Array GetValues(class System.Type enumType)" />
      <MemberSignature Language="C#" Value="public static Array GetValues (Type enumType);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Array</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <summary>
          <para> Returns a zero-based, one-dimensional array of the values of the constants of the
      specified enumeration type.</para>
        </summary>
        <returns>
          <para> A vector of the enumeration type specified by
   <paramref name="enumType" /> containing the values of the
      constants in <paramref name="enumType" />. The elements of the array
      are sorted by the values of the enumeration constants. If multiple constants have the same value, the value of each is included in the array.
      </para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not an enumeration type.</para>
        </exception>
        <example>
          <para>The following example demonstrates the <see cref="M:System.Enum.GetValues(System.Type)" /> method.</para>
          <code lang="C#">using System;
public enum Colors {
  Red = 1,
  White = 2,
  Blue = 4
}
public class enumGetValues {
   public static void Main() {
      Array valueAry = Enum.GetValues(typeof(Colors));
      foreach (int i in valueAry) {
        Console.WriteLine("The value of element {0} is {1}",
        Enum.Format(typeof(Colors), i, "g"),i);
      }
   }
}
</code>
          <para>The output is</para>
          <c>
            <para>The value of element Red is 1.</para>
            <para>The value of element White is 2.</para>
            <para>The value of element Blue is 4.</para>
          </c>
        </example>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="IsDefined">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static bool IsDefined(class System.Type enumType, object value)" />
      <MemberSignature Language="C#" Value="public static bool IsDefined (Type enumType, object value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="enumType">A <see cref="T:System.Type" /> that describes an enumeration. </param>
        <param name="value">The constant or value being searched for in <paramref name="enumType" />. </param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns a <see cref="T:System.Boolean" /> indicating whether a constant with the specified value exists
   in the specified enumeration type.</para>
        </summary>
        <returns>
          <para>
            <see langword="true" /> if a constant
   in the enumeration described by <paramref name="enumType" />
   has a value equal to <paramref name="value" />; otherwise,
<see langword="false" />. </para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType " />or <paramref name="value" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not an enumeration type.</para>
          <para> -or-</para>
          <para> The type of <paramref name="value" /> is not an <paramref name="enumType" /> or an underlying type of <paramref name="enumType" />.</para>
        </exception>
        <example>
          <para>The following example demonstrates the <see cref="M:System.Enum.IsDefined(System.Type,System.Object)" /> method.</para>
          <code lang="C#">using System;
public enum Colors {
  Red = 1,
  White = 2,
  Blue = 4
}
public class enumIsDefined {
  public static void Main() {
     Console.Write("It is {0} ", Enum.IsDefined(typeof(Colors), 1));
     Console.WriteLine("that '1' is defined in 'Colors'.");
     Console.Write("It is {0} ", Enum.IsDefined(typeof(Colors), 3)); 
     Console.WriteLine("that '3' is defined in 'Colors'.");
  }
}
</code>
          <para>The output is</para>
          <c>
            <para>It is True that '1' is defined in 'Colors'.</para>
            <para>It is False that '3' is defined in 'Colors'.</para>
          </c>
        </example>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="Parse">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object Parse(class System.Type enumType, string value)" />
      <MemberSignature Language="C#" Value="public static object Parse (Type enumType, string value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">A <see cref="T:System.String" /> containing one or more names or a single numeric value to convert. If the string contains more than one name, each name is required to be separated by a comma (','). The names are parsed in a case-sensitive manner. The names or number can be surrounded by any amount of white space.</param>
        <param name="value">To be added.</param>
        <summary>
          <para>Converts the specified <see cref="T:System.String" /> representation of one or more
   enumerated constants of a specified enumeration type to an equivalent enumerated
   object.</para>
        </summary>
        <returns>
          <para> A <see cref="T:System.Object" /> of type
<paramref name="enumType" /> whose values are
   represented by <paramref name="value" />. </para>
        </returns>
        <remarks>
          <para> This version of <see cref="M:System.Enum.Parse(System.Type,System.String)" /> is equivalent to <see cref="M:System.Enum.Parse(System.Type,System.String)" />
(<paramref name="enumType" />, <paramref name="value" />, <see langword="false" />).</para>
        </remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> or <paramref name="value" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" />.</para>
          <para>-or-</para>
          <para>
            <paramref name="value" /> is either equal to <see cref="F:System.String.Empty" qualify="true" /> or contains only white space.</para>
          <para>-or-</para>
          <para>
            <paramref name="value" /> represents one or more names, and at least one name represented by <paramref name="value " /> is not of type <paramref name="enumType" />.</para>
        </exception>
        <example>
          <para>The following example demonstrates the <see cref="M:System.Enum.Parse(System.Type,System.String)" /> method.</para>
          <code lang="C#">using System;
public enum Colors {
  Red = 1,
  Blue = 2
}
public class enumTest {
  public static void Main() {
    object o = Enum.Parse( typeof (Colors), "Red, Blue");
    Type oType = o.GetType();
    Console.WriteLine("The type of the object returned is {0}",oType.ToString());
    Array values = Enum.GetValues(oType);
    foreach (Colors c in values) { 
      Console.WriteLine(Enum.Format(oType,c,"D"));
    }
  }
}
</code>
          <para>The output is </para>
          <c>
            <para>The type of the object returned is Colors</para>
            <para>1</para>
            <para>2</para>
          </c>
        </example>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="Parse">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object Parse(class System.Type enumType, string value, bool ignoreCase)" />
      <MemberSignature Language="C#" Value="public static object Parse (Type enumType, string value, bool ignoreCase);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.String" />
        <Parameter Name="ignoreCase" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">
          <para>A <see cref="T:System.String" /> containing one or more names or a single numeric value to convert. If the string contains more than one name, each name is required to be separated by a comma (','). The names or number can be surrounded by any amount of white space.</para>
        </param>
        <param name="ignoreCase">A <see cref="T:System.Boolean" /> value. Specify <see langword="true" /> to have names in <paramref name="value" /> parsed in a case-insensitive manner. Specify <see langword="false" /> to have names parsed in a case-sensitive manner.</param>
        <param name="ignoreCase">To be added.</param>
        <summary>
          <para>Converts the specified <see cref="T:System.String" />
representation of one or more enumerated constants of a specified enumeration type to an
equivalent enumerated object. This method behaves in a case-sensitive or
insensitive manner according to the specified <see cref="T:System.Boolean" />.</para>
        </summary>
        <returns>
          <para>A <see cref="T:System.Object" /> of type
<paramref name="enumType" />
whose values are represented by <paramref name="value" />. </para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> or <paramref name="value" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" />.</para>
          <para>-or-</para>
          <para>
            <paramref name="value" /> is either equal to <see cref="F:System.String.Empty" qualify="true" /> or contains only white space.</para>
          <para>-or-</para>
          <para>
            <paramref name="value" /> represents one or more names, and at least one name represented by <paramref name="value " /> is not of type <paramref name="enumType" />.</para>
        </exception>
        <example>
          <para>For an example that demonstrates parsing strings
      containing enumeration values, see <see cref="M:System.Enum.Parse(System.Type,System.String)" />(<see cref="T:System.Type" />, <see cref="T:System.String" />).</para>
        </example>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="System.IConvertible.ToBoolean">
      <MemberSignature Language="C#" Value="bool IConvertible.ToBoolean (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToByte">
      <MemberSignature Language="C#" Value="byte IConvertible.ToByte (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Byte</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToChar">
      <MemberSignature Language="C#" Value="char IConvertible.ToChar (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Char</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToDateTime">
      <MemberSignature Language="C#" Value="DateTime IConvertible.ToDateTime (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.DateTime</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToDecimal">
      <MemberSignature Language="C#" Value="decimal IConvertible.ToDecimal (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Decimal</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToDouble">
      <MemberSignature Language="C#" Value="double IConvertible.ToDouble (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Double</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToInt16">
      <MemberSignature Language="C#" Value="short IConvertible.ToInt16 (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int16</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToInt32">
      <MemberSignature Language="C#" Value="int IConvertible.ToInt32 (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToInt64">
      <MemberSignature Language="C#" Value="long IConvertible.ToInt64 (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int64</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToSByte">
      <MemberSignature Language="C#" Value="sbyte IConvertible.ToSByte (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.SByte</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToSingle">
      <MemberSignature Language="C#" Value="float IConvertible.ToSingle (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToType">
      <MemberSignature Language="C#" Value="object IConvertible.ToType (Type type, IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="type">To be added.</param>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToUInt16">
      <MemberSignature Language="C#" Value="ushort IConvertible.ToUInt16 (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.UInt16</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToUInt32">
      <MemberSignature Language="C#" Value="uint IConvertible.ToUInt32 (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.UInt32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="System.IConvertible.ToUInt64">
      <MemberSignature Language="C#" Value="ulong IConvertible.ToUInt64 (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.UInt64</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ToObject">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object ToObject(class System.Type enumType, unsigned int8 value)" />
      <MemberSignature Language="C#" Value="public static object ToObject (Type enumType, byte value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.Byte" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">The <see cref="T:System.Byte" /> value to set. </param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns an instance of the specified enumeration type set
      to the specified <see cref="T:System.Byte" /> value.
      </para>
        </summary>
        <returns>
          <para>An enumeration object of type <paramref name="enumType" /> whose 
   value is <paramref name="value" />.</para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToObject">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object ToObject(class System.Type enumType, int16 value)" />
      <MemberSignature Language="C#" Value="public static object ToObject (Type enumType, short value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.Int16" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">The <see cref="T:System.Int16" /> value to set. </param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns an instance of the specified enumeration type set
      to the specified <see cref="T:System.Int16" /> value.
      </para>
        </summary>
        <returns>
          <para> An enumeration object of type <paramref name="enumType" /> whose 
   value is <paramref name="value" />.</para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToObject">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object ToObject(class System.Type enumType, int32 value)" />
      <MemberSignature Language="C#" Value="public static object ToObject (Type enumType, int value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">The <see cref="T:System.Int32" /> value to set. </param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns an instance of the specified enumeration type set
      to the specified <see cref="T:System.Int32" /> value.
      </para>
        </summary>
        <returns>
          <para>An enumeration object of type <paramref name="enumType" /> whose value is <paramref name="value" />.</para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToObject">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object ToObject(class System.Type enumType, int64 value)" />
      <MemberSignature Language="C#" Value="public static object ToObject (Type enumType, long value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.Int64" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">The <see cref="T:System.Int64" /> value to set. </param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns an instance of the specified enumeration type set
      to the specified <see cref="T:System.Int64" /> value.
      </para>
        </summary>
        <returns>
          <para>An enumeration object of type <paramref name="enumType" /> whose 
   value is <paramref name="value" />.</para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToObject">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object ToObject(class System.Type enumType, object value)" />
      <MemberSignature Language="C#" Value="public static object ToObject (Type enumType, object value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of the enumeration. </param>
        <param name="value">The value to set.</param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns an instance of the specified enumeration type set to the specified value.
      </para>
        </summary>
        <returns>
          <para> An enumeration object of type <paramref name="enumType" /> whose value is
<paramref name="value" />.
   </para>
        </returns>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToObject">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object ToObject(class System.Type enumType, int8 value)" />
      <MemberSignature Language="C#" Value="public static object ToObject (Type enumType, sbyte value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.SByte" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">The <see cref="T:System.SByte" /> value to set. </param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns an instance of the specified enumeration type set
      to the specified <see cref="T:System.SByte" /> value.
      </para>
        </summary>
        <returns>
          <para>An enumeration object of type <paramref name="enumType" /> whose value is <paramref name="value" />.</para>
        </returns>
        <remarks>
          <para>This member is not CLS-compliant. For a CLS-compliant alternative, use 
   <see cref="M:System.Enum.ToObject(System.Type,System.Object)" />(<see cref="T:System.Type" />, <see cref="T:System.Int16" />).</para>
        </remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.CLSCompliant(false)</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToObject">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object ToObject(class System.Type enumType, unsigned int16 value)" />
      <MemberSignature Language="C#" Value="public static object ToObject (Type enumType, ushort value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.UInt16" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">The <see cref="T:System.UInt16" /> value to set. </param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns an instance of the specified enumeration type set
      to the specified <see cref="T:System.UInt16" /> value.
      </para>
        </summary>
        <returns>
          <para>An enumeration object of type <paramref name="enumType" /> whose value is <paramref name="value" />.</para>
        </returns>
        <remarks>
          <para>This member is not CLS-compliant. For a CLS-compliant alternative, use 
   <see cref="M:System.Enum.ToObject(System.Type,System.Object)" />(<see cref="T:System.Type" />, <see cref="T:System.Int32" />).</para>
        </remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.CLSCompliant(false)</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToObject">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object ToObject(class System.Type enumType, unsigned int32 value)" />
      <MemberSignature Language="C#" Value="public static object ToObject (Type enumType, uint value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.UInt32" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">The <see cref="T:System.UInt32" /> value to set. </param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns an instance of the specified enumeration type set
      to the specified <see cref="T:System.UInt32" /> value.
      </para>
        </summary>
        <returns>
          <para>An enumeration object of type <paramref name="enumType" /> whose
   value is <paramref name="value" />.</para>
        </returns>
        <remarks>
          <para>This member is not CLS-compliant. For a CLS-compliant alternative, use 
   <see cref="M:System.Enum.ToObject(System.Type,System.Object)" />(<see cref="T:System.Type" />, <see cref="T:System.Int64" />).</para>
        </remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.CLSCompliant(false)</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToObject">
      <MemberSignature Language="ILASM" Value=".method public hidebysig static object ToObject(class System.Type enumType, unsigned int64 value)" />
      <MemberSignature Language="C#" Value="public static object ToObject (Type enumType, ulong value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="enumType" Type="System.Type" />
        <Parameter Name="value" Type="System.UInt64" />
      </Parameters>
      <Docs>
        <param name="enumType">The <see cref="T:System.Type" /> of an enumeration. </param>
        <param name="value">The <see cref="T:System.UInt64" /> value to set. </param>
        <param name="value">To be added.</param>
        <summary>
          <para> Returns an instance of the specified enumeration type set
      to the specified <see cref="T:System.UInt64" /> value.
      </para>
        </summary>
        <returns>
          <para>An enumeration object of type <paramref name="enumType" /> whose
   value is <paramref name="value" />.</para>
        </returns>
        <remarks>
          <para>This member is not CLS-compliant. For a CLS-compliant 
      alternative, use <see cref="M:System.Enum.ToObject(System.Type,System.Object)" />(<see cref="T:System.Type" />, <see cref="T:System.Int64" /> ).</para>
        </remarks>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="enumType" /> is a null reference. </exception>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="enumType" /> is not a <see cref="T:System.Type" /> that describes a <see cref="T:System.Enum" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.CLSCompliant(false)</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToString">
      <MemberSignature Language="ILASM" Value=".method public hidebysig virtual string ToString()" />
      <MemberSignature Language="C#" Value="public override string ToString ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para> Converts the name of the value of the current instance to
      its equivalent <see cref="T:System.String" /> representation. </para>
        </summary>
        <returns>
          <para>The <see cref="T:System.String" /> representation of the named constant specified by the current instance.</para>
        </returns>
        <remarks>
          <para> This version of <see cref="M:System.Enum.ToString(System.String)" /> is equivalent to <see cref="M:System.Enum.ToString(System.String)" /> ("G", <see langword="null" />
). </para>
          <para>This method returns the same value as <see cref="M:System.Enum.Format(System.Type,System.Object,System.String)" />
with the "g" or "G" format option. </para>
          <para> An instance of an enumeration is set to
   a named constant value. This method returns the name of the constant an instance
   is set to, not the value itself. </para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ToString">
      <MemberSignature Language="ILASM" Value=".method public final hidebysig virtual string ToString(class System.IFormatProvider provider)" />
      <MemberSignature Language="C#" Value="public string ToString (IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="provider">An object that implements the <see cref="T:System.IFormatProvider" /> interface or a null reference. The <see cref="T:System.IFormatProvider" /> is not used in the implementation of this method. <block subset="none" type="note"> There is no <see cref="T:System.IFormatProvider" /> that corresponds to a <see cref="T:System.Enum" /> object; therefore, <paramref name="provider" /> is not utilized by this method, and any <see cref="T:System.IFormatProvider" /> may be passed as a parameter.</block></param>
        <summary>
          <para> Converts the name of the value of the current instance to
      its equivalent <see cref="T:System.String" />
      representation. </para>
        </summary>
        <returns>
          <para>  The <see cref="T:System.String" /> representation of
   the name of the value of the current instance.
</para>
        </returns>
        <remarks>
          <para>This method is equivalent to the version of <see cref="M:System.Enum.ToString(System.String)" />
that takes no arguments.</para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Obsolete("Provider is ignored, just use ToString")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToString">
      <MemberSignature Language="ILASM" Value=".method public hidebysig instance string ToString(string format)" />
      <MemberSignature Language="C#" Value="public string ToString (string format);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="format" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="format">A <see cref="T:System.String" /> that specifies the format to use when converting the current instance to a <see cref="T:System.String" />. Specify one of the following values in upper or lowercase: "G", "D", "X", or "F" .</param>
        <summary>
          <para> Converts the value of the current instance to its
      equivalent <see cref="T:System.String" /> representation using the specified format. </para>
        </summary>
        <returns>
          <para>The <see cref="T:System.String" /> representation of the value of the current
   instance as specified by <paramref name="format" />.</para>
        </returns>
        <remarks>
          <para> If
   <paramref name="format" /> is a null 
      reference or an empty string, the return value is formatted using the general
      format specifier ("G").</para>
          <para>
            <block subset="none" type="note">For details on the format specifiers 
      used with an enumeration object, see <see cref="M:System.Enum.Format(System.Type,System.Object,System.String)" /> .</block>
          </para>
        </remarks>
        <exception cref="T:System.FormatException">
          <paramref name="format" /> contains an invalid value. </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ToString">
      <MemberSignature Language="ILASM" Value=".method public final hidebysig virtual string ToString(string format, class System.IFormatProvider provider)" />
      <MemberSignature Language="C#" Value="public string ToString (string format, IFormatProvider provider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="format" Type="System.String" />
        <Parameter Name="provider" Type="System.IFormatProvider" />
      </Parameters>
      <Docs>
        <param name="format">A <see cref="T:System.String" /> that specifies the format to use when converting the current instance to a <see cref="T:System.String" /> . Specify one of the following values in upper or lower case: "G", "D", "X", or "F" .</param>
        <param name="provider">An object that implements the <see cref="T:System.IFormatProvider" /> interface or a null reference. The <see cref="T:System.IFormatProvider" /> is not used in the implementation of this method. <block subset="none" type="note"> There is no <see cref="T:System.IFormatProvider" /> that corresponds to a <see cref="T:System.Enum" /> object; therefore, <paramref name="provider" /> is not utilized by this method, and any <see cref="T:System.IFormatProvider" /> may be passed as a parameter.</block></param>
        <param name="format">To be added.</param>
        <param name="provider">To be added.</param>
        <summary>
          <para> Converts the numeric value of the current instance to
      its equivalent <see cref="T:System.String" /> representation using the specified format. </para>
        </summary>
        <returns>
          <para>The <see cref="T:System.String" /> representation of the value of the current instance as specified by <paramref name="format" />.</para>
        </returns>
        <remarks>
          <para> If
   <paramref name="format" /> is a null
      reference or an empty string, the return value is formatted using the general
      format specifier ("G").</para>
          <block subset="none" type="note">
            <para>For details on the
         format specifiers used with an enumeration object, see <see cref="M:System.Enum.Format(System.Type,System.Object,System.String)" />
         .</para>
            <para>This method is implemented to support the <see cref="T:System.IFormattable" /> interface. </para>
          </block>
        </remarks>
        <exception cref="T:System.FormatException">
          <paramref name="format" /> does not contain a valid format specifier.</exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Obsolete("Provider is ignored, just use ToString")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
  </Members>
  <TypeExcluded>0</TypeExcluded>
  <Attributes>
    <Attribute>
      <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
    </Attribute>
  </Attributes>
</Type>
