diff --git a/doc/BOOST_THROW_EXCEPTION.html b/doc/BOOST_THROW_EXCEPTION.html new file mode 100644 index 0000000..d96f297 --- /dev/null +++ b/doc/BOOST_THROW_EXCEPTION.html @@ -0,0 +1,57 @@ + + +
+ +#include <boost/throw_exception.hpp>
+#if !defined( BOOST_NO_EXCEPTIONS ) && !defined( BOOST_EXCEPTION_DISABLE ) + #include <boost/exception/exception.hpp> + #include <boost/current_function.hpp> + #define BOOST_THROW_EXCEPTION(x)\ + ::boost::throw_exception( ::boost::enable_error_info(x) <<\ + ::boost::throw_function(BOOST_CURRENT_FUNCTION) <<\ + ::boost::throw_file(__FILE__) <<\ + ::boost::throw_line((int)__LINE__) ) +#else + #define BOOST_THROW_EXCEPTION(x) ::boost::throw_exception(x) +#endif+
This macro takes an exception object, records BOOST_CURRENT_FUNCTION, __FILE__ and __LINE__ in it, and forwards it to throw_exception. To recover this information at the catch site, use get_error_info; the information is also included in the message returned by diagnostic_information.
+namespace
boost
{
- #ifdef BOOST_NO_EXCEPTIONS
-
+#ifdef BOOST_NO_EXCEPTIONS
void throw_exception( std::exception const & e ); // user defined
-
- #else
-
+#else
template <class E>
void throw_exception( E const & e );
-
- #endif
+#endif
}
E must derive publicly from std::exception.
@@ -44,8 +40,10 @@ boost