DCL 4.0
Loading...
Searching...
No Matches
XmlElement Class Reference

#include <XMLParser.h>

Inheritance diagram for XmlElement:
XmlNode Object

Public Member Functions

virtual String toString () const
 XmlElement (XmlNode *_pParentNode, const String &_name, const StringStringArray &_attrs)
virtual ~XmlElement ()
void addChildNode (XmlNode *pNode)
const String & name () const
const StringStringArray & attrs () const
const PointerArray & children () const
const String innerText () const
const String innerXml () const
Public Member Functions inherited from XmlNode
 XmlNode (XmlNode *_pParentNode)
XmlNodeparentNode () const
Public Member Functions inherited from Object
virtual void destroy ()
String className () const
bool isInstanceOf (const std::type_info &typeinfo) const
virtual const std::type_info & typeInfo () const

Additional Inherited Members

Protected Member Functions inherited from Object
virtual ~Object ()
 Object ()

Detailed Description

Definition at line 131 of file XMLParser.h.

Constructor & Destructor Documentation

◆ XmlElement()

XmlElement::XmlElement ( XmlNode * _pParentNode,
const String & _name,
const StringStringArray & _attrs )

◆ ~XmlElement()

XmlElement::~XmlElement ( )
virtual

Definition at line 232 of file XMLParser.cpp.

233{
234 for (PointerArray::Iterator it = __children.begin();
235 it != __children.end(); it++) {
236 delete ((XmlNode*)(*it));
237 }
238}
XmlNode(XmlNode *_pParentNode)
Definition XMLParser.h:114

Member Function Documentation

◆ addChildNode()

void XmlElement::addChildNode ( XmlNode * pNode)

Definition at line 240 of file XMLParser.cpp.

241{
242 __children.add(pNode);
243}

◆ attrs()

const StringStringArray & XmlElement::attrs ( ) const
inline

Definition at line 151 of file XMLParser.h.

151{ return __attrs; }

◆ children()

const PointerArray & XmlElement::children ( ) const
inline

Definition at line 152 of file XMLParser.h.

152{ return __children; }

◆ innerText()

const String XmlElement::innerText ( ) const

Definition at line 245 of file XMLParser.cpp.

246{
247 StringBuilder r;
248
249 for (PointerArray::ConstIterator it = __children.begin();
250 it != __children.end(); it++) {
251 XmlNode* p = (XmlNode*)(*it);
253 r.append(((XmlElement*) p)->innerText());
254 }
255 else {
256 r.append(p->toString());
257 }
258 }
259
260 return r;
261}
#define CLASSINFO(class_name)
Definition Object.h:209
ByteString r
bool isInstanceOf(const std::type_info &typeinfo) const
Definition Object.cpp:168
XmlElement(XmlNode *_pParentNode, const String &_name, const StringStringArray &_attrs)
const String innerText() const
virtual String toString() const

◆ innerXml()

const String XmlElement::innerXml ( ) const

Definition at line 263 of file XMLParser.cpp.

264{
265 StringBuilder r;
266
267 for (PointerArray::ConstIterator it = __children.begin();
268 it != __children.end(); it++) {
269 XmlNode* p = (XmlNode*)(*it);
270 if (p->isInstanceOf(CLASSINFO(XmlCharsNode))) {
271 String s = p->toString();
272 r.append(String::escape(s, s.length(), String::ESCAPE_XML));
273 }
274 else {
275 r.append(((XmlNode*)(*it))->toString());
276 }
277 }
278 return r;
279}
virtual String toString() const
Definition Object.cpp:187

◆ name()

const String & XmlElement::name ( ) const
inline

Definition at line 150 of file XMLParser.h.

150{ return __name; }

◆ toString()

virtual String XmlElement::toString ( ) const
virtual

Reimplemented from Object.


The documentation for this class was generated from the following files: