Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
CaseOptionError.cc
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2023 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* CaseOptionError.cc (C) 2000-2023 */
9/* */
10/* Erreur dans le jeu de données. */
11/*---------------------------------------------------------------------------*/
12/*---------------------------------------------------------------------------*/
13
14#include "arcane/utils/Iostream.h"
15#include "arcane/utils/StringBuilder.h"
16
17#include "arcane/CaseOptionError.h"
18#include "arcane/ICaseDocument.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
30CaseOptionError(const TraceInfo& where,const String& node_name,
31 const String& message,bool is_collective)
32: m_func_info(where)
33, m_node_name(node_name)
34, m_message(message)
35, m_is_collective(is_collective)
36{
37}
38
39/*---------------------------------------------------------------------------*/
40/*---------------------------------------------------------------------------*/
41
44 const TraceInfo& where,
45 const String& node_name,
46 const XmlNode& parent)
47{
49 String message = "Element or attribute missing";
50
51 document->addError(CaseOptionError(where,full_node_name,message,true));
52}
53
54/*---------------------------------------------------------------------------*/
55/*---------------------------------------------------------------------------*/
56
59 const TraceInfo& where,const String& node_name,
60 const XmlNode& parent,const String& value,
61 const String& type_name)
62{
64
65 String message = String::format("Invalid value. Impossible to convert the string"
66 " '{0}' to the type '{1}'.",value,type_name);
67
68 document->addError(CaseOptionError(where,full_node_name,message,true));
69}
70
71/*---------------------------------------------------------------------------*/
72/*---------------------------------------------------------------------------*/
73
76 const TraceInfo& where,const String& node_name,
77 const XmlNode& parent,const String& value,
79{
80 String full_node_name = parent.xpathFullName() + " /" + node_name;
81
82 String message = String::format("Invalid value. Impossible to convert the string"
83 " '{0}' to the type '{1}' (admissible values: {2}). ",value,
84 type_name,String::join(", ",valid_values));
85 message = message + "\nSpaces at the beginning and the end of a string matter.\nPlease check that there is none.";
86 document->addError(CaseOptionError(where,full_node_name,message,true));
87}
88
89/*---------------------------------------------------------------------------*/
90/*---------------------------------------------------------------------------*/
91
94 const TraceInfo& where,const String& node_name,
95 const String& message,bool is_collective)
96{
97 document->addError(CaseOptionError(where,node_name,message,is_collective));
98}
99
100/*---------------------------------------------------------------------------*/
101/*---------------------------------------------------------------------------*/
102
105 const TraceInfo& where,const String& node_name,
106 const String& message,bool is_collective)
107{
108 document->addWarning(CaseOptionError(where,node_name,message,is_collective));
109}
110
111/*---------------------------------------------------------------------------*/
112/*---------------------------------------------------------------------------*/
113
114} // End namespace Arcane
115
116/*---------------------------------------------------------------------------*/
117/*---------------------------------------------------------------------------*/
Erreur dans le jeu de données.
static void addWarning(ICaseDocumentFragment *document, const TraceInfo &where, const String &node_name, const String &message, bool is_collective=false)
Erreur générique.
static void addError(ICaseDocumentFragment *document, const TraceInfo &where, const String &node_name, const String &message, bool is_collective=false)
Erreur générique.
CaseOptionError(const TraceInfo &where, const String &node_name, const String &message, bool is_collective=false)
Erreur générique.
static void addInvalidTypeError(ICaseDocumentFragment *document, const TraceInfo &where, const String &node_name, const XmlNode &parent, const String &value, const String &expected_type)
Erreur lorsqu'une valeur d'une jeu de données n'est pas du bon type. Cette erreur est collective.
static void addOptionNotFoundError(ICaseDocumentFragment *document, const TraceInfo &where, const String &node_name, const XmlNode &parent)
Erreur lorsqu'une option du jeu de données n'est pas trouvée. Cette erreur est collective.
Interface d'une partie d'un jeu de données.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
Noeud d'un arbre DOM.
Definition XmlNode.h:51
String xpathFullName() const
Nom XPath du noeud avec ces ancêtres.
Definition XmlNode.cc:143
Vue constante d'un tableau de type T.
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-