4 #ifndef RUDIMENTS_XMLDOMNODE_H
5 #define RUDIMENTS_XMLDOMNODE_H
7 #include <rudiments/private/xmldomnodeincludes.h>
10 NULL_XMLDOMNODETYPE=0,
13 ATTRIBUTE_XMLDOMNODETYPE,
15 COMMENT_XMLDOMNODETYPE,
20 class xmldomnodeprivate;
141 const char *name,
const char *value);
160 void cascadeOnDelete();
165 void dontCascadeOnDelete();
169 xmldomnodetype getType()
const;
172 const char *getName()
const;
175 const char *getValue()
const;
188 uint64_t getPosition()
const;
202 xmldomnode *getPreviousTagSibling(
const char *name)
const;
213 xmldomnode *getPreviousTagSibling(
const char *name,
214 const char *attributename,
215 const char *attributevalue)
const;
229 xmldomnode *getNextTagSibling(
const char *name)
const;
240 xmldomnode *getNextTagSibling(
const char *name,
241 const char *attributename,
242 const char *attributevalue)
const;
249 const char *
const *
set)
const;
253 uint64_t getChildCount()
const;
261 xmldomnode *getChild(uint64_t position)
const;
272 const char *attributename,
273 const char *attributevalue)
284 xmldomnode *getFirstTagChild(
const char *name)
const;
295 xmldomnode *getFirstTagChild(
const char *name,
296 const char *attributename,
297 const char *attributevalue)
305 const char *
const *
set)
const;
309 uint64_t getAttributeCount()
const;
313 xmldomnode *getAttribute(
const char *name)
const;
317 xmldomnode *getAttribute(uint64_t position)
const;
321 const char *getAttributeValue(
const char *name)
const;
326 const char *getAttributeValue(uint64_t position)
const;
335 constnamevaluepairs *getAttributes()
const;
340 void setAttributeValue(
const char *name,
346 void setAttributeValue(
const char *name,
352 void setAttributeValue(
const char *name,
360 bool isNullNode()
const;
364 void setType(xmldomnodetype type);
367 void setName(
const char *name);
370 void setValue(
const char *value);
376 void setPreviousSibling(
xmldomnode *previous);
384 bool insertChild(
xmldomnode *child, uint64_t position);
396 xmldomnode *insertTag(
const char *tag, uint64_t position);
413 bool deleteChild(uint64_t position);
420 bool deleteChildren();
426 bool insertText(
const char *value, uint64_t position);
430 bool appendText(
const char *value);
445 bool insertAttribute(
const char *name,
const char *value,
450 bool appendAttribute(
const char *name,
const char *value);
455 bool deleteAttribute(uint64_t position);
461 bool deleteAttribute(
const char *name);
501 xmldomnode *getChildByPath(
const char *path)
const;
511 xmldomnode *getAttributeByPath(
const char *path,
512 uint64_t position)
const;
521 xmldomnode *getAttributeByPath(
const char *path,
522 const char *name)
const;
532 const char *getAttributeValueByPath(
const char *path,
533 uint64_t position)
const;
543 const char *getAttributeValueByPath(
const char *path,
544 const char *name)
const;
547 void setData(
void *data);
553 #include <rudiments/private/xmldomnode.h>