**** 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
Other License, Boost Software License (BSL1.0)Follow Contract++
Other Useful Business Software
Build Securely on AWS with Proven Frameworks
Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
Rate This Project
Login To Rate This Project
User Reviews
-
Great software, thank you.