The System.Diagnostics.Contracts namespace contains static classes for representing program contracts such as preconditions, postconditions, and invariants.
Contains static methods for representing program contracts such as preconditions, postconditions, and object invariants.
Defines abbreviations that you can use in place of the full contract syntax.
Enables the factoring of legacy if-then-throw code into separate methods for reuse, and provides full control over thrown exceptions and arguments.
Specifies that a separate type contains the code contracts for this type.
Specifies that a class is a contract for a type.
Provides methods and data for the Contract.ContractFailed event.
Specifies the type of contract that failed.
Marks a method as being the invariant method for a class.
Enables you to set contract and tool options at assembly, type, or method granularity.
Specifies that a field can be used in method contracts when the field has less visibility than the method.
Specifies that an assembly is a reference assembly that contains contracts.
Identifies a member that has no run-time behavior.
Instructs analysis tools to assume the correctness of an assembly, type, or member without performing static verification.
Indicates that a type or method is pure, that is, it does not make any visible state changes.