#include <cstdlib>
#include <cassert>
#include <new>
#include <stdexcept>
Go to the source code of this file.
Classes | |
class | rapidxml::parse_error |
Parse error exception. More... | |
class | rapidxml::eof_error |
class | rapidxml::validation_error |
class | rapidxml::xml_node< Ch > |
Class representing a node of XML document. More... | |
class | rapidxml::xml_attribute< Ch > |
Class representing attribute node of XML document. More... | |
class | rapidxml::xml_document< Ch > |
This class represents root of the DOM hierarchy. More... | |
class | rapidxml::memory_pool< Ch > |
This class is used by the parser to create new nodes and attributes, without overheads of dynamic memory allocation. More... | |
class | rapidxml::xml_base< Ch > |
Base class for xml_node and xml_attribute implementing common functions: name(), name_size(), value(), value_size() and parent(). More... | |
class | rapidxml::xml_attribute< Ch > |
Class representing attribute node of XML document. More... | |
class | rapidxml::xml_node< Ch > |
Class representing a node of XML document. More... | |
class | rapidxml::xml_document< Ch > |
This class represents root of the DOM hierarchy. More... | |
Namespaces | |
rapidxml | |
Macros | |
#define | RAPIDXML_PARSE_ERROR(what, where) throw parse_error(what, where) |
#define | RAPIDXML_EOF_ERROR(what, where) throw eof_error(what, where) |
#define | RAPIDXML_STATIC_POOL_SIZE (64 * 1024) |
#define | RAPIDXML_DYNAMIC_POOL_SIZE (64 * 1024) |
#define | RAPIDXML_ALIGNMENT sizeof(void *) |
Enumerations | |
enum | rapidxml::node_type { rapidxml::node_document, rapidxml::node_element, rapidxml::node_data, rapidxml::node_cdata, rapidxml::node_comment, rapidxml::node_declaration, rapidxml::node_doctype, rapidxml::node_pi } |
Enumeration listing all node types produced by the parser. More... | |
Variables | |
const int | rapidxml::parse_no_data_nodes = 0x1 |
Parse flag instructing the parser to not create data nodes. More... | |
const int | rapidxml::parse_no_element_values = 0x2 |
Parse flag instructing the parser to not use text of first data node as a value of parent element. More... | |
const int | rapidxml::parse_no_string_terminators = 0x4 |
Parse flag instructing the parser to not place zero terminators after strings in the source text. More... | |
const int | rapidxml::parse_no_entity_translation = 0x8 |
Parse flag instructing the parser to not translate entities in the source text. More... | |
const int | rapidxml::parse_no_utf8 = 0x10 |
Parse flag instructing the parser to disable UTF-8 handling and assume plain 8 bit characters. More... | |
const int | rapidxml::parse_declaration_node = 0x20 |
Parse flag instructing the parser to create XML declaration node. More... | |
const int | rapidxml::parse_comment_nodes = 0x40 |
Parse flag instructing the parser to create comments nodes. More... | |
const int | rapidxml::parse_doctype_node = 0x80 |
Parse flag instructing the parser to create DOCTYPE node. More... | |
const int | rapidxml::parse_pi_nodes = 0x100 |
Parse flag instructing the parser to create PI nodes. More... | |
const int | rapidxml::parse_validate_closing_tags = 0x200 |
Parse flag instructing the parser to validate closing tag names. More... | |
const int | rapidxml::parse_trim_whitespace = 0x400 |
Parse flag instructing the parser to trim all leading and trailing whitespace of data nodes. More... | |
const int | rapidxml::parse_normalize_whitespace = 0x800 |
Parse flag instructing the parser to condense all whitespace runs of data nodes to a single space character. More... | |
const int | rapidxml::parse_open_only = 0x1000 |
Parse flag to say "Parse only the initial element opening." Useful for XMLstreams used in XMPP. More... | |
const int | rapidxml::parse_parse_one = 0x2000 |
Parse flag to say "Toss the children of the top node and parse off one element. More... | |
const int | rapidxml::parse_validate_xmlns = 0x4000 |
Parse flag to say "Validate XML namespaces fully." This will generate additional errors, including unbound prefixes and duplicate attributes (with different prefices) More... | |
const int | rapidxml::parse_default = 0 |
Parse flags which represent default behaviour of the parser. More... | |
const int | rapidxml::parse_non_destructive = parse_no_string_terminators | parse_no_entity_translation |
A combination of parse flags that forbids any modifications of the source text. More... | |
const int | rapidxml::parse_fastest = parse_non_destructive | parse_no_data_nodes |
A combination of parse flags resulting in fastest possible parsing, without sacrificing important data. More... | |
const int | rapidxml::parse_full = parse_declaration_node | parse_comment_nodes | parse_doctype_node | parse_pi_nodes | parse_validate_closing_tags |
A combination of parse flags resulting in largest amount of data being extracted. More... | |
This file contains rapidxml parser and DOM implementation
Definition in file rapidxml.hpp.
#define RAPIDXML_ALIGNMENT sizeof(void *) |
Definition at line 134 of file rapidxml.hpp.
#define RAPIDXML_DYNAMIC_POOL_SIZE (64 * 1024) |
Definition at line 126 of file rapidxml.hpp.
#define RAPIDXML_EOF_ERROR | ( | what, | |
where | |||
) | throw eof_error(what, where) |
Definition at line 57 of file rapidxml.hpp.
#define RAPIDXML_PARSE_ERROR | ( | what, | |
where | |||
) | throw parse_error(what, where) |
Definition at line 56 of file rapidxml.hpp.
#define RAPIDXML_STATIC_POOL_SIZE (64 * 1024) |
Definition at line 119 of file rapidxml.hpp.