<Type Name="MethodImplAttribute" FullName="System.Runtime.CompilerServices.MethodImplAttribute" FullNameSP="System_Runtime_CompilerServices_MethodImplAttribute" Maintainer="ecma">
  <TypeSignature Language="ILASM" Value=".class public sealed serializable MethodImplAttribute extends System.Attribute" />
  <TypeSignature Language="C#" Value="public sealed class MethodImplAttribute : Attribute" />
  <MemberOfLibrary>RuntimeInfrastructure</MemberOfLibrary>
  <AssemblyInfo>
    <AssemblyName>mscorlib</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ]</AssemblyPublicKey>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadingSafetyStatement>All public static members of this type are safe for multithreaded operations. No instance members are guaranteed to be thread safe.</ThreadingSafetyStatement>
  <Base>
    <BaseTypeName>System.Attribute</BaseTypeName>
  </Base>
  <Interfaces />
  <Attributes>
    <Attribute>
      <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
    </Attribute>
    <Attribute>
      <AttributeName>System.AttributeUsage(System.AttributeTargets.Constructor | System.AttributeTargets.Method, Inherited=false)</AttributeName>
    </Attribute>
  </Attributes>
  <Docs>
    <summary>
      <para>Specifies the details of how a method is implemented.</para>
    </summary>
    <remarks>
      <para>Compilers are required to not preserve this type in metadata as a custom
      attribute. Instead, compilers are required to emit it directly in the file
      format, as described in Partition II of the CLI Specification. Metadata
      consumers, such as the Reflection API, are required to retrieve this data from
      the file format and return it as if it were a custom attribute. </para>
      <para>
        <block subset="none" type="note">This class uses the 
<see cref="T:System.Runtime.CompilerServices.MethodImplOptions" /> enumeration to describe the 
   implementation details of methods. For most languages, it is recommended
   that the notions of "forward" and "synchronized" be attached to methods using
   language syntax instead of custom attributes. </block>
      </para>
    </remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor()" />
      <MemberSignature Language="C#" Value="public MethodImplAttribute ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>
          <para> Constructs a new instance of the
 <see langword="MethodImplAttribute" /> class.</para>
        </summary>
        <remarks>To be added.</remarks>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(int16 value)" />
      <MemberSignature Language="C#" Value="public MethodImplAttribute (short options);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="options" Type="System.Int16" />
      </Parameters>
      <Docs>
        <param name="options">
          <para>A <see cref="T:System.Int16" /> that is interpreted as a bit-field that represents the desired <see cref="T:System.Runtime.CompilerServices.MethodImplOptions" /> value, which specifies a property of the method attributed by the current instance.</para>
        </param>
        <summary>
          <para> Constructs and initializes a new instance of the <see langword="MethodImplAttribute" /> class with the specified
<see cref="T:System.Int16" /> value
   interpreted as a <see cref="T:System.Runtime.CompilerServices.MethodImplOptions" /> value.</para>
        </summary>
        <remarks>To be added.</remarks>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(valuetype System.Runtime.CompilerServices.MethodImplOptions methodImplOptions)" />
      <MemberSignature Language="C#" Value="public MethodImplAttribute (System.Runtime.CompilerServices.MethodImplOptions options);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="options" Type="System.Runtime.CompilerServices.MethodImplOptions" />
      </Parameters>
      <Docs>
        <param name="options">A <see cref="T:System.Runtime.CompilerServices.MethodImplOptions" /> value that specifies a property of the method attributed by the current instance.</param>
        <summary>
          <para> Constructs and initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.MethodImplAttribute" /> class using the
   specified <see cref="T:System.Runtime.CompilerServices.MethodImplOptions" />
   value.</para>
        </summary>
        <remarks>To be added.</remarks>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="MethodCodeType">
      <MemberSignature Language="C#" Value="public System.Runtime.CompilerServices.MethodCodeType MethodCodeType;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Runtime.CompilerServices.MethodCodeType</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Value">
      <MemberSignature Language="ILASM" Value=".property valuetype System.Runtime.CompilerServices.MethodImplOptions Value { public hidebysig specialname instance valuetype System.Runtime.CompilerServices.MethodImplOptions get_Value() }" />
      <MemberSignature Language="C#" Value="public System.Runtime.CompilerServices.MethodImplOptions Value { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Runtime.CompilerServices.MethodImplOptions</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Gets the <see cref="T:System.Runtime.CompilerServices.MethodImplOptions" /> value
   describing the method attributed by the
   current instance.</para>
        </summary>
        <value>
          <para>The <see cref="T:System.Runtime.CompilerServices.MethodImplOptions" /> value
   describing the method attributed
   by the current instance.</para>
        </value>
        <remarks>
          <para>This property is read-only.</para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
  </Members>
  <TypeExcluded>0</TypeExcluded>
</Type>
