/*
* Class: ErrorException
* ---------------------
* This exception is thrown by calls to the error
* function. Typical code for catching errors looks like this:
*
*
* try {
* ... code in which an error might occur ...
* } catch (ErrorException & ex) {
* ... code to handle the error condition ...
* }
*
*
* If an ErrorException
is thrown at any point in the
* range of the try
(including in functions called from
* that code), control will jump immediately to the error handler.
*/
class ErrorException : public std::exception {
public:
ErrorException(std::string msg);
virtual ~ErrorException() throw ();
virtual std::string getMessage() const;
virtual const char *what() const throw ();
private:
std::string msg;
};
/*
* Function: error
* Usage: error(msg);
* ------------------
* Signals an error condition in a program by throwing an
* ErrorException
with the specified message.
*/
void error(std::string msg);
#include "private/main.h"
#endif