arsa  2.7
Classes | Typedefs | Enumerations | Functions | Variables
pugi Namespace Reference

Classes

class  xml_attribute
 
class  xml_attribute_iterator
 
class  xml_document
 
class  xml_named_node_iterator
 
class  xml_node
 
class  xml_node_iterator
 
class  xml_object_range
 
struct  xml_parse_result
 
class  xml_text
 
class  xml_tree_walker
 
class  xml_writer
 
class  xml_writer_file
 
class  xml_writer_stream
 
class  xpath_node
 
class  xpath_node_set
 
struct  xpath_parse_result
 
class  xpath_query
 
class  xpath_variable
 
class  xpath_variable_set
 

Typedefs

typedef PUGIXML_CHAR char_t
 
typedef std::basic_string< PUGIXML_CHAR, std::char_traits< PUGIXML_CHAR >, std::allocator< PUGIXML_CHAR > > string_t
 
typedef void *(* allocation_function) (size_t size)
 
typedef void(* deallocation_function) (void *ptr)
 

Enumerations

enum  xml_node_type {
  node_null, node_document, node_element, node_pcdata,
  node_cdata, node_comment, node_pi, node_declaration,
  node_doctype
}
 
enum  xml_encoding {
  encoding_auto, encoding_utf8, encoding_utf16_le, encoding_utf16_be,
  encoding_utf16, encoding_utf32_le, encoding_utf32_be, encoding_utf32,
  encoding_wchar, encoding_latin1
}
 
enum  xml_parse_status {
  status_ok = 0, status_file_not_found, status_io_error, status_out_of_memory,
  status_internal_error, status_unrecognized_tag, status_bad_pi, status_bad_comment,
  status_bad_cdata, status_bad_doctype, status_bad_pcdata, status_bad_start_element,
  status_bad_attribute, status_bad_end_element, status_end_element_mismatch, status_append_invalid_root,
  status_no_document_element
}
 
enum  xpath_value_type {
  xpath_type_none, xpath_type_node_set, xpath_type_number, xpath_type_string,
  xpath_type_boolean
}
 

Functions

std::basic_string< char, std::char_traits< char >, std::allocator< char > > PUGIXML_FUNCTION as_utf8 (const wchar_t *str)
 
std::basic_string< char, std::char_traits< char >, std::allocator< char > > PUGIXML_FUNCTION as_utf8 (const std::basic_string< wchar_t, std::char_traits< wchar_t >, std::allocator< wchar_t > > &str)
 
std::basic_string< wchar_t, std::char_traits< wchar_t >, std::allocator< wchar_t > > PUGIXML_FUNCTION as_wide (const char *str)
 
std::basic_string< wchar_t, std::char_traits< wchar_t >, std::allocator< wchar_t > > PUGIXML_FUNCTION as_wide (const std::basic_string< char, std::char_traits< char >, std::allocator< char > > &str)
 
void PUGIXML_FUNCTION set_memory_management_functions (allocation_function allocate, deallocation_function deallocate)
 
allocation_function PUGIXML_FUNCTION get_memory_allocation_function ()
 
deallocation_function PUGIXML_FUNCTION get_memory_deallocation_function ()
 

Variables

const unsigned int parse_minimal = 0x0000
 
const unsigned int parse_pi = 0x0001
 
const unsigned int parse_comments = 0x0002
 
const unsigned int parse_cdata = 0x0004
 
const unsigned int parse_ws_pcdata = 0x0008
 
const unsigned int parse_escapes = 0x0010
 
const unsigned int parse_eol = 0x0020
 
const unsigned int parse_wconv_attribute = 0x0040
 
const unsigned int parse_wnorm_attribute = 0x0080
 
const unsigned int parse_declaration = 0x0100
 
const unsigned int parse_doctype = 0x0200
 
const unsigned int parse_ws_pcdata_single = 0x0400
 
const unsigned int parse_trim_pcdata = 0x0800
 
const unsigned int parse_fragment = 0x1000
 
const unsigned int parse_embed_pcdata = 0x2000
 
const unsigned int parse_default = parse_cdata | parse_escapes | parse_wconv_attribute | parse_eol
 
const unsigned int parse_full = parse_default | parse_pi | parse_comments | parse_declaration | parse_doctype
 
const unsigned int format_indent = 0x01
 
const unsigned int format_write_bom = 0x02
 
const unsigned int format_raw = 0x04
 
const unsigned int format_no_declaration = 0x08
 
const unsigned int format_no_escapes = 0x10
 
const unsigned int format_save_file_text = 0x20
 
const unsigned int format_indent_attributes = 0x40
 
const unsigned int format_no_empty_element_tags = 0x80
 
const unsigned int format_default = format_indent
 

Typedef Documentation

◆ allocation_function

typedef void*(* pugi::allocation_function) (size_t size)

Definition at line 1405 of file pugixml.hpp.

◆ char_t

Definition at line 125 of file pugixml.hpp.

◆ deallocation_function

typedef void(* pugi::deallocation_function) (void *ptr)

Definition at line 1408 of file pugixml.hpp.

◆ string_t

typedef std::basic_string<PUGIXML_CHAR, std::char_traits<PUGIXML_CHAR>, std::allocator<PUGIXML_CHAR> > pugi::string_t

Definition at line 129 of file pugixml.hpp.

Enumeration Type Documentation

◆ xml_encoding

Enumerator
encoding_auto 
encoding_utf8 
encoding_utf16_le 
encoding_utf16_be 
encoding_utf16 
encoding_utf32_le 
encoding_utf32_be 
encoding_utf32 
encoding_wchar 
encoding_latin1 

Definition at line 215 of file pugixml.hpp.

216  {
217  encoding_auto, // Auto-detect input encoding using BOM or < / <? detection; use UTF8 if BOM is not found
218  encoding_utf8, // UTF8 encoding
219  encoding_utf16_le, // Little-endian UTF16
220  encoding_utf16_be, // Big-endian UTF16
221  encoding_utf16, // UTF16 with native endianness
222  encoding_utf32_le, // Little-endian UTF32
223  encoding_utf32_be, // Big-endian UTF32
224  encoding_utf32, // UTF32 with native endianness
225  encoding_wchar, // The same encoding wchar_t has (either UTF16 or UTF32)
227  };

◆ xml_node_type

Enumerator
node_null 
node_document 
node_element 
node_pcdata 
node_cdata 
node_comment 
node_pi 
node_declaration 
node_doctype 

Definition at line 137 of file pugixml.hpp.

138  {
139  node_null, // Empty (null) node handle
140  node_document, // A document tree's absolute root
141  node_element, // Element tag, i.e. '<node/>'
142  node_pcdata, // Plain character data, i.e. 'text'
143  node_cdata, // Character data, i.e. '<![CDATA[text]]>'
144  node_comment, // Comment tag, i.e. '<!-- text -->'
145  node_pi, // Processing instruction, i.e. '<?name?>'
146  node_declaration, // Document declaration, i.e. '<?xml version="1.0"?>'
147  node_doctype // Document type declaration, i.e. '<!DOCTYPE doc>'
148  };

◆ xml_parse_status

Enumerator
status_ok 
status_file_not_found 
status_io_error 
status_out_of_memory 
status_internal_error 
status_unrecognized_tag 
status_bad_pi 
status_bad_comment 
status_bad_cdata 
status_bad_doctype 
status_bad_pcdata 
status_bad_start_element 
status_bad_attribute 
status_bad_end_element 
status_end_element_mismatch 
status_append_invalid_root 
status_no_document_element 

Definition at line 944 of file pugixml.hpp.

945  {
946  status_ok = 0, // No error
947 
948  status_file_not_found, // File was not found during load_file()
949  status_io_error, // Error reading from file/stream
950  status_out_of_memory, // Could not allocate memory
951  status_internal_error, // Internal error occurred
952 
953  status_unrecognized_tag, // Parser could not determine tag type
954 
955  status_bad_pi, // Parsing error occurred while parsing document declaration/processing instruction
956  status_bad_comment, // Parsing error occurred while parsing comment
957  status_bad_cdata, // Parsing error occurred while parsing CDATA section
958  status_bad_doctype, // Parsing error occurred while parsing document type declaration
959  status_bad_pcdata, // Parsing error occurred while parsing PCDATA section
960  status_bad_start_element, // Parsing error occurred while parsing start element tag
961  status_bad_attribute, // Parsing error occurred while parsing element attribute
962  status_bad_end_element, // Parsing error occurred while parsing end element tag
963  status_end_element_mismatch,// There was a mismatch of start-end tags (closing tag had incorrect name, some tag was not closed or there was an excessive closing tag)
964 
965  status_append_invalid_root, // Unable to append nodes since root type is not node_element or node_document (exclusive to xml_node::append_buffer)
966 
967  status_no_document_element // Parsing resulted in a document without element nodes
968  };

◆ xpath_value_type

Enumerator
xpath_type_none 
xpath_type_node_set 
xpath_type_number 
xpath_type_string 
xpath_type_boolean 

Definition at line 1073 of file pugixml.hpp.

1074  {
1075  xpath_type_none, // Unknown type (query failed to compile)
1076  xpath_type_node_set, // Node set (xpath_node_set)
1077  xpath_type_number, // Number
1078  xpath_type_string, // String
1079  xpath_type_boolean // Boolean
1080  };

Function Documentation

◆ as_utf8() [1/2]

std::basic_string<char, std::char_traits<char>, std::allocator<char> > PUGIXML_FUNCTION pugi::as_utf8 ( const wchar_t *  str)

◆ as_utf8() [2/2]

std::basic_string<char, std::char_traits<char>, std::allocator<char> > PUGIXML_FUNCTION pugi::as_utf8 ( const std::basic_string< wchar_t, std::char_traits< wchar_t >, std::allocator< wchar_t > > &  str)

◆ as_wide() [1/2]

std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > PUGIXML_FUNCTION pugi::as_wide ( const char *  str)

◆ as_wide() [2/2]

std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > PUGIXML_FUNCTION pugi::as_wide ( const std::basic_string< char, std::char_traits< char >, std::allocator< char > > &  str)

◆ get_memory_allocation_function()

allocation_function PUGIXML_FUNCTION pugi::get_memory_allocation_function ( )

◆ get_memory_deallocation_function()

deallocation_function PUGIXML_FUNCTION pugi::get_memory_deallocation_function ( )

◆ set_memory_management_functions()

void PUGIXML_FUNCTION pugi::set_memory_management_functions ( allocation_function  allocate,
deallocation_function  deallocate 
)

Variable Documentation

◆ format_default

const unsigned int pugi::format_default = format_indent

Definition at line 257 of file pugixml.hpp.

◆ format_indent

const unsigned int pugi::format_indent = 0x01

Definition at line 232 of file pugixml.hpp.

◆ format_indent_attributes

const unsigned int pugi::format_indent_attributes = 0x40

Definition at line 250 of file pugixml.hpp.

◆ format_no_declaration

const unsigned int pugi::format_no_declaration = 0x08

Definition at line 241 of file pugixml.hpp.

◆ format_no_empty_element_tags

const unsigned int pugi::format_no_empty_element_tags = 0x80

Definition at line 253 of file pugixml.hpp.

◆ format_no_escapes

const unsigned int pugi::format_no_escapes = 0x10

Definition at line 244 of file pugixml.hpp.

◆ format_raw

const unsigned int pugi::format_raw = 0x04

Definition at line 238 of file pugixml.hpp.

◆ format_save_file_text

const unsigned int pugi::format_save_file_text = 0x20

Definition at line 247 of file pugixml.hpp.

◆ format_write_bom

const unsigned int pugi::format_write_bom = 0x02

Definition at line 235 of file pugixml.hpp.

◆ parse_cdata

const unsigned int pugi::parse_cdata = 0x0004

Definition at line 163 of file pugixml.hpp.

◆ parse_comments

const unsigned int pugi::parse_comments = 0x0002

Definition at line 160 of file pugixml.hpp.

◆ parse_declaration

const unsigned int pugi::parse_declaration = 0x0100

Definition at line 182 of file pugixml.hpp.

◆ parse_default

const unsigned int pugi::parse_default = parse_cdata | parse_escapes | parse_wconv_attribute | parse_eol

Definition at line 207 of file pugixml.hpp.

◆ parse_doctype

const unsigned int pugi::parse_doctype = 0x0200

Definition at line 185 of file pugixml.hpp.

◆ parse_embed_pcdata

const unsigned int pugi::parse_embed_pcdata = 0x2000

Definition at line 202 of file pugixml.hpp.

◆ parse_eol

const unsigned int pugi::parse_eol = 0x0020

Definition at line 173 of file pugixml.hpp.

◆ parse_escapes

const unsigned int pugi::parse_escapes = 0x0010

Definition at line 170 of file pugixml.hpp.

◆ parse_fragment

const unsigned int pugi::parse_fragment = 0x1000

Definition at line 197 of file pugixml.hpp.

◆ parse_full

const unsigned int pugi::parse_full = parse_default | parse_pi | parse_comments | parse_declaration | parse_doctype

Definition at line 212 of file pugixml.hpp.

◆ parse_minimal

const unsigned int pugi::parse_minimal = 0x0000

Definition at line 154 of file pugixml.hpp.

◆ parse_pi

const unsigned int pugi::parse_pi = 0x0001

Definition at line 157 of file pugixml.hpp.

◆ parse_trim_pcdata

const unsigned int pugi::parse_trim_pcdata = 0x0800

Definition at line 193 of file pugixml.hpp.

◆ parse_wconv_attribute

const unsigned int pugi::parse_wconv_attribute = 0x0040

Definition at line 176 of file pugixml.hpp.

◆ parse_wnorm_attribute

const unsigned int pugi::parse_wnorm_attribute = 0x0080

Definition at line 179 of file pugixml.hpp.

◆ parse_ws_pcdata

const unsigned int pugi::parse_ws_pcdata = 0x0008

Definition at line 167 of file pugixml.hpp.

◆ parse_ws_pcdata_single

const unsigned int pugi::parse_ws_pcdata_single = 0x0400

Definition at line 190 of file pugixml.hpp.