Arcane  v4.1.0.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arccore::Exception

Classe de base d'une exception. Plus de détails...

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/base/arccore/base/Exception.h>

+ Graphe d'héritage de Arccore::Exception:
+ Graphe de collaboration de Arccore::Exception:

Fonctions membres publiques

Exceptionoperator= (const Exception &)=delete
 
 Exception (const String &name, const String &where)
 
 Exception (const String &name, const TraceInfo &where)
 
 Exception (const String &name, const String &awhere, const String &message)
 
 Exception (const String &name, const TraceInfo &trace, const String &message)
 
 Exception (const String &name, const String &where, const StackTrace &stack_trace)
 
 Exception (const String &name, const TraceInfo &where, const StackTrace &stack_trace)
 
 Exception (const String &name, const String &where, const String &message, const StackTrace &stack_trace)
 
 Exception (const String &name, const TraceInfo &trace, const String &message, const StackTrace &stack_trace)
 
 Exception (const Exception &)
 Constructeur par copie.
 
 ~Exception () ARCCORE_NOEXCEPT override
 Libère les ressources.
 
virtual void write (std::ostream &o) const
 
bool isCollective () const
 Vrai s'il s'agit d'une erreur collective (concerne tous les processeurs)
 
void setCollective (bool v)
 Positionne l'état collectif de l'expression.
 
void setAdditionalInfo (const String &v)
 Positionne les infos supplémentaires.
 
const StringadditionalInfo () const
 Retourne les infos supplémentaires.
 
const StackTracestackTrace () const
 Pile d'appel au moment de l'exception (nécessite un service de stacktrace)
 
const StringstackTraceString () const
 Pile d'appel au moment de l'exception (nécessite un service de stacktrace)
 
const Stringmessage () const
 Message de l'exception.
 
const Stringwhere () const
 Localisation de l'exception.
 
const Stringname () const
 Nom de l'exception.
 

Fonctions membres publiques statiques

static bool hasPendingException ()
 Indique si des exceptions sont en cours.
 
static void staticInit ()
 

Fonctions membres protégées

virtual void explain (std::ostream &o) const
 Explique la cause de l'exception dans le flot o.
 
void setMessage (const String &msg)
 Positionne le message de l'exception.
 

Fonctions membres privées

void _setStackTrace ()
 
void _setWhere (const TraceInfo &where)
 
void _checkExplainAndPause ()
 

Attributs privés

String m_name
 
String m_where
 
StackTrace m_stack_trace
 
String m_message
 
String m_additional_info
 
bool m_is_collective = false
 

Attributs privés statiques

static std::atomic< Int32m_nb_pending_exception
 

Amis

ARCCORE_BASE_EXPORT std::ostream & operator<< (std::ostream &o, const Exception &ex)
 Opérateur d'écriture.
 

Description détaillée

Classe de base d'une exception.

Les exceptions sont gérées par le mécanisme try et catch du C++. Toutes les exceptions lancées dans le code doivent dériver de cette classe.

Une exception peut être collective. Cela signifie qu'elle sera lancée par tous les processeurs. Il est possible dans ce cas de n'afficher qu'une seule fois le message et éventuellement d'arrêter proprement l'exécution.

Définition à la ligne 46 du fichier arccore/src/base/arccore/base/Exception.h.

Documentation des constructeurs et destructeur

◆ Exception() [1/9]

Arcane::Exception::Exception ( const String & name,
const String & where )

Construit une exception de nom name et envoyée depuis la fonction where.

Définition à la ligne 73 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ Exception() [2/9]

Arcane::Exception::Exception ( const String & name,
const TraceInfo & where )

Construit une exception de nom name et envoyée depuis la fonction awhere.

Définition à la ligne 129 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ Exception() [3/9]

Arcane::Exception::Exception ( const String & name,
const String & awhere,
const String & message )

Construit une exception de nom name, envoyée depuis la fonction awhere et avec le message message.

Définition à la ligne 86 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ Exception() [4/9]

Arcane::Exception::Exception ( const String & name,
const TraceInfo & trace,
const String & message )

Construit une exception de nom name, envoyée depuis la fonction where et avec le message message.

Définition à la ligne 142 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ Exception() [5/9]

Arcane::Exception::Exception ( const String & name,
const String & where,
const StackTrace & stack_trace )

Construit une exception de nom name et envoyée depuis la fonction where.

Définition à la ligne 100 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ Exception() [6/9]

Arcane::Exception::Exception ( const String & name,
const TraceInfo & where,
const StackTrace & stack_trace )

Construit une exception de nom name et envoyée depuis la fonction where.

Définition à la ligne 157 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ Exception() [7/9]

Arcane::Exception::Exception ( const String & name,
const String & where,
const String & message,
const StackTrace & stack_trace )

Construit une exception de nom name, envoyée depuis la fonction where et avec le message message.

Définition à la ligne 114 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ Exception() [8/9]

Arcane::Exception::Exception ( const String & name,
const TraceInfo & trace,
const String & message,
const StackTrace & stack_trace )

Construit une exception de nom name, envoyée depuis la fonction where et avec le message message.

Définition à la ligne 172 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ Exception() [9/9]

Arcane::Exception::Exception ( const Exception & from)

Constructeur par copie.

Définition à la ligne 188 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ ~Exception()

Arcane::Exception::~Exception ( )
override

Libère les ressources.

Définition à la ligne 203 du fichier arccore/src/base/arccore/base/Exception.cc.

Documentation des fonctions membres

◆ _checkExplainAndPause()

void Arcane::Exception::_checkExplainAndPause ( )
private

Définition à la ligne 288 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ _setStackTrace()

void Arcane::Exception::_setStackTrace ( )
private

Définition à la ligne 212 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ _setWhere()

void Arcane::Exception::_setWhere ( const TraceInfo & where)
private

Définition à la ligne 224 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ additionalInfo()

const String & Arcane::Exception::additionalInfo ( ) const
inline

Retourne les infos supplémentaires.

Définition à la ligne 117 du fichier arccore/src/base/arccore/base/Exception.h.

◆ explain()

void Arcane::Exception::explain ( std::ostream & o) const
protectedvirtual

Explique la cause de l'exception dans le flot o.

Cette méthode permet d'ajouter des informations supplémentaires au message d'exception.

Définition à la ligne 270 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ hasPendingException()

bool Arcane::Exception::hasPendingException ( )
static

Indique si des exceptions sont en cours.

Définition à la ligne 251 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ isCollective()

bool Arcane::Exception::isCollective ( ) const
inline

Vrai s'il s'agit d'une erreur collective (concerne tous les processeurs)

Définition à la ligne 108 du fichier arccore/src/base/arccore/base/Exception.h.

◆ message()

const String & Arcane::Exception::message ( ) const
inline

Message de l'exception.

Définition à la ligne 129 du fichier arccore/src/base/arccore/base/Exception.h.

◆ name()

const String & Arcane::Exception::name ( ) const
inline

Nom de l'exception.

Définition à la ligne 135 du fichier arccore/src/base/arccore/base/Exception.h.

◆ setAdditionalInfo()

void Arcane::Exception::setAdditionalInfo ( const String & v)
inline

Positionne les infos supplémentaires.

Définition à la ligne 114 du fichier arccore/src/base/arccore/base/Exception.h.

◆ setCollective()

void Arcane::Exception::setCollective ( bool v)
inline

Positionne l'état collectif de l'expression.

Définition à la ligne 111 du fichier arccore/src/base/arccore/base/Exception.h.

◆ setMessage()

void Arcane::Exception::setMessage ( const String & msg)
inlineprotected

Positionne le message de l'exception.

Définition à la ligne 157 du fichier arccore/src/base/arccore/base/Exception.h.

◆ stackTrace()

const StackTrace & Arcane::Exception::stackTrace ( ) const
inline

Pile d'appel au moment de l'exception (nécessite un service de stacktrace)

Définition à la ligne 120 du fichier arccore/src/base/arccore/base/Exception.h.

◆ stackTraceString()

const String & Arcane::Exception::stackTraceString ( ) const
inline

Pile d'appel au moment de l'exception (nécessite un service de stacktrace)

Définition à la ligne 123 du fichier arccore/src/base/arccore/base/Exception.h.

◆ staticInit()

void Arcane::Exception::staticInit ( )
static

Définition à la ligne 261 du fichier arccore/src/base/arccore/base/Exception.cc.

◆ where()

const String & Arcane::Exception::where ( ) const
inline

Localisation de l'exception.

Définition à la ligne 132 du fichier arccore/src/base/arccore/base/Exception.h.

◆ write()

void Arcane::Exception::write ( std::ostream & o) const
virtual

Définition à la ligne 233 du fichier arccore/src/base/arccore/base/Exception.cc.

Documentation des fonctions amies et associées

◆ operator<<

ARCCORE_BASE_EXPORT std::ostream & operator<< ( std::ostream & o,
const Exception & ex )
friend

Opérateur d'écriture.

Définition à la ligne 278 du fichier arccore/src/base/arccore/base/Exception.cc.

Documentation des données membres

◆ m_additional_info

String Arcane::Exception::m_additional_info
private

Définition à la ligne 168 du fichier arccore/src/base/arccore/base/Exception.h.

◆ m_is_collective

bool Arcane::Exception::m_is_collective = false
private

Définition à la ligne 169 du fichier arccore/src/base/arccore/base/Exception.h.

◆ m_message

String Arcane::Exception::m_message
private

Définition à la ligne 167 du fichier arccore/src/base/arccore/base/Exception.h.

◆ m_name

String Arcane::Exception::m_name
private

Définition à la ligne 164 du fichier arccore/src/base/arccore/base/Exception.h.

◆ m_nb_pending_exception

std::atomic< Int32 > Arcane::Exception::m_nb_pending_exception
staticprivate

Définition à la ligne 177 du fichier arccore/src/base/arccore/base/Exception.h.

◆ m_stack_trace

StackTrace Arcane::Exception::m_stack_trace
private

Définition à la ligne 166 du fichier arccore/src/base/arccore/base/Exception.h.

◆ m_where

String Arcane::Exception::m_where
private

Définition à la ligne 165 du fichier arccore/src/base/arccore/base/Exception.h.


La documentation de cette classe a été générée à partir des fichiers suivants :