| pugixml 0.9 manual | Overview | Installation | Document: Object model · Loading · Accessing · Modifying · Saving | XPath | API Reference | Table of Contents | 
This is the reference for all macros, types, enumerations, classes and functions in pugixml. Each symbol is a link that leads to the relevant section of the manual.
Macros:
#define PUGIXML_WCHAR_MODE
        #define PUGIXML_NO_XPATH
        #define PUGIXML_NO_STL
        #define PUGIXML_NO_EXCEPTIONS
        #define PUGIXML_API
        #define PUGIXML_CLASS
        #define PUGIXML_FUNCTION
        Types:
typedef configuration-defined
          type char_t;
        typedef configuration-defined
          type string_t;
        typedef void* (*allocation_function)(size_t size);
        typedef void
          (*deallocation_function)(void*
          ptr);
        Enumerations:
enum xml_node_type
          
        enum xml_parse_status
          
        enum xml_encoding
          
        enum xpath_value_type
          
        Constants:
Classes:
class xml_attribute
          (); bool empty() const;
              operator unspecified_bool_type() const; bool operator==(const xml_attribute&
                r)
                const;
              bool operator!=(const xml_attribute&
                r)
                const;
              bool operator<(const xml_attribute&
                r)
                const;
              bool operator>(const xml_attribute&
                r)
                const;
              bool operator<=(const xml_attribute&
                r)
                const;
              bool operator>=(const xml_attribute&
                r)
                const;
                xml_attribute next_attribute() const;
              xml_attribute previous_attribute() const; const char_t* name() const;
              const char_t* value() const; int as_int() const;
              unsigned int
                as_uint() const;
              double as_double() const;
              float as_float() const;
              bool as_bool() const; bool set_name(const char_t*
                rhs);
              bool set_value(const char_t*
                rhs);
              bool set_value(int rhs);
              bool set_value(unsigned
                int rhs);
              bool set_value(double
                rhs);
              bool set_value(bool rhs);
                xml_attribute&
                operator=(const char_t*
                rhs);
              xml_attribute&
                operator=(int rhs);
              xml_attribute&
                operator=(unsigned
                int rhs);
              xml_attribute&
                operator=(double
                rhs);
              xml_attribute&
                operator=(bool rhs);
                class xml_node
          ();
                bool empty() const;
              operator unspecified_bool_type() const; bool operator==(const xml_node&
                r)
                const;
              bool operator!=(const xml_node&
                r)
                const;
              bool operator<(const xml_node&
                r)
                const;
              bool operator>(const xml_node&
                r)
                const;
              bool operator<=(const xml_node&
                r)
                const;
              bool operator>=(const xml_node&
                r)
                const;
                xml_node_type type()
                const;
                const char_t* name() const;
              const char_t* value() const; xml_node parent() const;
              xml_node first_child() const;
              xml_node last_child() const;
              xml_node next_sibling() const;
              xml_node previous_sibling() const; xml_attribute first_attribute() const;
              xml_attribute last_attribute() const; xml_node child(const char_t*
                name)
                const;
              xml_attribute attribute(const char_t* name) const;
              xml_node next_sibling(const char_t*
                name)
                const;
              xml_node previous_sibling(const char_t*
                name)
                const;
              xml_node find_child_by_attribute(const char_t*
                name,
                const char_t* attr_name, const
                char_t*
                attr_value)
                const;
              xml_node find_child_by_attribute(const char_t*
                attr_name,
                const char_t* attr_value) const; const char_t* child_value() const;
              const char_t* child_value(const char_t*
                name)
                const;
                typedef xml_node_iterator
                iterator;
              iterator begin() const;
              iterator end() const; typedef xml_attribute_iterator
                attribute_iterator;
              attribute_iterator attributes_begin() const;
              attribute_iterator attributes_end() const; bool traverse(xml_tree_walker& walker); template <typename Predicate> xml_attribute
                find_attribute(Predicate
                pred)
                const;
              template <typename Predicate> xml_node
                find_child(Predicate
                pred)
                const;
              template <typename Predicate> xml_node
                find_node(Predicate
                pred)
                const;
                string_t path(char_t
                delimiter =
                '/')
                const;
              xml_node xml_node::first_element_by_path(const char_t*
                path,
                char_t delimiter
                = '/') const;
              xml_node root() const;
              ptrdiff_t offset_debug() const; bool set_name(const char_t*
                rhs);
              bool set_value(const char_t*
                rhs);
                xml_attribute append_attribute(const char_t*
                name);
              xml_attribute insert_attribute_after(const char_t*
                name,
                const xml_attribute& attr);
              xml_attribute insert_attribute_before(const char_t*
                name,
                const xml_attribute& attr); xml_node append_child(xml_node_type
                type =
                node_element);
              xml_node insert_child_after(xml_node_type
                type,
                const xml_node& node);
              xml_node insert_child_before(xml_node_type
                type,
                const xml_node& node); xml_attribute append_copy(const xml_attribute& proto);
              xml_attribute insert_copy_after(const xml_attribute&
                proto,
                const xml_attribute& attr);
              xml_attribute insert_copy_before(const xml_attribute&
                proto,
                const xml_attribute& attr); xml_node append_copy(const xml_node&
                proto);
              xml_node insert_copy_after(const xml_node&
                proto,
                const xml_node& node);
              xml_node insert_copy_before(const xml_node&
                proto,
                const xml_node& node); bool remove_attribute(const xml_attribute&
                a);
              bool remove_attribute(const char_t*
                name);
              bool remove_child(const xml_node&
                n);
              bool remove_child(const char_t*
                name);
                void print(xml_writer& writer, const
                char_t*
                indent =
                "\t",
                unsigned int
                flags =
                format_default,
                xml_encoding encoding
                = encoding_auto, unsigned
                int depth
                = 0) const;
              void print(std::ostream& os, const
                char_t*
                indent =
                "\t",
                unsigned int
                flags =
                format_default,
                xml_encoding encoding
                = encoding_auto, unsigned
                int depth
                = 0) const;
              void print(std::wostream& os, const
                char_t*
                indent =
                "\t",
                unsigned int
                flags =
                format_default,
                unsigned int
                depth =
                0)
                const;
                xpath_node select_single_node(const char_t*
                query)
                const;
              xpath_node select_single_node(const xpath_query&
                query)
                const;
              xpath_node_set select_nodes(const char_t*
                query)
                const;
              xpath_node_set select_nodes(const xpath_query&
                query)
                const;
                class xml_document
          ();
              ~xml_document(); xml_parse_result load(std::istream&
                stream,
                unsigned int
                options =
                parse_default,
                xml_encoding encoding
                = encoding_auto);
              xml_parse_result load(std::wistream&
                stream,
                unsigned int
                options =
                parse_default);
                xml_parse_result load(const char_t* contents, unsigned
                int options
                = parse_default); xml_parse_result load_file(const char* path, unsigned
                int options
                = parse_default, xml_encoding
                encoding =
                encoding_auto);
                xml_parse_result load_buffer(const void* contents,
                size_t size, unsigned
                int options
                = parse_default, xml_encoding
                encoding =
                encoding_auto);
              xml_parse_result load_buffer_inplace(void* contents, size_t
                size,
                unsigned int
                options =
                parse_default,
                xml_encoding encoding
                = encoding_auto);
              xml_parse_result load_buffer_inplace_own(void* contents, size_t
                size,
                unsigned int
                options =
                parse_default,
                xml_encoding encoding
                = encoding_auto); bool save_file(const char* path,
                const char_t* indent
                = "\t", unsigned
                int flags
                = format_default, xml_encoding
                encoding =
                encoding_auto)
                const;
                void save(std::ostream& stream, const
                char_t*
                indent =
                "\t",
                unsigned int
                flags =
                format_default,
                xml_encoding encoding
                = encoding_auto) const;
              void save(std::wostream& stream, const
                char_t*
                indent =
                "\t",
                unsigned int
                flags =
                format_default)
                const;
                void save(xml_writer& writer, const
                char_t*
                indent =
                "\t",
                unsigned int
                flags =
                format_default,
                xml_encoding encoding
                = encoding_auto) const; struct xml_parse_result
          xml_parse_status status;
              ptrdiff_t offset;
              xml_encoding encoding; operator bool() const;
              const char* description() const; class xml_node_iterator
        class xml_attribute_iterator
          class xml_tree_walker
          
        class xml_writer
          virtual void
                write(const void* data,
                size_t size) = 0;
                class xml_writer_file: public xml_writer
          (void* file); class xml_writer_stream: public xml_writer
          (std::ostream& stream);
              (std::wostream& stream); class xpath_query
          explicit xpath_query(const char_t*
                query);
                bool evaluate_boolean(const xml_node&
                n)
                const;
              double evaluate_number(const xml_node&
                n)
                const;
              string_t evaluate_string(const xml_node&
                n)
                const;
              xpath_node_set evaluate_node_set(const xml_node&
                n)
                const;
                xpath_value_type return_type() const; class xpath_exception: public std::exception
          virtual const
                char*
                what() const
                throw();
                class xpath_node
          ();
              (const xml_node& node);
              (const xml_attribute& attribute, const
                xml_node&
                parent);
                xml_node node() const;
              xml_attribute attribute()
                const;
              xml_node parent() const; operator unspecified_bool_type() const;
              bool operator==(const xpath_node&
                n)
                const;
              bool operator!=(const xpath_node&
                n)
                const;
                class xpath_node_set
          typedef const
                xpath_node*
                const_iterator;
              const_iterator begin()
                const;
              const_iterator end()
                const;
                const xpath_node& operator[](size_t
                index)
                const;
              size_t size() const;
              bool empty() const; xpath_node first()
                const;
                enum type_t
                {type_unsorted,
                type_sorted,
                type_sorted_reverse};
              type_t type() const;
              void sort(bool reverse =
                false);
              Functions:
| pugixml 0.9 manual | Overview | Installation | Document: Object model · Loading · Accessing · Modifying · Saving | XPath | API Reference | Table of Contents |