Contract.Ensures 메서드

정의

바깥쪽 메서드 또는 속성에 대한 사후 조건 계약을 지정합니다.

오버로드

Name Description
Ensures(Boolean)

바깥쪽 메서드 또는 속성에 대한 사후 조건 계약을 지정합니다.

Ensures(Boolean, String)

제공된 종료 조건에 대한 사후 조건 계약과 조건이 false있는지 표시할 메시지를 지정합니다.

Ensures(Boolean)

Source:
Contracts.cs
Source:
Contracts.cs
Source:
Contracts.cs
Source:
Contracts.cs
Source:
Contracts.cs

바깥쪽 메서드 또는 속성에 대한 사후 조건 계약을 지정합니다.

public:
 static void Ensures(bool condition);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures(bool condition);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool -> unit
Public Shared Sub Ensures (condition As Boolean)

매개 변수

condition
Boolean

테스트할 조건식입니다. 식에는 , OldValue<T>(T)ValueAtReturn<T>(T) 값이 포함될 Result<T>()수 있습니다.

특성

예제

다음 예제에서는 메서드를 사용 하 여 Ensures 예상된 값이 반환 되도록 하는 방법을 보여 집니다. 이 코드 예제는 클래스에 제공된 더 큰 예제의 ContractClassAttribute 일부입니다.

int IArray.Add(Object value)
{
    // Returns the index in which an item was inserted.
    Contract.Ensures(Contract.Result<int>() >= -1);
    Contract.Ensures(Contract.Result<int>() < ((IArray)this).Count);
    return default(int);
}
Function Add(ByVal value As Object) As Integer Implements IArray.Add
    ' Returns the index in which an item was inserted.
    Contract.Ensures(Contract.Result(Of Integer)() >= -1) '
    Contract.Ensures(Contract.Result(Of Integer)() < CType(Me, IArray).Count) '
    Return 0
    
End Function 'IArray.Add

설명

매개 변수는 condition 바깥쪽 메서드 또는 속성이 정상적으로 반환될 true 때 예상되는 사후 조건을 지정합니다.

  • 이 메서드 호출은 다른 코드 앞에 메서드 또는 속성의 시작 부분에 있어야 합니다.

  • 이 사후 조건의 런타임 적용에는 이진 재작성기(Visual Studio Marketplace에서 코드 계약 사용 가능)를 사용해야 합니다.

적용 대상

Ensures(Boolean, String)

Source:
Contracts.cs
Source:
Contracts.cs
Source:
Contracts.cs
Source:
Contracts.cs
Source:
Contracts.cs

제공된 종료 조건에 대한 사후 조건 계약과 조건이 false있는지 표시할 메시지를 지정합니다.

public:
 static void Ensures(bool condition, System::String ^ userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures(bool condition, string userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures(bool condition, string? userMessage);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool * string -> unit
Public Shared Sub Ensures (condition As Boolean, userMessage As String)

매개 변수

condition
Boolean

테스트할 조건식입니다. 식에는 값이 OldValue<T>(T) 포함될 Result<T>() 수 있습니다.

userMessage
String

식이 아닌 true경우 표시할 메시지입니다.

특성

설명

매개 변수는 condition 바깥쪽 메서드 또는 속성이 정상적으로 반환될 true 때 예상되는 사후 조건을 지정합니다.

  • 이 메서드 호출은 다른 코드 앞에 메서드 또는 속성의 시작 부분에 있어야 합니다.

  • 이 계약은 클라이언트에 노출됩니다. 따라서 최소한 바깥쪽 메서드만큼 표시되는 멤버만 참조해야 합니다.

  • 이 사후 조건의 런타임 적용에는 이진 재작성기(Visual Studio Marketplace에서 코드 계약 사용 가능)를 사용해야 합니다.

  • 상수 문자열 리터럴이 아닌 경우 userMessage 도구에서 계약을 이해하지 못할 수 있습니다.

적용 대상