| Home | Libraries | People | FAQ | More

## Macro BOOST_CONTRACT_NO_FUNCTIONS

BOOST_CONTRACT_NO_FUNCTIONS — Automatically defined by this library when contracts are not checked for non-member, private, or protected functions.

## Synopsis

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

    BOOST_CONTRACT_NO_FUNCTIONS

## Description

This macro is not a configuration macro and this library will generate a compile-time error if users try to define it directly. This library will automatically define this macro when users define all `BOOST_CONTRACT_NO_PRECONDITIONS`, `BOOST_CONTRACT_NO_POSTCONDITIONS`, and `BOOST_CONTRACT_NO_EXCEPTS`. Users can manually program `#ifndef` statements in their code using this macro to completely disable compilation of contracts for non-member, private and protected functions, 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).

This macro is also used when contracts are not checked for private or protected functions, lambda functions, code blocks, loops, etc.

See Also: Non-Member Functions, Private and Protected Functions, Lambdas, Loops, Code Blocks, Disable Contract Compilation