Contract.EndContractBlock Method

Definition

Marks the end of the contract section when a method's contracts contain only preconditions in the if-then-throw form.

public:
 static void EndContractBlock();
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void EndContractBlock ();
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member EndContractBlock : unit -> unit
Public Shared Sub EndContractBlock ()
Attributes

Remarks

Most code already contains some parameter validation in the form of if-then-throw code. The contract tools recognize if-then-throw statements as preconditions when the statements appear first inside a method, and the entire set of such statements is followed by an explicit Contract method call, such as a Requires, Ensures, EnsuresOnThrow, or EndContractBlock.

When if-then-throw statements appear in this form, the contract tools recognize them as legacy-require statements. The EndContractBlock form is used only if no other contracts follow the if-then-throw sequences, but they should still be tagged as legacy-requires.

Applies to