Heidelberg Educational Numerics Library Version 0.27 (from 15 March 2021)
|
A few common exception classes. More...
#include <string>
#include <sstream>
Go to the source code of this file.
Classes | |
class | hdnum::Exception |
Base class for Exceptions. More... | |
class | hdnum::IOError |
Default exception class for I/O errors. More... | |
class | hdnum::MathError |
Default exception class for mathematical errors. More... | |
class | hdnum::RangeError |
Default exception class for range errors. More... | |
class | hdnum::NotImplemented |
Default exception for dummy implementations. More... | |
class | hdnum::SystemError |
Default exception class for OS errors. More... | |
class | hdnum::OutOfMemoryError |
Default exception if memory allocation fails. More... | |
class | hdnum::InvalidStateException |
Default exception if a function was called while the object is not in a valid state for that function. More... | |
class | hdnum::ErrorException |
General Error. More... | |
Macros | |
#define | THROWSPEC(E) #E << ": " |
#define | HDNUM_THROW(E, m) |
#define | HDNUM_ERROR(m) |
Functions | |
std::ostream & | hdnum::operator<< (std::ostream &stream, const Exception &e) |
A few common exception classes.
This file defines a common framework for generating exception subclasses and to throw them in a simple manner. Taken from the DUNE project www.dune-project.org
#define HDNUM_ERROR | ( | m | ) |
#define HDNUM_THROW | ( | E, | |
m ) |
Macro to throw an exception
E | exception class derived from Dune::Exception |
m | reason for this exception in ostream-notation |
Example:
DUNE_THROW automatically adds information about the exception thrown to the text. If DUNE_DEVEL_MODE is defined more detail about the function where the exception happened is included. This mode can be activated via the --enable-dunedevel
switch of ./configure