hpp-util  4.9.0
Debugging tools for the HPP project.
exception.hh File Reference
#include <iosfwd>
#include <stdexcept>
#include <string>
#include <hpp/util/config.hh>
Include dependency graph for exception.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  hpp::Exception
 Main exception class for HPP. More...
 

Namespaces

 hpp
 

Macros

#define HPP_THROW_EXCEPTION_(MSG)   throw ::hpp::Exception (MSG, __FILE__, __LINE__)
 Launch a HPP exception. More...
 
#define HPP_THROW_EXCEPTION(TYPE, MSG)   throw TYPE (MSG, __FILE__, __LINE__)
 Launch a HPP exception (generic macro). More...
 
#define HPP_MAKE_EXCEPTION(EXTRA_QUALIFIER, TYPE)
 Define a custom exception. More...
 
#define HPP_MAKE_EXCEPTION_NO_QUALIFIER(TYPE)
 Define a custom exception without extra qualifier. More...
 

Functions

HPP_UTIL_DLLAPI std::ostream & hpp::operator<< (std::ostream &o, const Exception &exception)
 Override operator<< to handle exception display. More...
 

Macro Definition Documentation

◆ HPP_MAKE_EXCEPTION

#define HPP_MAKE_EXCEPTION (   EXTRA_QUALIFIER,
  TYPE 
)
Value:
class EXTRA_QUALIFIER TYPE : public ::hpp::Exception \
{ \
public: \
TYPE (const std::string& message, \
const std::string& file, \
unsigned line) throw () \
: ::hpp::Exception (message, file, line) \
{} \
}
Main exception class for HPP.
Definition: exception.hh:26

Define a custom exception.

◆ HPP_MAKE_EXCEPTION_NO_QUALIFIER

#define HPP_MAKE_EXCEPTION_NO_QUALIFIER (   TYPE)
Value:
class TYPE : public ::hpp::Exception \
{ \
public: \
TYPE (const std::string& message, \
const std::string& file, \
unsigned line) throw () \
: ::hpp::Exception (message, file, line) \
{} \
}
Main exception class for HPP.
Definition: exception.hh:26

Define a custom exception without extra qualifier.

◆ HPP_THROW_EXCEPTION

#define HPP_THROW_EXCEPTION (   TYPE,
  MSG 
)    throw TYPE (MSG, __FILE__, __LINE__)

Launch a HPP exception (generic macro).

◆ HPP_THROW_EXCEPTION_

#define HPP_THROW_EXCEPTION_ (   MSG)    throw ::hpp::Exception (MSG, __FILE__, __LINE__)

Launch a HPP exception.