#include <boost/exception/all.hpp>#include <exception>#include <string>Go to the source code of this file.
Classes | |
| struct | WireCell::Exception |
| The base wire cell exception. More... | |
| struct | WireCell::ValueError |
| Thrown when a wrong value has been encountered. More... | |
| struct | WireCell::IndexError |
| Thrown when a wrong index is used. More... | |
| struct | WireCell::KeyError |
| Thrown when a wrong key or has been encountered. More... | |
| class | WireCell::IOError |
| Thrown when an error involving accessing input or output has occurred. More... | |
| class | WireCell::RuntimeError |
| Thrown when an error occurs during the data processing. More... | |
| class | WireCell::AssertionError |
| Thrown when an assertion fails. More... | |
Namespaces | |
| WireCell | |
Macros | |
| #define | THROW(e) BOOST_THROW_EXCEPTION(e) |
| #define | errstr(e) boost::diagnostic_information(e) |
Typedefs | |
| typedef boost::error_info< struct tag_errmsg, std::string > | WireCell::errmsg |
Definition at line 26 of file Exceptions.h.
Wire Cell code may throw exceptions.
The core Wire Cell code should only throw WireCell::Exception (or a subclass).
Boost exceptions are used to allow the programmer to provide dynamic information about an error and to collect file name and line number.
Exceptions should be thrown something like:
if (omg) { THROW(ValueError() << errmsg{"I didn't expect that"}); }
Definition at line 25 of file Exceptions.h.
1.8.11