SimGrid  3.18
Versatile Simulation of Distributed Systems
exception.hpp File Reference
#include <string>
#include <type_traits>
#include <vector>
#include <xbt/base.h>
#include <xbt/backtrace.h>
#include <xbt/backtrace.hpp>
#include <xbt/log.h>
#include <xbt/misc.h>
#include <xbt/virtu.h>

Classes

class  simgrid::xbt::ThrowPoint
 The location of where an exception has been throwed. More...
 
class  simgrid::xbt::WithContextException
 A base class for exceptions with context. More...
 
class  simgrid::xbt::WithContext< E >
 Internal class used to mixin an exception E with WithContextException. More...
 

Namespaces

 simgrid
 Alltoall Bruck.
 
 simgrid::xbt
 

Macros

#define XBT_THROW_POINT   ::simgrid::xbt::ThrowPoint(__FILE__, __LINE__, __func__)
 Create a ThrowPoint with (FILE, LINE, func) More...
 
#define XBT_THROW(e)   throw WithContext<E>(std::move(exception), throwpoint, simgrid::xbt::backtrace())
 Throw a C++ exception with some context. More...
 
#define XBT_THROW_NESTED(e)   std::throw_with_nested(WithContext<E>(std::move(exception), throwpoint, simgrid::xbt::backtrace()))
 Throw a C++ exception with a context and a nexted exception/cause. More...
 

Typedefs

typedef std::vector< xbt_backtrace_location_tsimgrid::xbt::Backtrace
 A backtrace. More...
 

Macro Definition Documentation

◆ XBT_THROW_POINT

#define XBT_THROW_POINT   ::simgrid::xbt::ThrowPoint(__FILE__, __LINE__, __func__)

Create a ThrowPoint with (FILE, LINE, func)