Classe de base d'une exception. Plus de détails...
Fonctions membres publiques | |
Exception (const String &name, const String &where) | |
Exception (const String &name, const TraceInfo &where) | |
Exception (const String &name, const String &where, 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 collective de l'expression. | |
void | setAdditionalInfo (const String &v) |
Positionne les infos supplémentaires. | |
const String & | additionalInfo () const |
Retourne les infos supplémentaires. | |
const StackTrace & | stackTrace () const |
Pile d'appel au moment de l'exception (nécessite un service de stacktrace) | |
const String & | stackTraceString () const |
Pile d'appel au moment de l'exception (nécessite un service de stacktrace) | |
const String & | message () const |
Message de l'exception. | |
const String & | where () const |
Localisation de l'exception. | |
const String & | name () 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 | |
const Exception & | operator= (const Exception &) |
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 |
Attributs privés statiques | |
static std::atomic< Int32 > | m_nb_pending_exception |
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.
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.
Construit une exception de nom name et envoyée depuis la fonction where.
Définition à la ligne 133 du fichier arccore/src/base/arccore/base/Exception.cc.
Construit une exception de nom name, envoyée depuis la fonction where et avec le message message.
Définition à la ligne 87 du fichier arccore/src/base/arccore/base/Exception.cc.
Arccore::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 147 du fichier arccore/src/base/arccore/base/Exception.cc.
Arccore::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 102 du fichier arccore/src/base/arccore/base/Exception.cc.
Arccore::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 162 du fichier arccore/src/base/arccore/base/Exception.cc.
Arccore::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 117 du fichier arccore/src/base/arccore/base/Exception.cc.
Arccore::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 177 du fichier arccore/src/base/arccore/base/Exception.cc.
Arccore::Exception::Exception | ( | const Exception & | from | ) |
Constructeur par copie.
Définition à la ligne 193 du fichier arccore/src/base/arccore/base/Exception.cc.
|
override |
Libère les ressources.
Définition à la ligne 208 du fichier arccore/src/base/arccore/base/Exception.cc.
|
private |
Définition à la ligne 293 du fichier arccore/src/base/arccore/base/Exception.cc.
|
private |
Définition à la ligne 217 du fichier arccore/src/base/arccore/base/Exception.cc.
|
private |
Définition à la ligne 229 du fichier arccore/src/base/arccore/base/Exception.cc.
|
inline |
Retourne les infos supplémentaires.
Définition à la ligne 121 du fichier arccore/src/base/arccore/base/Exception.h.
|
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.
Réimplémentée dans Arcane::BadVariantTypeException, Arcane::BadOperandException, Arcane::BadOperationException, Arcane::LicenseErrorException, Arcane::BadAlignmentException, Arcane::GoBackwardException, Arcane::InvalidArgumentException, Arcane::IOException, Arcane::ParallelFatalErrorException, Arcane::SignalException, Arccore::NotImplementedException, Arccore::NotSupportedException, Arccore::TimeoutException, Arcane::BadIDException, Arcane::BadItemIdException, Arcane::InternalErrorException, Arcane::BadVariableKindTypeException, Arcane::BadPartialVariableItemGroupNameException, Arcane::UnknownItemTypeException, Arcane::BadReferenceException, Arcane::ReaderWriterException, Arcane::AssertionException, Arcane::CaseOptionException, Arcane::BadExpressionException, Arccore::FatalErrorException, et Arccore::IndexOutOfRangeException.
Définition à la ligne 275 du fichier arccore/src/base/arccore/base/Exception.cc.
|
static |
Indique si des exceptions sont en cours.
Définition à la ligne 256 du fichier arccore/src/base/arccore/base/Exception.cc.
|
inline |
Vrai s'il s'agit d'une erreur collective (concerne tous les processeurs)
Définition à la ligne 112 du fichier arccore/src/base/arccore/base/Exception.h.
|
inline |
Message de l'exception.
Définition à la ligne 135 du fichier arccore/src/base/arccore/base/Exception.h.
|
inline |
Nom de l'exception.
Définition à la ligne 141 du fichier arccore/src/base/arccore/base/Exception.h.
Cette méthode est privée pour interdire d'affecter une exception.
|
inline |
Positionne les infos supplémentaires.
Définition à la ligne 118 du fichier arccore/src/base/arccore/base/Exception.h.
|
inline |
Positionne l'état collective de l'expression.
Définition à la ligne 115 du fichier arccore/src/base/arccore/base/Exception.h.
Référencé par Arcane::CaseOptionException::CaseOptionException(), Arcane::CaseOptionException::CaseOptionException(), Arcane::CaseOptionException::CaseOptionException(), et Arcane::CaseOptionException::CaseOptionException().
|
inlineprotected |
Positionne le message de l'exception.
Définition à la ligne 153 du fichier arccore/src/base/arccore/base/Exception.h.
|
inline |
Pile d'appel au moment de l'exception (nécessite un service de stacktrace)
Définition à la ligne 124 du fichier arccore/src/base/arccore/base/Exception.h.
|
inline |
Pile d'appel au moment de l'exception (nécessite un service de stacktrace)
Définition à la ligne 127 du fichier arccore/src/base/arccore/base/Exception.h.
|
static |
Définition à la ligne 266 du fichier arccore/src/base/arccore/base/Exception.cc.
|
inline |
Localisation de l'exception.
Définition à la ligne 138 du fichier arccore/src/base/arccore/base/Exception.h.
|
virtual |
Définition à la ligne 238 du fichier arccore/src/base/arccore/base/Exception.cc.
|
private |
Définition à la ligne 164 du fichier arccore/src/base/arccore/base/Exception.h.
|
private |
Définition à la ligne 165 du fichier arccore/src/base/arccore/base/Exception.h.
|
private |
Définition à la ligne 163 du fichier arccore/src/base/arccore/base/Exception.h.
|
private |
Définition à la ligne 160 du fichier arccore/src/base/arccore/base/Exception.h.
|
staticprivate |
Définition à la ligne 173 du fichier arccore/src/base/arccore/base/Exception.h.
|
private |
Définition à la ligne 162 du fichier arccore/src/base/arccore/base/Exception.h.
|
private |
Définition à la ligne 161 du fichier arccore/src/base/arccore/base/Exception.h.