ContractAbbreviatorAttribute Clase

Definición

Define las abreviaturas que puede usar en lugar de la sintaxis completa de contrato.

public ref class ContractAbbreviatorAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false)]
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public sealed class ContractAbbreviatorAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false)>]
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
type ContractAbbreviatorAttribute = class
    inherit Attribute
Public NotInheritable Class ContractAbbreviatorAttribute
Inherits Attribute
Herencia
ContractAbbreviatorAttribute
Atributos

Ejemplos

En el ejemplo siguiente se muestra cómo crear nombres abreviados para contratos de código que se repiten en varios métodos.

using System.Diagnostics.Contracts;  

public class MyClass   
{  
   public int State { get; }  
   public int Data { get; }  

   [ ContractAbbreviator ]  
   private void DataAndStateUnchanged()   
   {  
      Contract.Ensures( this .State == Contract.OldValue(this.State));  
      Contract.Ensures( this .Data == Contract.OldValue(this.Data));  
   }  

   [ ContractAbbreviator ]  
   private void InStateZeroAndUnchanged()   
   {  
      Contract.Requires( this.State == 0);  
      DataAndStateUnchanged();  
   }  

   public void Method1(...)   
   {  
      InStateZeroAndUnchanged();  
      ...  
   }  

   public void Method2(...)   
   {  
      InStateZeroAndUnchanged();  
      ...  
   }  

   public void Method3(...)  
   {  
      Contract.Requires(this .State == 1);  
      DataAndStateUnchanged();  
   }  
}  

Constructores

ContractAbbreviatorAttribute()

Inicializa una nueva instancia de la clase ContractAbbreviatorAttribute.

Propiedades

TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.

(Heredado de Attribute)

Métodos

Equals(Object)

Devuelve un valor que indica si esta instancia es igual que un objeto especificado.

(Heredado de Attribute)
GetHashCode()

Devuelve el código hash de esta instancia.

(Heredado de Attribute)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.

(Heredado de Attribute)
Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.

(Heredado de Attribute)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

(Heredado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz.

(Heredado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

(Heredado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

(Heredado de Attribute)

Se aplica a