<Type Name="ContractReferenceAssemblyAttribute" FullName="System.Diagnostics.Contracts.ContractReferenceAssemblyAttribute">
  <TypeSignature Language="C#" Value="public sealed class ContractReferenceAssemblyAttribute : Attribute" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit ContractReferenceAssemblyAttribute extends System.Attribute" />
  <AssemblyInfo>
    <AssemblyName>mscorlib</AssemblyName>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.Attribute</BaseTypeName>
  </Base>
  <Interfaces />
  <Attributes>
    <Attribute>
      <AttributeName>System.AttributeUsage(System.AttributeTargets.Assembly)</AttributeName>
    </Attribute>
  </Attributes>
  <Docs>
    <summary>Marks an assembly as being a contarct reference assembly. This assembly will contain no code except as required by the contracts.</summary>
    <remarks>
      <para>
Contract reference assemblies are required to allow contracts to be inherited across assemblies. The reference assembly contains the full code contract specifications, so dependant assemblies are able to inherit code contracts correctly.
</para>
      <para>
Contract reference assemblies are generated by the ccrefgen tool.
</para>
    </remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public ContractReferenceAssemblyAttribute ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters />
      <Docs>
        <summary>Construct a ContractReferenceAssemblyAttribute.</summary>
        <remarks />
      </Docs>
    </Member>
  </Members>
</Type>
