rapidxml
xml_node< Ch > Class Template Reference

#include <rapidxml.hpp>

Inherits xml_base< char >.

Public Member Functions

 xml_node (node_type type)
 
node_type type () const
 
xml_document< Ch > * document () const
 
xml_node< Ch > * first_node (const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
 
xml_node< Ch > * last_node (const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
 
xml_node< Ch > * previous_sibling (const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
 
xml_node< Ch > * next_sibling (const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
 
xml_attribute< Ch > * first_attribute (const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
 
xml_attribute< Ch > * last_attribute (const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
 
void type (node_type type)
 
void prepend_node (xml_node< Ch > *child)
 
void append_node (xml_node< Ch > *child)
 
void insert_node (xml_node< Ch > *where, xml_node< Ch > *child)
 
void remove_first_node ()
 
void remove_last_node ()
 
void remove_node (xml_node< Ch > *where)
 Removes specified child from the node.
 
void remove_all_nodes ()
 Removes all child nodes (but not attributes).
 
void prepend_attribute (xml_attribute< Ch > *attribute)
 
void append_attribute (xml_attribute< Ch > *attribute)
 
void insert_attribute (xml_attribute< Ch > *where, xml_attribute< Ch > *attribute)
 
void remove_first_attribute ()
 
void remove_last_attribute ()
 
void remove_attribute (xml_attribute< Ch > *where)
 
void remove_all_attributes ()
 Removes all attributes of node.
 
- Public Member Functions inherited from xml_base< char >
char * name () const
 
void name (const char *name, std::size_t size)
 
void name (const char *name)
 
std::size_t name_size () const
 
char * value () const
 
void value (const char *value, std::size_t size)
 
void value (const char *value)
 
std::size_t value_size () const
 
xml_node< char > * parent () const
 

Detailed Description

template<class Ch = char>
class rapidxml::xml_node< Ch >

Class representing a node of XML document. Each node may have associated name and value strings, which are available through name() and value() functions. Interpretation of name and value depends on type of the node. Type of node can be determined by using type() function.

Note that after parse, both name and value of node, if any, will point interior of source text used for parsing. Thus, this text must persist in the memory for the lifetime of node.

Parameters
ChCharacter type to use.