...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
BOOST_CONTRACT_NO_EXCEPTS — If defined, this library does not check exception guarantees (undefined by default).
// In header: <boost/contract/core/config.hpp>
BOOST_CONTRACT_NO_EXCEPTS
If this macro is defined, this library internal code is also optimized to reduce compile-time (not just run-time) overhead associated with checking exception guarantees. Users can manually program #ifndef
statements in their code using this macro to completely disable compilation of exception guarantees or use the macros defined in boost/contract_macro.hpp
(recommended only for applications where it is truly necessary to completely remove contract code compilation from production code).
It is necessary to disable both postconditions and exception guarantees defining BOOST_CONTRACT_NO_POSTCONDITIONS
and BOOST_CONTRACT_NO_EXCEPTS
in order to disable old value copies (see BOOST_CONTRACT_NO_OLDS
).
See Also:
Exception Guarantees, Disable Contract Checking, Disable Contract Compilation