| Home | Libraries | People | FAQ | More

## Function throw_logic_error

boost::container::throw_logic_error

## Synopsis

    // In header: <boost/container/throw_exception.hpp>

    void throw_logic_error(const char * str);

## Description

Exception callback called by Boost.Container to report errors in the internal logical of the program, such as violation of logical preconditions or class invariants.

- If BOOST_NO_EXCEPTIONS is NOT defined `std::logic_error(str)` is thrown.

- If BOOST_NO_EXCEPTIONS is defined and BOOST_CONTAINER_USER_DEFINED_THROW_CALLBACKS is NOT defined `BOOST_ASSERT_MSG(!"boost::container logic_error thrown", str)` is called and `std::abort()` if the former returns.

- If BOOST_NO_EXCEPTIONS and BOOST_CONTAINER_USER_DEFINED_THROW_CALLBACKS are defined the user must provide an implementation and the function should not return.