libhomegear-base  0.7
Base library for Homegear and Homegear family modules.
rapidxml::xml_attribute Class Reference

Class representing attribute node of XML document. More...

#include <rapidxml.h>

Inheritance diagram for rapidxml::xml_attribute:
rapidxml::xml_base

Public Member Functions

 xml_attribute ()=default
 Constructs an empty attribute with the specified type. More...
 
xml_documentdocument () const
 Gets document of which attribute is a child. More...
 
xml_attributeprevious_attribute (const char *name=nullptr, std::size_t name_size=0, bool case_sensitive=true) const
 Gets previous attribute, optionally matching attribute name. More...
 
xml_attributenext_attribute (const char *name=nullptr, std::size_t name_size=0, bool case_sensitive=true) const
 Gets next attribute, optionally matching attribute name. More...
 
- Public Member Functions inherited from rapidxml::xml_base
 xml_base ()
 
char * name () const
 Gets name of the node. More...
 
std::size_t name_size () const
 Gets size of node name, not including terminator character. More...
 
char * value () const
 Gets value of node. More...
 
std::size_t value_size () const
 Gets size of node value, not including terminator character. More...
 
void name (const char *name, std::size_t size)
 Sets name of node to a non zero-terminated string. More...
 
void name (const char *name)
 Sets name of node to a zero-terminated string. More...
 
void value (const char *value, std::size_t size)
 Sets value of node to a non zero-terminated string. More...
 
void value (const char *value)
 Sets value of node to a zero-terminated string. More...
 
xml_nodeparent () const
 Gets node parent. More...
 

Friends

class xml_node
 

Additional Inherited Members

- Static Protected Member Functions inherited from rapidxml::xml_base
static char * nullstr ()
 
- Protected Attributes inherited from rapidxml::xml_base
char * m_name
 
char * m_value
 
std::size_t m_name_size
 
std::size_t m_value_size
 
xml_nodem_parent
 

Detailed Description

Class representing attribute node of XML document.

Each attribute has name and value strings, which are available through name() and value() functions (inherited from xml_base). Note that after parse, both name and value of attribute will point to interior of source text used for parsing. Thus, this text must persist in memory for the lifetime of attribute.

Parameters
ChCharacter type to use.

Constructor & Destructor Documentation

§ xml_attribute()

rapidxml::xml_attribute::xml_attribute ( )
default

Constructs an empty attribute with the specified type.

Consider using memory_pool of appropriate xml_document if allocating attributes manually.

Member Function Documentation

§ document()

xml_document * rapidxml::xml_attribute::document ( ) const

Gets document of which attribute is a child.

Returns
Pointer to document that contains this attribute, or 0 if there is no parent document.

§ next_attribute()

xml_attribute * rapidxml::xml_attribute::next_attribute ( const char *  name = nullptr,
std::size_t  name_size = 0,
bool  case_sensitive = true 
) const

Gets next attribute, optionally matching attribute name.

Parameters
nameName of attribute to find, or 0 to return next attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
name_sizeSize of name, in characters, or 0 to have size calculated automatically from string
case_sensitiveShould name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters
Returns
Pointer to found attribute, or 0 if not found.

§ previous_attribute()

xml_attribute * rapidxml::xml_attribute::previous_attribute ( const char *  name = nullptr,
std::size_t  name_size = 0,
bool  case_sensitive = true 
) const

Gets previous attribute, optionally matching attribute name.

Parameters
nameName of attribute to find, or 0 to return previous attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
name_sizeSize of name, in characters, or 0 to have size calculated automatically from string
case_sensitiveShould name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters
Returns
Pointer to found attribute, or 0 if not found.

Friends And Related Function Documentation

§ xml_node

friend class xml_node
friend

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