Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

Macro BOOST_CONTRACT_NO_INVARIANTS

BOOST_CONTRACT_NO_INVARIANTS — If defined, this library does not check class invariants (undefined by default).

Synopsis

// In header: <boost/contract/core/config.hpp>

BOOST_CONTRACT_NO_INVARIANTS

Description

If this macro is defined, this library internal code is also optimized to reduce compile-time (not just run-time) overhead associated with checking class invariants. Users can manually program #ifndef statements in their code using this macro to completely disable compilation of class invariants 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).

Defining this macro is equivalent to defining both BOOST_CONTRACT_NO_ENTRY_INVARIANTS and BOOST_CONTRACT_NO_EXIT_INVARIANTS.

See Also:

Class Invariants, Disable Contract Checking, Disable Contract Compilation


PrevUpHomeNext