...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::container::throw_logic_error
// In header: <boost/container/throw_exception.hpp> BOOST_NORETURN void throw_logic_error(const char * str);
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.