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
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 ContractFailed event.
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.
Specifies the type of contract that failed.
We'd love to hear your thoughts. Choose the type you'd like to provide:
Our feedback system is built on GitHub Issues. Read more on our blog.