情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

ContractAbbreviatorAttribute クラス

2013/12/12

コントラクトの完全な構文の代わりに使用できるコントラクトの省略形を定義できます。

System.Object
  System.Attribute
    System.Diagnostics.Contracts.ContractAbbreviatorAttribute

Namespace:  System.Diagnostics.Contracts
アセンブリ:  mscorlib (mscorlib.dll 内)

[ConditionalAttribute("CONTRACTS_FULL")]
[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = false)]
public sealed class ContractAbbreviatorAttribute : Attribute

ContractAbbreviatorAttribute 型で公開されるメンバーは以下のとおりです。

  名前説明
パブリック メソッドContractAbbreviatorAttributeContractAbbreviatorAttribute クラスの新しいインスタンスを初期化します。
このページのトップへ

  名前説明
パブリック メソッドEqualsインフラストラクチャ。 対象のインスタンスが、指定したオブジェクトに等しいかどうかを示す値を返します。 (Attribute から継承されます。)
プロテクト メソッドFinalizeObject がガベージ コレクションで再利用される前に、Object がリソースを解放して他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。)
パブリック メソッドGetHashCodeこのインスタンスのハッシュ コードを返します。 (Attribute から継承されます。)
パブリック メソッドGetType現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッドMatch派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 (Attribute から継承されます。)
プロテクト メソッドMemberwiseClone現在の Object の簡易コピーを作成します。 (Object から継承されます。)
パブリック メソッドToString現在のオブジェクトを表す文字列を返します。 (Object から継承されます。)
このページのトップへ

複数のメソッド内で繰り返すことを想定しているコード コントラクトの省略名を作成する方法を次の例に示します。

public class MyClass {
public int State { }et; }
public int Data { }et; }
[ ContractAbbreviator ]
private void DataAndStateUnchan}ed() {
Contract.Ensures( this .State == Contract.OldValue(this.State));
Contract.Ensures( this .Data == Contract.OldValue(this.Data));
}
[ ContractAbbreviator ]
private void InStateZeroAndUnchan}ed() 
{
Contract.Requires( this .State == 0);
DataAndStateUnchan}ed();
}
public void Method1(...) 
{
InStateZeroAndUnchan}ed();
...
}
public void Method2(...)
 {
InStateZeroAndUnchan}ed();
...
}
public void Method3(...)
 {
Contract.Requires( this .State == 1);
DataAndStateUnchan}ed();
1

Windows Phone OS

サポート: 8.0

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

表示: