errors.hpp

Langue: en

Autres versions - même langue

Version: 373026 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

ql/errors.hpp -

Classes and functions for error handling.

SYNOPSIS


#include <ql/qldefines.hpp>
#include <boost/assert.hpp>
#include <boost/current_function.hpp>
#include <boost/shared_ptr.hpp>
#include <exception>
#include <sstream>

Classes


class Error
Base error class.

Defines


#define QL_FAIL(message)
throw an error (possibly with file and line information)
#define QL_ASSERT(condition, message)
throw an error if the given condition is not verified
#define QL_REQUIRE(condition, message)
throw an error if the given pre-condition is not verified
#define QL_ENSURE(condition, message)
throw an error if the given post-condition is not verified

Detailed Description

Classes and functions for error handling.

Define Documentation

#define QL_FAIL(message)Value:

 do {     std::ostringstream _ql_msg_stream;     _ql_msg_stream << message;     throw QuantLib::Error(__FILE__,__LINE__,                           BOOST_CURRENT_FUNCTION,_ql_msg_stream.str()); } while (false)
 

throw an error (possibly with file and line information)

#define QL_ASSERT(condition, message)Value:

 if (!(condition)) {     std::ostringstream _ql_msg_stream;     _ql_msg_stream << message;     throw QuantLib::Error(__FILE__,__LINE__,                           BOOST_CURRENT_FUNCTION,_ql_msg_stream.str());  } else
 

throw an error if the given condition is not verified

#define QL_REQUIRE(condition, message)Value:

 if (!(condition)) {     std::ostringstream _ql_msg_stream;     _ql_msg_stream << message;     throw QuantLib::Error(__FILE__,__LINE__,                           BOOST_CURRENT_FUNCTION,_ql_msg_stream.str());  } else
 

throw an error if the given pre-condition is not verified

Examples: DiscreteHedging.cpp, FittedBondCurve.cpp, and swapvaluation.cpp.

#define QL_ENSURE(condition, message)Value:

 if (!(condition)) {     std::ostringstream _ql_msg_stream;     _ql_msg_stream << message;     throw QuantLib::Error(__FILE__,__LINE__,                           BOOST_CURRENT_FUNCTION,_ql_msg_stream.str());  } else
 

throw an error if the given post-condition is not verified

Author

Generated automatically by Doxygen for QuantLib from the source code.