eckit::Exception class

Base class for all ECMWF exceptions. All exception types shall inherit from this class, either directly or indirectly.

When inheriting from this class prefer your Exception type to be constructible from a message and a code location, e.g.:

class MyException : public Exception {
public:
    MyException(const std::string& msg, const CodeLocation& loc = {}) :
        Exception(msg, loc){}
}

Derived classes

class EvalError
class Abort
class AssertionFailed
class BadCast
class BadParameter
class BadTag
class BadValue
class Cancel
class FailedLibraryCall
class FailedSystemCall
class FileError
class eckit::Grid::InvalidGrid
class HttpError
class MapAllocatorTooSmall
class NotImplemented
class OutOfMemory
class OutOfRange
class QueueInterruptedError
class RemoteException
class Retry
class SeriousBug
class Stop
class eckit::StreamParser::Error
class TimeOut
class TooManyRetries
class URLException
class UnexpectedState
class UserError
class Exception
class Exception
struct eckit::maths::ConvexHull::Exception
class ConnectorException
class eckit::net::TCPSocket::UnknownHost
class SyntaxError
class TestException

Public static functions

static auto throwing() -> bool
static void exceptionStack(std::ostream&, bool callStack = false)

Constructors, destructors, conversion operators

Exception(const std::string& what, const CodeLocation& = {}) explicit
Constructors.
Exception()
Exception(const Exception&) defaulted
Exception(Exception&&) defaulted
~Exception() override noexcept

Public functions

auto operator=(const Exception&) -> Exception& defaulted
Operators.
auto operator=(Exception&&) -> Exception& defaulted
auto what() const -> const char* override noexcept
auto retryOnServer() const -> bool virtual
auto retryOnClient() const -> bool virtual
auto terminateApplication() const -> bool virtual
auto callStack() const -> const std::string&
auto location() const -> const CodeLocation&
auto dumpStackTrace(std::ostream& = std::cout) -> std::ostream&
auto what(T... args) -> T

Private functions

void print(std::ostream&) const virtual

Friends

auto operator<<(std::ostream& s, const Exception& p) -> std::ostream&

Function documentation

eckit::Exception::~Exception() override noexcept

Exceptions
nothing

Destructor

This website is beyond its original expiry date and the content may be out of date. The site owner has been notified and may choose to extend the expiry date and remove this banner. If you have any questions about this, please visit our support portal.