12#ifndef ARCANE_CORE_XMLNODE_H
13#define ARCANE_CORE_XMLNODE_H
17#include "arcane/utils/String.h"
18#include "arcane/core/Dom.h"
37class XmlNodeConstIterator;
99 PROCESSING_INSTRUCTION = 7,
107 DOCUMENT_FRAGMENT = 11,
116 explicit XmlNode(IRessourceMng* m) : m_rm(m), m_node() {}
117 XmlNode() : m_rm(nullptr), m_node() {}
122 inline iterator begin();
124 inline iterator end();
126 inline const_iterator begin()
const;
128 inline const_iterator end()
const;
141 String xpathFullName()
const;
144 bool isNamed(
const String& name)
const;
153 String value()
const;
160 Integer valueAsInteger(
bool throw_exception=
false)
const;
167 Int64 valueAsInt64(
bool throw_exception=
false)
const;
176 bool valueAsBoolean(
bool throw_exception=
false)
const;
182 Real valueAsReal(
bool throw_exception=
false)
const;
190 void setValue(
const String& value);
197 String attrValue(
const String& name,
bool throw_exception=
false)
const;
200 void setAttrValue(
const String& name,
const String& value);
208 XmlNode attr(
const String& name,
bool throw_exception=
false)
const;
215 XmlNode forceAttr(
const String& name);
221 void removeAttr(
const String& name)
const;
227 XmlNode documentElement()
const;
233 XmlNode ownerElement()
const;
244 XmlNode child(
const String& name)
const;
252 XmlNode expectedChild(
const String& name)
const;
255 XmlNodeList children(
const String& name)
const;
258 XmlNodeList children()
const;
290 void operator++() { m_node = m_node.nextSibling(); }
291 void operator--() { m_node = m_node.previousSibling(); }
294 bool null()
const {
return m_node._null(); }
295 bool operator!()
const {
return null(); }
300 void assignDomNode(
const dom::Node& node);
371 XmlNode ownerDocument()
const {
return XmlNode(m_rm,m_node.ownerDocument()); }
373 IRessourceMng* rm()
const {
return m_rm; }
382 String _value()
const;
383 XmlNode _build(
const dom::Node& node)
const;
384 XmlNode _nullNode()
const;
385 void _setNode(
const dom::Node& n) { m_node = n; }
386 inline void _throwBadConvert(
const char* type_name,
const String& value)
const;
416 return n1.domNode()==
n2.domNode();
420operator!=(
const XmlNode& n1,
const XmlNode& n2)
422 return n1.domNode()!=n2.domNode();
Interface d'un gestionnaire de ressource.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
int difference_type
Type d'une distance entre itérateur éléments du tableau.
Integer size_type
Type indexant le tableau.
XmlNode value_type
Type des éléments du tableau.
value_type & reference
Type référence d'un élément du tableau.
const value_type & const_reference
Type référence constante d'un élément du tableau.
value_type * pointer
Type pointeur d'un élément du tableau.
const value_type * const_pointer
Type pointeur constant d'un élément du tableau.
XmlNodeIterator iterator
Type de l'itérateur sur un élément du tableau.
XmlNode prev() const
Noeud précédent (previousSibling())
XmlNodeConstIterator const_iterator
Type de l'itérateur constant sur un élément du tableau.
void append(const XmlNode &child_node)
Ajoute child_node comme fils de ce noeud.
IterT< XmlNode > iter
Type d'un itérateur sur tout le tableau.
XmlNode front() const
Premier fils.
bool null() const
Vrai si le noeud est nul.
XmlNode next() const
Noeud suivant (nextSibling())
eType
NodeType An integer indicating which type of node this is.
ConstIterT< XmlNode > const_iter
Type d'un itérateur constant sur tout le tableau.
XmlNode parent() const
Parent de ce noeud (null si aucun)
XmlNode last() const
Dernier fils.
dom::Node domNode() const
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Int32 Integer
Type représentant un entier.