<Type Name="Guid" FullName="System.Guid">
  <TypeSignature Maintainer="auto" Language="C#" Value="public struct Guid : IComparable, IComparable&lt;Guid&gt;, IEquatable&lt;Guid&gt;, IFormattable" />
  <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>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
  <Base>
    <BaseTypeName>System.ValueType</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>System.IComparable</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>System.IComparable&lt;System.Guid&gt;</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>System.IEquatable&lt;System.Guid&gt;</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>System.IFormattable</InterfaceName>
    </Interface>
  </Interfaces>
  <Docs>
    <summary>A globally-unique identifier.</summary>
    <remarks>Guids are supposed to be globally unique.  They are 16-bytes long and are generally represented as a hexidecimal string enclosed in curly braces.</remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Guid (byte[] b);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="b" Type="System.Byte[]" />
      </Parameters>
      <Docs>
        <param name="b">The raw bytes of the Guid.</param>
        <summary>Constructs a new Guid from a 16-byte byte array.</summary>
        <remarks>Any array of bytes is a valid Guid.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Guid (string g);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="g" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="g">The Guid string.</param>
        <summary>Creates a new Guid from a string representation.</summary>
        <remarks>
          <para>Two Guid formats are acceptable.  The first format is: "{FFFFFFFF-FFFF-FFFF-FF-FFFFFFFFFFFFFF}".  An F is a hexidecimal digit.  The braces may be parenthesis or omitted, and the dashes may be omitted (all or none).</para>
          <para>The second format is: "{0xFFFFFFFF,0xFFFF,0xFFFF,{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}}".</para>
          <para>A <see cref="T:System.FormatException" /> is throw if the format of the string does not match one of the above formats.</para>
        </remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Guid (int a, short b, short c, byte[] d);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="a" Type="System.Int32" />
        <Parameter Name="b" Type="System.Int16" />
        <Parameter Name="c" Type="System.Int16" />
        <Parameter Name="d" Type="System.Byte[]" />
      </Parameters>
      <Docs>
        <param name="a">A part of the Guid.</param>
        <param name="b">A part of the Guid.</param>
        <param name="c">A part of the Guid.</param>
        <param name="d">The remaining parts of the Guid.</param>
        <summary>Creates a new Guid.</summary>
        <remarks>Any values are permissible.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Guid (int a, short b, short c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="a" Type="System.Int32" />
        <Parameter Name="b" Type="System.Int16" />
        <Parameter Name="c" Type="System.Int16" />
        <Parameter Name="d" Type="System.Byte" />
        <Parameter Name="e" Type="System.Byte" />
        <Parameter Name="f" Type="System.Byte" />
        <Parameter Name="g" Type="System.Byte" />
        <Parameter Name="h" Type="System.Byte" />
        <Parameter Name="i" Type="System.Byte" />
        <Parameter Name="j" Type="System.Byte" />
        <Parameter Name="k" Type="System.Byte" />
      </Parameters>
      <Docs>
        <param name="a">A part of the Guid.</param>
        <param name="b">A part of the Guid.</param>
        <param name="c">A part of the Guid.</param>
        <param name="d">A part of the Guid.</param>
        <param name="e">A part of the Guid.</param>
        <param name="f">A part of the Guid.</param>
        <param name="g">A part of the Guid.</param>
        <param name="h">A part of the Guid.</param>
        <param name="i">A part of the Guid.</param>
        <param name="j">A part of the Guid.</param>
        <param name="k">A part of the Guid.</param>
        <summary>Creates a new Guid.</summary>
        <remarks>Any values for the parameters are permissible.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Guid (uint a, ushort b, ushort c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="a" Type="System.UInt32" />
        <Parameter Name="b" Type="System.UInt16" />
        <Parameter Name="c" Type="System.UInt16" />
        <Parameter Name="d" Type="System.Byte" />
        <Parameter Name="e" Type="System.Byte" />
        <Parameter Name="f" Type="System.Byte" />
        <Parameter Name="g" Type="System.Byte" />
        <Parameter Name="h" Type="System.Byte" />
        <Parameter Name="i" Type="System.Byte" />
        <Parameter Name="j" Type="System.Byte" />
        <Parameter Name="k" Type="System.Byte" />
      </Parameters>
      <Docs>
        <param name="a">A part of the Guid.</param>
        <param name="b">A part of the Guid.</param>
        <param name="c">A part of the Guid.</param>
        <param name="d">A part of the Guid.</param>
        <param name="e">A part of the Guid.</param>
        <param name="f">A part of the Guid.</param>
        <param name="g">A part of the Guid.</param>
        <param name="h">A part of the Guid.</param>
        <param name="i">A part of the Guid.</param>
        <param name="j">A part of the Guid.</param>
        <param name="k">A part of the Guid.</param>
        <summary>Constructs a new Guid.</summary>
        <remarks>All values for the parameters are permissible, except where the ushort parameters cannot be converted to the short type.</remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>System.CLSCompliant(false)</AttributeName>
        </Attribute>
      </Attributes>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="CompareTo">
      <MemberSignature Language="C#" Value="public int CompareTo (Guid value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="value" Type="System.Guid" />
      </Parameters>
      <Docs>
        <param name="value">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="CompareTo">
      <MemberSignature Language="C#" Value="public int CompareTo (object value);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="value" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="value">To be added: an object of type 'object'</param>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'int'</returns>
        <remarks>To be added</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Empty">
      <MemberSignature Language="C#" Value="public static readonly Guid Empty;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Guid</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>The empty Guid, with all bytes set to zero.</summary>
        <remarks>None.</remarks>
      </Docs>
      <MemberValue>00000000-0000-0000-0000-000000000000</MemberValue>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Equals">
      <MemberSignature Language="C#" Value="public bool Equals (Guid g);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="g" Type="System.Guid" />
      </Parameters>
      <Docs>
        <param name="g">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Equals">
      <MemberSignature Language="C#" Value="public override bool Equals (object o);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="o" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="o">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>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetHashCode">
      <MemberSignature Language="C#" Value="public override int GetHashCode ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</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>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="NewGuid">
      <MemberSignature Language="C#" Value="public static Guid NewGuid ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Guid</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Creates a new Guid based on a random number.</summary>
        <returns>A new, random Guid.</returns>
        <remarks>None.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="op_Equality">
      <MemberSignature Language="C#" Value="public static bool op_Equality (Guid a, Guid b);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="a" Type="System.Guid" />
        <Parameter Name="b" Type="System.Guid" />
      </Parameters>
      <Docs>
        <param name="a">A Guid.</param>
        <param name="b">A Guid.</param>
        <summary>Tests whether two Guids have the same value.</summary>
        <returns>True if the two Guids have the same value.</returns>
        <remarks>None.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="op_Inequality">
      <MemberSignature Language="C#" Value="public static bool op_Inequality (Guid a, Guid b);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="a" Type="System.Guid" />
        <Parameter Name="b" Type="System.Guid" />
      </Parameters>
      <Docs>
        <param name="a">A Guid.</param>
        <param name="b">A Guid.</param>
        <summary>Tests whether two Guids have different values.</summary>
        <returns>True if the two Guids have different values.</returns>
        <remarks>None.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Parse">
      <MemberSignature Language="C#" Value="public static Guid Parse (string input);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Guid</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="input" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="input">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ParseExact">
      <MemberSignature Language="C#" Value="public static Guid ParseExact (string input, string format);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Guid</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="input" Type="System.String" />
        <Parameter Name="format" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="input">To be added.</param>
        <param name="format">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ToByteArray">
      <MemberSignature Language="C#" Value="public byte[] ToByteArray ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Byte[]</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Gets the value of the Guid as a byte array.</summary>
        <returns>The byte values of the Guid.</returns>
        <remarks>None.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ToString">
      <MemberSignature Language="C#" Value="public override string ToString ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</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>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ToString">
      <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 format string.  Valid values are listed in the remarks section.</param>
        <summary>Returns the Guid as a string, formatted according to a format string.</summary>
        <returns>The Guid as a string.</returns>
        <remarks>
          <para>The following string values for <paramref name="format" /> are allowed:</para>
          <list type="table">
            <listheader>
              <term>Format</term>
              <description>Description</description>
            </listheader>
            <item>
              <term>d, D</term>
              <description>The Guid is returned as a set of hexidecimal numbers separated by dashes.  This is the default representation.</description>
            </item>
            <item>
              <term>b, B</term>
              <description>The Guid is returned enclosed in braces.</description>
            </item>
            <item>
              <term>p, P</term>
              <description>The Guid is returned enclosed in parenthesis.</description>
            </item>
            <item>
              <term>n, N</term>
              <description>The Guid is returned without dashes or braces/parenthesis.</description>
            </item>
          </list>
        </remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ToString">
      <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">The format string.</param>
        <param name="provider">The format provider.</param>
        <summary>Returns the Guid as a string, formatted according to a format string and IFormatProvider.</summary>
        <returns>A representation of the Guid as a string.</returns>
        <remarks>The value of <paramref name="provider" /> is ignored.  For valid values for <paramref name="format" />, see <see cref="M:System.Guid.ToString(string)" />.</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="TryParse">
      <MemberSignature Language="C#" Value="public static bool TryParse (string input, out Guid result);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="input" Type="System.String" />
        <Parameter Name="result" Type="System.Guid&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <param name="input">To be added.</param>
        <param name="result">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="TryParseExact">
      <MemberSignature Language="C#" Value="public static bool TryParseExact (string input, string format, out Guid result);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="input" Type="System.String" />
        <Parameter Name="format" Type="System.String" />
        <Parameter Name="result" Type="System.Guid&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <param name="input">To be added.</param>
        <param name="format">To be added.</param>
        <param name="result">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
  </Members>
  <Attributes>
    <Attribute>
      <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
    </Attribute>
  </Attributes>
</Type>
