**** THIS LIBRARY WAS MOVED INTO Boost ****
New location: https://github.com/boostorg/contract
C++ Contract Programming (a.k.a. Design by Contract or DbC).
All Eiffel features supported: subcontracting, postcondition old and result values, optional contract compilation, customizable action on assertion failure, block invariants, loop variants, etc.
Plus virtual specifiers, concept checking, named parameters.
See: http://contractpp.sourceforge.net
Features
- Support for preconditions, postconditions, class invariants, block invariants, and loop variants.
- Subcontract derived classes (with support for pure virtual functions and multiple inheritance).
- Access expression old values and function return value in postconditions.
- Optional compilation and checking of preconditions, postconditions, class invariants, block invariants, and loop variants.
- Customizable actions on contract assertion failure (terminate by default but it can throw, exit, etc).
- Virtual specifiers.
- Concept checking.
- Named parameters.
License
Boost Software License (BSL1.0), Other LicenseFollow Contract++
Other Useful Business Software
Auth0 for AI Agents now in GA
Connect your AI agents to apps and data more securely, give users control over the actions AI agents can perform and the data they can access, and enable human confirmation for critical agent actions.
Rate This Project
Login To Rate This Project
User Reviews
-
Great software, thank you.