#include "pugixml.hpp"
#include <cstdlib>
#include <cstdio>
#include <cstring>
#include <cassert>
#include <cwchar>
#include <cmath>
#include <float.h>
#include <istream>
#include <ostream>
#include <string>
#include <new>
#include <stdint.h>
Go to the source code of this file.
Classes | |
struct | xml_memory_management_function_storage< T > |
struct | buffer_holder |
struct | xml_memory_page |
struct | xml_memory_string_header |
struct | xml_allocator |
struct | pugi::xml_attribute_struct |
A 'name=value' XML attribute structure. More... | |
struct | pugi::xml_node_struct |
An XML document tree node. More... | |
struct | xml_document_struct |
struct | opt_false |
struct | opt_true |
struct | utf8_counter |
struct | utf8_writer |
struct | utf16_counter |
struct | utf16_writer |
struct | utf32_counter |
struct | utf32_writer |
struct | latin1_writer |
struct | wchar_selector< 2 > |
struct | wchar_selector< 4 > |
struct | utf_decoder< Traits, opt_swap > |
struct | gap |
struct | strconv_pcdata_impl< opt_eol, opt_escape > |
struct | strconv_attribute_impl< opt_escape > |
struct | xml_parser |
class | xml_buffered_writer |
struct | xml_stream_chunk< T > |
struct | equal_to |
struct | not_equal_to |
struct | less |
struct | less_equal |
struct | xpath_memory_block |
class | xpath_allocator |
struct | xpath_allocator_capture |
struct | xpath_stack |
struct | xpath_stack_data |
class | xpath_string |
struct | document_order_comparator |
struct | duplicate_comparator |
struct | namespace_uri_predicate |
struct | xpath_variable_boolean |
struct | xpath_variable_number |
struct | xpath_variable_string |
struct | xpath_variable_node_set |
class | xpath_node_set_raw |
struct | xpath_context |
struct | xpath_lexer_string |
class | xpath_lexer |
struct | axis_to_type< N > |
class | xpath_ast_node |
struct | xpath_parser |
struct | xpath_query_impl |
Namespaces | |
namespace | pugi |
Defines | |
#define | PUGI__NO_INLINE |
#define | PUGI__STATIC_ASSERT(cond) { static const char condition_failed[(cond) ? 1 : -1] = {0}; (void)condition_failed[0]; } |
#define | PUGI__DMC_VOLATILE |
#define | PUGI__NS_BEGIN namespace pugi { namespace impl { namespace { |
#define | PUGI__NS_END } } } |
#define | PUGI__FN |
#define | PUGI__FN_NO_INLINE PUGI__NO_INLINE |
#define | PUGI__IS_CHARTYPE_IMPL(c, ct, table) (table[static_cast<unsigned char>(c)] & (ct)) |
#define | PUGI__IS_CHARTYPE(c, ct) PUGI__IS_CHARTYPE_IMPL(c, ct, chartype_table) |
#define | PUGI__IS_CHARTYPEX(c, ct) PUGI__IS_CHARTYPE_IMPL(c, ct, chartypex_table) |
#define | ENDSWITH(c, e) ((c) == (e) || ((c) == 0 && endch == (e))) |
#define | PUGI__SKIPWS() { while (PUGI__IS_CHARTYPE(*s, ct_space)) ++s; } |
#define | PUGI__OPTSET(OPT) ( optmsk & (OPT) ) |
#define | PUGI__PUSHNODE(TYPE) { cursor = append_node(cursor, alloc, TYPE); if (!cursor) PUGI__THROW_ERROR(status_out_of_memory, s); } |
#define | PUGI__POPNODE() { cursor = cursor->parent; } |
#define | PUGI__SCANFOR(X) { while (*s != 0 && !(X)) ++s; } |
#define | PUGI__SCANWHILE(X) { while ((X)) ++s; } |
#define | PUGI__ENDSEG() { ch = *s; *s = 0; ++s; } |
#define | PUGI__THROW_ERROR(err, m) return error_offset = m, error_status = err, static_cast<char_t*>(0) |
#define | PUGI__CHECK_ERROR(err, m) { if (*s == 0) PUGI__THROW_ERROR(err, m); } |
Typedefs | |
typedef xml_memory_management_function_storage < int > | xml_memory |
typedef wchar_selector< sizeof(wchar_t)> ::counter | wchar_counter |
typedef wchar_selector< sizeof(wchar_t)> ::writer | wchar_writer |
typedef char_t *(* | strconv_pcdata_t )(char_t *) |
typedef char_t *(* | strconv_attribute_t )(char_t *, char_t) |
Enumerations | |
enum | chartype_t { ct_parse_pcdata = 1, ct_parse_attr = 2, ct_parse_attr_ws = 4, ct_space = 8, ct_parse_cdata = 16, ct_parse_comment = 32, ct_symbol = 64, ct_start_symbol = 128 } |
enum | chartypex_t { ctx_special_pcdata = 1, ctx_special_attr = 2, ctx_start_symbol = 4, ctx_digit = 8, ctx_symbol = 16 } |
enum | lexeme_t { lex_none = 0, lex_equal, lex_not_equal, lex_less, lex_greater, lex_less_or_equal, lex_greater_or_equal, lex_plus, lex_minus, lex_multiply, lex_union, lex_var_ref, lex_open_brace, lex_close_brace, lex_quoted_string, lex_number, lex_slash, lex_double_slash, lex_open_square_brace, lex_close_square_brace, lex_string, lex_comma, lex_axis_attribute, lex_dot, lex_double_dot, lex_double_colon, lex_eof } |
enum | ast_type_t { ast_op_or, ast_op_and, ast_op_equal, ast_op_not_equal, ast_op_less, ast_op_greater, ast_op_less_or_equal, ast_op_greater_or_equal, ast_op_add, ast_op_subtract, ast_op_multiply, ast_op_divide, ast_op_mod, ast_op_negate, ast_op_union, ast_predicate, ast_filter, ast_filter_posinv, ast_string_constant, ast_number_constant, ast_variable, ast_func_last, ast_func_position, ast_func_count, ast_func_id, ast_func_local_name_0, ast_func_local_name_1, ast_func_namespace_uri_0, ast_func_namespace_uri_1, ast_func_name_0, ast_func_name_1, ast_func_string_0, ast_func_string_1, ast_func_concat, ast_func_starts_with, ast_func_contains, ast_func_substring_before, ast_func_substring_after, ast_func_substring_2, ast_func_substring_3, ast_func_string_length_0, ast_func_string_length_1, ast_func_normalize_space_0, ast_func_normalize_space_1, ast_func_translate, ast_func_boolean, ast_func_not, ast_func_true, ast_func_false, ast_func_lang, ast_func_number_0, ast_func_number_1, ast_func_sum, ast_func_floor, ast_func_ceiling, ast_func_round, ast_step, ast_step_root } |
enum | axis_t { axis_ancestor, axis_ancestor_or_self, axis_attribute, axis_child, axis_descendant, axis_descendant_or_self, axis_following, axis_following_sibling, axis_namespace, axis_parent, axis_preceding, axis_preceding_sibling, axis_self } |
enum | nodetest_t { nodetest_none, nodetest_name, nodetest_type_node, nodetest_type_comment, nodetest_type_pi, nodetest_type_text, nodetest_pi, nodetest_all, nodetest_all_in_namespace } |
Functions | |
PUGI__NS_BEGIN PUGI__FN void * | default_allocate (size_t size) |
PUGI__FN void | default_deallocate (void *ptr) |
PUGI__NS_END PUGI__NS_BEGIN PUGI__FN size_t | strlength (const char_t *s) |
PUGI__FN bool | strequal (const char_t *src, const char_t *dst) |
PUGI__FN bool | strequalrange (const char_t *lhs, const char_t *rhs, size_t count) |
xml_allocator & | get_allocator (const xml_node_struct *node) |
PUGI__NS_END PUGI__NS_BEGIN xml_attribute_struct * | allocate_attribute (xml_allocator &alloc) |
xml_node_struct * | allocate_node (xml_allocator &alloc, xml_node_type type) |
void | destroy_attribute (xml_attribute_struct *a, xml_allocator &alloc) |
void | destroy_node (xml_node_struct *n, xml_allocator &alloc) |
PUGI__FN_NO_INLINE xml_node_struct * | append_node (xml_node_struct *node, xml_allocator &alloc, xml_node_type type=node_element) |
PUGI__FN_NO_INLINE xml_attribute_struct * | append_attribute_ll (xml_node_struct *node, xml_allocator &alloc) |
PUGI__NS_END PUGI__NS_BEGIN uint16_t | endian_swap (uint16_t value) |
uint32_t | endian_swap (uint32_t value) |
template<typename T > | |
PUGI__FN void | convert_utf_endian_swap (T *result, const T *data, size_t length) |
PUGI__FN bool | is_little_endian () |
PUGI__FN xml_encoding | get_wchar_encoding () |
PUGI__FN xml_encoding | guess_buffer_encoding (uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3) |
PUGI__FN xml_encoding | get_buffer_encoding (xml_encoding encoding, const void *contents, size_t size) |
PUGI__FN bool | get_mutable_buffer (char_t *&out_buffer, size_t &out_length, const void *contents, size_t size, bool is_mutable) |
template<typename opt_swap > | |
PUGI__FN bool | convert_buffer_utf16 (char_t *&out_buffer, size_t &out_length, const void *contents, size_t size, opt_swap) |
template<typename opt_swap > | |
PUGI__FN bool | convert_buffer_utf32 (char_t *&out_buffer, size_t &out_length, const void *contents, size_t size, opt_swap) |
PUGI__FN size_t | get_latin1_7bit_prefix_length (const uint8_t *data, size_t size) |
PUGI__FN bool | convert_buffer_latin1 (char_t *&out_buffer, size_t &out_length, const void *contents, size_t size, bool is_mutable) |
PUGI__FN bool | convert_buffer (char_t *&out_buffer, size_t &out_length, xml_encoding encoding, const void *contents, size_t size, bool is_mutable) |
PUGI__FN size_t | as_utf8_begin (const wchar_t *str, size_t length) |
PUGI__FN void | as_utf8_end (char *buffer, size_t size, const wchar_t *str, size_t length) |
PUGI__FN std::string | as_utf8_impl (const wchar_t *str, size_t length) |
PUGI__FN std::basic_string < wchar_t > | as_wide_impl (const char *str, size_t size) |
bool | strcpy_insitu_allow (size_t length, uintptr_t allocated, char_t *target) |
PUGI__FN bool | strcpy_insitu (char_t *&dest, uintptr_t &header, uintptr_t header_mask, const char_t *source) |
PUGI__FN char_t * | strconv_escape (char_t *s, gap &g) |
PUGI__FN char_t * | strconv_comment (char_t *s, char_t endch) |
PUGI__FN char_t * | strconv_cdata (char_t *s, char_t endch) |
PUGI__FN strconv_pcdata_t | get_strconv_pcdata (unsigned int optmask) |
PUGI__FN strconv_attribute_t | get_strconv_attribute (unsigned int optmask) |
xml_parse_result | make_parse_result (xml_parse_status status, ptrdiff_t offset=0) |
PUGI__FN xml_encoding | get_write_native_encoding () |
PUGI__FN xml_encoding | get_write_encoding (xml_encoding encoding) |
PUGI__FN size_t | get_valid_length (const char_t *data, size_t length) |
PUGI__FN size_t | convert_buffer (char_t *, uint8_t *r_u8, uint16_t *r_u16, uint32_t *r_u32, const char_t *data, size_t length, xml_encoding encoding) |
PUGI__FN void | text_output_escaped (xml_buffered_writer &writer, const char_t *s, chartypex_t type) |
PUGI__FN void | text_output (xml_buffered_writer &writer, const char_t *s, chartypex_t type, unsigned int flags) |
PUGI__FN void | text_output_cdata (xml_buffered_writer &writer, const char_t *s) |
PUGI__FN void | node_output_attributes (xml_buffered_writer &writer, const xml_node &node, unsigned int flags) |
PUGI__FN void | node_output (xml_buffered_writer &writer, const xml_node &node, const char_t *indent, unsigned int flags, unsigned int depth) |
bool | has_declaration (const xml_node &node) |
bool | allow_insert_child (xml_node_type parent, xml_node_type child) |
PUGI__FN void | recursive_copy_skip (xml_node &dest, const xml_node &source, const xml_node &skip) |
bool | is_text_node (xml_node_struct *node) |
PUGI__FN int | get_value_int (const char_t *value, int def) |
PUGI__FN unsigned int | get_value_uint (const char_t *value, unsigned int def) |
PUGI__FN double | get_value_double (const char_t *value, double def) |
PUGI__FN float | get_value_float (const char_t *value, float def) |
PUGI__FN bool | get_value_bool (const char_t *value, bool def) |
PUGI__FN bool | set_value_buffer (char_t *&dest, uintptr_t &header, uintptr_t header_mask, char(&buf)[128]) |
PUGI__FN bool | set_value_convert (char_t *&dest, uintptr_t &header, uintptr_t header_mask, int value) |
PUGI__FN bool | set_value_convert (char_t *&dest, uintptr_t &header, uintptr_t header_mask, unsigned int value) |
PUGI__FN bool | set_value_convert (char_t *&dest, uintptr_t &header, uintptr_t header_mask, double value) |
PUGI__FN bool | set_value_convert (char_t *&dest, uintptr_t &header, uintptr_t header_mask, bool value) |
PUGI__FN xml_parse_status | get_file_size (FILE *file, size_t &out_result) |
PUGI__FN xml_parse_result | load_file_impl (xml_document &doc, FILE *file, unsigned int options, xml_encoding encoding) |
template<typename T > | |
PUGI__FN xml_parse_status | load_stream_data_noseek (std::basic_istream< T > &stream, void **out_buffer, size_t *out_size) |
template<typename T > | |
PUGI__FN xml_parse_status | load_stream_data_seek (std::basic_istream< T > &stream, void **out_buffer, size_t *out_size) |
template<typename T > | |
PUGI__FN xml_parse_result | load_stream_impl (xml_document &doc, std::basic_istream< T > &stream, unsigned int options, xml_encoding encoding) |
PUGI__FN char * | convert_path_heap (const wchar_t *str) |
PUGI__FN FILE * | open_file_wide (const wchar_t *path, const wchar_t *mode) |
PUGI__FN bool | save_file_impl (const xml_document &doc, FILE *file, const char_t *indent, unsigned int flags, xml_encoding encoding) |
PUGI__FN std::string PUGIXML_FUNCTION | pugi::as_utf8 (const wchar_t *str) |
PUGI__FN std::string PUGIXML_FUNCTION | pugi::as_utf8 (const std::basic_string< wchar_t > &str) |
PUGI__FN std::basic_string < wchar_t > PUGIXML_FUNCTION | pugi::as_wide (const char *str) |
PUGI__FN std::basic_string < wchar_t > PUGIXML_FUNCTION | pugi::as_wide (const std::string &str) |
PUGI__FN void PUGIXML_FUNCTION | pugi::set_memory_management_functions (allocation_function allocate, deallocation_function deallocate) |
PUGI__FN allocation_function PUGIXML_FUNCTION | pugi::get_memory_allocation_function () |
PUGI__FN deallocation_function PUGIXML_FUNCTION | pugi::get_memory_deallocation_function () |
template<typename T > | |
void | swap (T &lhs, T &rhs) |
template<typename I , typename Pred > | |
I | min_element (I begin, I end, const Pred &pred) |
template<typename I > | |
void | reverse (I begin, I end) |
template<typename I > | |
I | unique (I begin, I end) |
template<typename I > | |
void | copy_backwards (I begin, I end, I target) |
template<typename I , typename Pred , typename T > | |
void | insertion_sort (I begin, I end, const Pred &pred, T *) |
template<typename I , typename Pred > | |
void | partition (I begin, I middle, I end, const Pred &pred, I *out_eqbeg, I *out_eqend) |
template<typename I , typename Pred > | |
void | median3 (I first, I middle, I last, const Pred &pred) |
template<typename I , typename Pred > | |
void | median (I first, I middle, I last, const Pred &pred) |
template<typename I , typename Pred > | |
void | sort (I begin, I end, const Pred &pred) |
PUGI__FN xpath_string | xpath_string_const (const char_t *str) |
PUGI__NS_END PUGI__NS_BEGIN PUGI__FN bool | starts_with (const char_t *string, const char_t *pattern) |
PUGI__FN const char_t * | find_char (const char_t *s, char_t c) |
PUGI__FN const char_t * | find_substring (const char_t *s, const char_t *p) |
PUGI__FN char_t | tolower_ascii (char_t ch) |
PUGI__FN xpath_string | string_value (const xpath_node &na, xpath_allocator *alloc) |
PUGI__FN unsigned int | node_height (xml_node n) |
PUGI__FN bool | node_is_before (xml_node ln, unsigned int lh, xml_node rn, unsigned int rh) |
PUGI__FN bool | node_is_ancestor (xml_node parent, xml_node node) |
PUGI__FN const void * | document_order (const xpath_node &xnode) |
PUGI__FN double | gen_nan () |
PUGI__FN bool | is_nan (double value) |
PUGI__FN const char_t * | convert_number_to_string_special (double value) |
PUGI__FN bool | convert_number_to_boolean (double value) |
PUGI__FN void | truncate_zeros (char *begin, char *end) |
PUGI__FN void | convert_number_to_mantissa_exponent (double value, char *buffer, size_t buffer_size, char **out_mantissa, int *out_exponent) |
PUGI__FN xpath_string | convert_number_to_string (double value, xpath_allocator *alloc) |
PUGI__FN bool | check_string_to_number_format (const char_t *string) |
PUGI__FN double | convert_string_to_number (const char_t *string) |
PUGI__FN bool | convert_string_to_number (const char_t *begin, const char_t *end, double *out_result) |
PUGI__FN double | round_nearest (double value) |
PUGI__FN double | round_nearest_nzero (double value) |
PUGI__FN const char_t * | qualified_name (const xpath_node &node) |
PUGI__FN const char_t * | local_name (const xpath_node &node) |
PUGI__FN const char_t * | namespace_uri (const xml_node &node) |
PUGI__FN const char_t * | namespace_uri (const xml_attribute &attr, const xml_node &parent) |
PUGI__FN const char_t * | namespace_uri (const xpath_node &node) |
PUGI__FN void | normalize_space (char_t *buffer) |
PUGI__FN void | translate (char_t *buffer, const char_t *from, const char_t *to) |
PUGI__FN unsigned int | hash_string (const char_t *str) |
template<typename T > | |
PUGI__FN T * | new_xpath_variable (const char_t *name) |
PUGI__FN xpath_variable * | new_xpath_variable (xpath_value_type type, const char_t *name) |
template<typename T > | |
PUGI__FN void | delete_xpath_variable (T *var) |
PUGI__FN void | delete_xpath_variable (xpath_value_type type, xpath_variable *var) |
PUGI__FN xpath_variable * | get_variable (xpath_variable_set *set, const char_t *begin, const char_t *end) |
PUGI__NS_END PUGI__NS_BEGIN PUGI__FN xpath_node_set::type_t | xpath_sort (xpath_node *begin, xpath_node *end, xpath_node_set::type_t type, bool rev) |
PUGI__FN xpath_node | xpath_first (const xpath_node *begin, const xpath_node *end, xpath_node_set::type_t type) |
PUGI__FN xpath_string | evaluate_string_impl (xpath_query_impl *impl, const xpath_node &n, xpath_stack_data &sd) |
#define ENDSWITH | ( | c, | |||
e | ) | ((c) == (e) || ((c) == 0 && endch == (e))) |
Definition at line 1612 of file pugixml.cpp.
Referenced by xml_parser::parse(), xml_parser::parse_exclamation(), xml_parser::parse_question(), strconv_cdata(), and strconv_comment().
Definition at line 1873 of file pugixml.cpp.
Referenced by xml_parser::parse(), xml_parser::parse_exclamation(), and xml_parser::parse_question().
#define PUGI__DMC_VOLATILE |
#define PUGI__ENDSEG | ( | ) | { ch = *s; *s = 0; ++s; } |
Definition at line 1871 of file pugixml.cpp.
Referenced by xml_parser::parse(), and xml_parser::parse_question().
#define PUGI__FN |
Definition at line 118 of file pugixml.cpp.
#define PUGI__FN_NO_INLINE PUGI__NO_INLINE |
Definition at line 119 of file pugixml.cpp.
#define PUGI__IS_CHARTYPE | ( | c, | |||
ct | ) | PUGI__IS_CHARTYPE_IMPL(c, ct, chartype_table) |
Definition at line 987 of file pugixml.cpp.
Referenced by check_string_to_number_format(), xpath_lexer::next(), normalize_space(), xml_parser::parse(), strconv_pcdata_impl< opt_eol, opt_escape >::parse(), strconv_attribute_impl< opt_escape >::parse_eol(), xml_parser::parse_exclamation(), xpath_parser::parse_path_expression(), xml_parser::parse_question(), strconv_attribute_impl< opt_escape >::parse_simple(), strconv_attribute_impl< opt_escape >::parse_wconv(), strconv_attribute_impl< opt_escape >::parse_wnorm(), strconv_cdata(), and strconv_comment().
Definition at line 984 of file pugixml.cpp.
#define PUGI__IS_CHARTYPEX | ( | c, | |||
ct | ) | PUGI__IS_CHARTYPE_IMPL(c, ct, chartypex_table) |
Definition at line 988 of file pugixml.cpp.
Referenced by check_string_to_number_format(), xpath_lexer::next(), and text_output_escaped().
#define PUGI__NO_INLINE |
pugixml parser - version 1.2 -------------------------------------------------------- Copyright (C) 2006-2012, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com) Report bugs and download new versions at http://pugixml.org/
This library is distributed under the MIT License. See notice at the end of this file.
This work is based on the pugxml parser, which is: Copyright (C) 2003, by Kristen Wegner (kristen@tima.net)
Definition at line 81 of file pugixml.cpp.
#define PUGI__NS_BEGIN namespace pugi { namespace impl { namespace { |
Definition at line 115 of file pugixml.cpp.
#define PUGI__NS_END } } } |
Definition at line 116 of file pugixml.cpp.
#define PUGI__OPTSET | ( | OPT | ) | ( optmsk & (OPT) ) |
Definition at line 1866 of file pugixml.cpp.
Referenced by xml_parser::parse(), xml_parser::parse_exclamation(), and xml_parser::parse_question().
#define PUGI__POPNODE | ( | ) | { cursor = cursor->parent; } |
Definition at line 1868 of file pugixml.cpp.
Referenced by xml_parser::parse(), xml_parser::parse_exclamation(), and xml_parser::parse_question().
#define PUGI__PUSHNODE | ( | TYPE | ) | { cursor = append_node(cursor, alloc, TYPE); if (!cursor) PUGI__THROW_ERROR(status_out_of_memory, s); } |
Definition at line 1867 of file pugixml.cpp.
Referenced by xml_parser::parse(), xml_parser::parse_exclamation(), and xml_parser::parse_question().
Definition at line 1869 of file pugixml.cpp.
Referenced by xml_parser::parse(), xml_parser::parse_doctype_primitive(), xml_parser::parse_exclamation(), and xml_parser::parse_question().
Definition at line 1870 of file pugixml.cpp.
Referenced by xml_parser::parse(), and xml_parser::parse_question().
#define PUGI__SKIPWS | ( | ) | { while (PUGI__IS_CHARTYPE(*s, ct_space)) ++s; } |
Definition at line 1865 of file pugixml.cpp.
Referenced by xml_parser::parse(), and xml_parser::parse_question().
#define PUGI__STATIC_ASSERT | ( | cond | ) | { static const char condition_failed[(cond) ? 1 : -1] = {0}; (void)condition_failed[0]; } |
Definition at line 85 of file pugixml.cpp.
Referenced by get_strconv_attribute(), get_strconv_pcdata(), get_wchar_encoding(), and xml_buffered_writer::xml_buffered_writer().
#define PUGI__THROW_ERROR | ( | err, | |||
m | ) | return error_offset = m, error_status = err, static_cast<char_t*>(0) |
Definition at line 1872 of file pugixml.cpp.
Referenced by xml_parser::parse(), xml_parser::parse_doctype_group(), xml_parser::parse_doctype_ignore(), xml_parser::parse_doctype_primitive(), xml_parser::parse_exclamation(), and xml_parser::parse_question().
typedef char_t*(* strconv_attribute_t)(char_t *, char_t) |
Definition at line 1700 of file pugixml.cpp.
typedef char_t*(* strconv_pcdata_t)(char_t *) |
Definition at line 1656 of file pugixml.cpp.
typedef wchar_selector<sizeof(wchar_t)>::counter wchar_counter |
Definition at line 774 of file pugixml.cpp.
typedef wchar_selector<sizeof(wchar_t)>::writer wchar_writer |
Definition at line 775 of file pugixml.cpp.
typedef xml_memory_management_function_storage<int> xml_memory |
Definition at line 159 of file pugixml.cpp.
enum ast_type_t |
Definition at line 6715 of file pugixml.cpp.
enum axis_t |
Definition at line 6776 of file pugixml.cpp.
enum chartype_t |
ct_parse_pcdata | |
ct_parse_attr | |
ct_parse_attr_ws | |
ct_space | |
ct_parse_cdata | |
ct_parse_comment | |
ct_symbol | |
ct_start_symbol |
Definition at line 921 of file pugixml.cpp.
enum chartypex_t |
Definition at line 952 of file pugixml.cpp.
enum lexeme_t |
Definition at line 6408 of file pugixml.cpp.
enum nodetest_t |
nodetest_none | |
nodetest_name | |
nodetest_type_node | |
nodetest_type_comment | |
nodetest_type_pi | |
nodetest_type_text | |
nodetest_pi | |
nodetest_all | |
nodetest_all_in_namespace |
Definition at line 6792 of file pugixml.cpp.
PUGI__NS_END PUGI__NS_BEGIN xml_attribute_struct* allocate_attribute | ( | xml_allocator & | alloc | ) | [inline] |
Definition at line 496 of file pugixml.cpp.
References xml_allocator::allocate_memory().
Referenced by append_attribute_ll(), pugi::xml_node::insert_attribute_after(), pugi::xml_node::insert_attribute_before(), and pugi::xml_node::prepend_attribute().
xml_node_struct* allocate_node | ( | xml_allocator & | alloc, | |
xml_node_type | type | |||
) | [inline] |
Definition at line 504 of file pugixml.cpp.
References xml_allocator::allocate_memory().
Referenced by append_node(), pugi::xml_node::insert_child_after(), pugi::xml_node::insert_child_before(), and pugi::xml_node::prepend_child().
bool allow_insert_child | ( | xml_node_type | parent, | |
xml_node_type | child | |||
) | [inline] |
Definition at line 2868 of file pugixml.cpp.
References pugi::node_declaration, pugi::node_doctype, pugi::node_document, pugi::node_element, and pugi::node_null.
Referenced by pugi::xml_node::append_child(), pugi::xml_node::insert_child_after(), pugi::xml_node::insert_child_before(), and pugi::xml_node::prepend_child().
PUGI__FN_NO_INLINE xml_attribute_struct* append_attribute_ll | ( | xml_node_struct * | node, | |
xml_allocator & | alloc | |||
) |
Definition at line 571 of file pugixml.cpp.
References allocate_attribute().
Referenced by pugi::xml_node::append_attribute(), and xml_parser::parse().
PUGI__FN_NO_INLINE xml_node_struct* append_node | ( | xml_node_struct * | node, | |
xml_allocator & | alloc, | |||
xml_node_type | type = node_element | |||
) |
Definition at line 548 of file pugixml.cpp.
References allocate_node().
Referenced by pugi::xml_node::append_child().
PUGI__FN size_t as_utf8_begin | ( | const wchar_t * | str, | |
size_t | length | |||
) |
Definition at line 1341 of file pugixml.cpp.
References utf_decoder< Traits, opt_swap >::decode_wchar_block().
Referenced by as_utf8_impl(), and convert_path_heap().
PUGI__FN void as_utf8_end | ( | char * | buffer, | |
size_t | size, | |||
const wchar_t * | str, | |||
size_t | length | |||
) |
Definition at line 1347 of file pugixml.cpp.
References begin, utf_decoder< Traits, opt_swap >::decode_wchar_block(), and end.
Referenced by as_utf8_impl(), and convert_path_heap().
PUGI__FN std::string as_utf8_impl | ( | const wchar_t * | str, | |
size_t | length | |||
) |
Definition at line 1361 of file pugixml.cpp.
References as_utf8_begin(), and as_utf8_end().
Referenced by pugi::as_utf8().
PUGI__FN std::basic_string<wchar_t> as_wide_impl | ( | const char * | str, | |
size_t | size | |||
) |
Definition at line 1376 of file pugixml.cpp.
References begin, utf_decoder< Traits, opt_swap >::decode_utf8_block(), and end.
Referenced by pugi::as_wide().
PUGI__FN bool check_string_to_number_format | ( | const char_t * | string | ) |
Definition at line 5920 of file pugixml.cpp.
References ct_space, ctx_digit, PUGI__IS_CHARTYPE, and PUGI__IS_CHARTYPEX.
Referenced by convert_string_to_number().
PUGI__FN size_t convert_buffer | ( | char_t * | , | |
uint8_t * | r_u8, | |||
uint16_t * | r_u16, | |||
uint32_t * | r_u32, | |||
const char_t * | data, | |||
size_t | length, | |||
xml_encoding | encoding | |||
) |
Definition at line 2456 of file pugixml.cpp.
References convert_utf_endian_swap(), utf_decoder< Traits, opt_swap >::decode_utf8_block(), pugi::encoding_latin1, pugi::encoding_utf16_be, pugi::encoding_utf16_le, pugi::encoding_utf32_be, pugi::encoding_utf32_le, and is_little_endian().
PUGI__FN bool convert_buffer | ( | char_t *& | out_buffer, | |
size_t & | out_length, | |||
xml_encoding | encoding, | |||
const void * | contents, | |||
size_t | size, | |||
bool | is_mutable | |||
) |
Definition at line 1310 of file pugixml.cpp.
References convert_buffer_latin1(), convert_buffer_utf16(), convert_buffer_utf32(), pugi::encoding_latin1, pugi::encoding_utf16_be, pugi::encoding_utf16_le, pugi::encoding_utf32_be, pugi::encoding_utf32_le, pugi::encoding_utf8, get_mutable_buffer(), and is_little_endian().
Referenced by xml_buffered_writer::flush().
PUGI__FN bool convert_buffer_latin1 | ( | char_t *& | out_buffer, | |
size_t & | out_length, | |||
const void * | contents, | |||
size_t | size, | |||
bool | is_mutable | |||
) |
Definition at line 1277 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, utf_decoder< Traits, opt_swap >::decode_latin1_block(), get_latin1_7bit_prefix_length(), and get_mutable_buffer().
Referenced by convert_buffer().
PUGI__FN bool convert_buffer_utf16 | ( | char_t *& | out_buffer, | |
size_t & | out_length, | |||
const void * | contents, | |||
size_t | size, | |||
opt_swap | ||||
) | [inline] |
Definition at line 1224 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, and utf_decoder< Traits, opt_swap >::decode_utf16_block().
Referenced by convert_buffer().
PUGI__FN bool convert_buffer_utf32 | ( | char_t *& | out_buffer, | |
size_t & | out_length, | |||
const void * | contents, | |||
size_t | size, | |||
opt_swap | ||||
) | [inline] |
Definition at line 1246 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, and utf_decoder< Traits, opt_swap >::decode_utf32_block().
Referenced by convert_buffer().
PUGI__FN bool convert_number_to_boolean | ( | double | value | ) |
Definition at line 5805 of file pugixml.cpp.
References is_nan().
Referenced by xpath_ast_node::eval_boolean().
PUGI__FN void convert_number_to_mantissa_exponent | ( | double | value, | |
char * | buffer, | |||
size_t | buffer_size, | |||
char ** | out_mantissa, | |||
int * | out_exponent | |||
) |
Definition at line 5833 of file pugixml.cpp.
References truncate_zeros().
Referenced by convert_number_to_string().
PUGI__FN xpath_string convert_number_to_string | ( | double | value, | |
xpath_allocator * | alloc | |||
) |
Definition at line 5864 of file pugixml.cpp.
References convert_number_to_mantissa_exponent(), convert_number_to_string_special(), and xpath_string_const().
Referenced by xpath_ast_node::eval_string().
PUGI__FN const char_t* convert_number_to_string_special | ( | double | value | ) |
Definition at line 5774 of file pugixml.cpp.
References PUGIXML_TEXT.
Referenced by convert_number_to_string().
PUGI__FN char* convert_path_heap | ( | const wchar_t * | str | ) |
Definition at line 3235 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, as_utf8_begin(), and as_utf8_end().
Referenced by open_file_wide().
PUGI__FN bool convert_string_to_number | ( | const char_t * | begin, | |
const char_t * | end, | |||
double * | out_result | |||
) |
Definition at line 5962 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, convert_string_to_number(), and xml_memory_management_function_storage< T >::deallocate.
PUGI__FN double convert_string_to_number | ( | const char_t * | string | ) |
Definition at line 5949 of file pugixml.cpp.
References check_string_to_number_format(), and gen_nan().
Referenced by convert_string_to_number(), xpath_ast_node::eval_number(), and xpath_parser::parse_primary_expression().
PUGI__FN void convert_utf_endian_swap | ( | T * | result, | |
const T * | data, | |||
size_t | length | |||
) | [inline] |
Definition at line 907 of file pugixml.cpp.
References endian_swap().
Referenced by convert_buffer().
Definition at line 5114 of file pugixml.cpp.
Referenced by insertion_sort().
PUGI__NS_BEGIN PUGI__FN void* default_allocate | ( | size_t | size | ) |
Definition at line 140 of file pugixml.cpp.
PUGI__FN void default_deallocate | ( | void * | ptr | ) |
Definition at line 145 of file pugixml.cpp.
PUGI__FN void delete_xpath_variable | ( | xpath_value_type | type, | |
xpath_variable * | var | |||
) |
Definition at line 6213 of file pugixml.cpp.
References delete_xpath_variable(), pugi::xpath_type_boolean, pugi::xpath_type_node_set, pugi::xpath_type_number, and pugi::xpath_type_string.
PUGI__FN void delete_xpath_variable | ( | T * | var | ) | [inline] |
Definition at line 6207 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::deallocate.
Referenced by delete_xpath_variable(), and pugi::xpath_variable_set::~xpath_variable_set().
void destroy_attribute | ( | xml_attribute_struct * | a, | |
xml_allocator & | alloc | |||
) | [inline] |
Definition at line 512 of file pugixml.cpp.
References xml_allocator::deallocate_memory(), and xml_allocator::deallocate_string().
Referenced by destroy_node(), and pugi::xml_node::remove_attribute().
void destroy_node | ( | xml_node_struct * | n, | |
xml_allocator & | alloc | |||
) | [inline] |
Definition at line 522 of file pugixml.cpp.
References xml_allocator::deallocate_memory(), xml_allocator::deallocate_string(), destroy_attribute(), and sapt::next().
Referenced by pugi::xml_node::remove_child().
PUGI__FN const void* document_order | ( | const xpath_node & | xnode | ) |
Definition at line 5670 of file pugixml.cpp.
Referenced by document_order_comparator::operator()().
uint32_t endian_swap | ( | uint32_t | value | ) | [inline] |
Definition at line 611 of file pugixml.cpp.
PUGI__NS_END PUGI__NS_BEGIN uint16_t endian_swap | ( | uint16_t | value | ) | [inline] |
Definition at line 606 of file pugixml.cpp.
Referenced by convert_utf_endian_swap(), utf_decoder< Traits, opt_swap >::decode_utf16_block(), and utf_decoder< Traits, opt_swap >::decode_utf32_block().
PUGI__FN xpath_string evaluate_string_impl | ( | xpath_query_impl * | impl, | |
const xpath_node & | n, | |||
xpath_stack_data & | sd | |||
) |
Definition at line 8811 of file pugixml.cpp.
References xpath_ast_node::eval_string(), xpath_query_impl::root, and xpath_stack_data::stack.
Referenced by pugi::xpath_query::evaluate_string().
PUGI__FN const char_t* find_char | ( | const char_t * | s, | |
char_t | c | |||
) |
Definition at line 5555 of file pugixml.cpp.
Referenced by local_name(), namespace_uri_predicate::namespace_uri_predicate(), and translate().
PUGI__FN const char_t* find_substring | ( | const char_t * | s, | |
const char_t * | p | |||
) |
Definition at line 5564 of file pugixml.cpp.
Referenced by xpath_ast_node::eval_boolean(), and xpath_ast_node::eval_string().
PUGI__FN double gen_nan | ( | ) |
Definition at line 5745 of file pugixml.cpp.
References u().
Referenced by convert_string_to_number(), pugi::xpath_query::evaluate_number(), and pugi::xpath_variable::get_number().
xml_allocator& get_allocator | ( | const xml_node_struct * | node | ) | [inline] |
Definition at line 486 of file pugixml.cpp.
Referenced by pugi::xml_node::append_attribute(), pugi::xml_node::append_child(), pugi::xml_node::insert_attribute_after(), pugi::xml_node::insert_attribute_before(), pugi::xml_node::insert_child_after(), pugi::xml_node::insert_child_before(), pugi::xml_node::prepend_attribute(), pugi::xml_node::prepend_child(), pugi::xml_node::remove_attribute(), and pugi::xml_node::remove_child().
PUGI__FN xml_encoding get_buffer_encoding | ( | xml_encoding | encoding, | |
const void * | contents, | |||
size_t | size | |||
) |
Definition at line 1031 of file pugixml.cpp.
References pugi::encoding_auto, pugi::encoding_utf16, pugi::encoding_utf16_be, pugi::encoding_utf16_le, pugi::encoding_utf32, pugi::encoding_utf32_be, pugi::encoding_utf32_le, pugi::encoding_utf8, pugi::encoding_wchar, get_wchar_encoding(), guess_buffer_encoding(), is_little_endian(), and PUGI__DMC_VOLATILE.
PUGI__FN xml_parse_status get_file_size | ( | FILE * | file, | |
size_t & | out_result | |||
) |
Definition at line 3032 of file pugixml.cpp.
References fseek(), ftell(), pugi::status_io_error, pugi::status_ok, and pugi::status_out_of_memory.
Referenced by load_file_impl().
PUGI__FN size_t get_latin1_7bit_prefix_length | ( | const uint8_t * | data, | |
size_t | size | |||
) |
Definition at line 1268 of file pugixml.cpp.
Referenced by convert_buffer_latin1().
PUGI__FN bool get_mutable_buffer | ( | char_t *& | out_buffer, | |
size_t & | out_length, | |||
const void * | contents, | |||
size_t | size, | |||
bool | is_mutable | |||
) |
Definition at line 1056 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate.
Referenced by convert_buffer(), and convert_buffer_latin1().
PUGI__FN strconv_attribute_t get_strconv_attribute | ( | unsigned int | optmask | ) |
Definition at line 1808 of file pugixml.cpp.
References pugi::parse_eol, pugi::parse_escapes, pugi::parse_wconv_attribute, pugi::parse_wnorm_attribute, and PUGI__STATIC_ASSERT.
Referenced by xml_parser::parse().
PUGI__FN strconv_pcdata_t get_strconv_pcdata | ( | unsigned int | optmask | ) |
Definition at line 1682 of file pugixml.cpp.
References pugi::parse_eol, pugi::parse_escapes, and PUGI__STATIC_ASSERT.
Referenced by xml_parser::parse().
PUGI__FN size_t get_valid_length | ( | const char_t * | data, | |
size_t | length | |||
) |
Definition at line 2441 of file pugixml.cpp.
Referenced by xml_buffered_writer::write().
PUGI__FN bool get_value_bool | ( | const char_t * | value, | |
bool | def | |||
) |
Definition at line 2978 of file pugixml.cpp.
Referenced by pugi::xml_text::as_bool(), and pugi::xml_attribute::as_bool().
PUGI__FN double get_value_double | ( | const char_t * | value, | |
double | def | |||
) |
Definition at line 2956 of file pugixml.cpp.
Referenced by pugi::xml_text::as_double(), and pugi::xml_attribute::as_double().
PUGI__FN float get_value_float | ( | const char_t * | value, | |
float | def | |||
) |
Definition at line 2967 of file pugixml.cpp.
Referenced by pugi::xml_text::as_float(), and pugi::xml_attribute::as_float().
PUGI__FN int get_value_int | ( | const char_t * | value, | |
int | def | |||
) |
Definition at line 2934 of file pugixml.cpp.
Referenced by pugi::xml_text::as_int(), and pugi::xml_attribute::as_int().
PUGI__FN unsigned int get_value_uint | ( | const char_t * | value, | |
unsigned int | def | |||
) |
Definition at line 2945 of file pugixml.cpp.
Referenced by pugi::xml_text::as_uint(), and pugi::xml_attribute::as_uint().
PUGI__FN xpath_variable* get_variable | ( | xpath_variable_set * | set, | |
const char_t * | begin, | |||
const char_t * | end | |||
) |
Definition at line 6237 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, and xml_memory_management_function_storage< T >::deallocate.
Referenced by xpath_parser::parse_primary_expression().
PUGI__FN xml_encoding get_wchar_encoding | ( | ) |
Definition at line 997 of file pugixml.cpp.
References pugi::encoding_utf16_be, pugi::encoding_utf16_le, pugi::encoding_utf32_be, pugi::encoding_utf32_le, is_little_endian(), and PUGI__STATIC_ASSERT.
Referenced by get_buffer_encoding(), get_write_encoding(), and get_write_native_encoding().
PUGI__FN xml_encoding get_write_encoding | ( | xml_encoding | encoding | ) |
Definition at line 2355 of file pugixml.cpp.
References pugi::encoding_auto, pugi::encoding_utf16, pugi::encoding_utf16_be, pugi::encoding_utf16_le, pugi::encoding_utf32, pugi::encoding_utf32_be, pugi::encoding_utf32_le, pugi::encoding_utf8, pugi::encoding_wchar, get_wchar_encoding(), and is_little_endian().
PUGI__FN xml_encoding get_write_native_encoding | ( | ) |
Definition at line 2346 of file pugixml.cpp.
References pugi::encoding_utf8, and get_wchar_encoding().
Referenced by xml_buffered_writer::flush(), and xml_buffered_writer::write().
PUGI__FN xml_encoding guess_buffer_encoding | ( | uint8_t | d0, | |
uint8_t | d1, | |||
uint8_t | d2, | |||
uint8_t | d3 | |||
) |
Definition at line 1007 of file pugixml.cpp.
References pugi::encoding_utf16_be, pugi::encoding_utf16_le, pugi::encoding_utf32_be, pugi::encoding_utf32_le, and pugi::encoding_utf8.
Referenced by get_buffer_encoding().
bool has_declaration | ( | const xml_node & | node | ) | [inline] |
Definition at line 2856 of file pugixml.cpp.
References pugi::node_declaration, and pugi::node_element.
Referenced by pugi::xml_document::save().
PUGI__FN unsigned int hash_string | ( | const char_t * | str | ) |
Definition at line 6153 of file pugixml.cpp.
Referenced by pugi::xpath_variable_set::add().
void insertion_sort | ( | I | begin, | |
I | end, | |||
const Pred & | pred, | |||
T * | ||||
) | [inline] |
Definition at line 5119 of file pugixml.cpp.
References copy_backwards(), I, and T.
Referenced by sort().
PUGI__FN bool is_little_endian | ( | ) |
Definition at line 990 of file pugixml.cpp.
Referenced by convert_buffer(), get_buffer_encoding(), get_wchar_encoding(), and get_write_encoding().
PUGI__FN bool is_nan | ( | double | value | ) |
Definition at line 5761 of file pugixml.cpp.
Referenced by convert_number_to_boolean(), and xpath_ast_node::eval_string().
bool is_text_node | ( | xml_node_struct * | node | ) | [inline] |
Definition at line 2926 of file pugixml.cpp.
References pugi::node_cdata, and pugi::node_pcdata.
Referenced by pugi::xml_node::child_value().
PUGI__FN xml_parse_result load_file_impl | ( | xml_document & | doc, | |
FILE * | file, | |||
unsigned int | options, | |||
xml_encoding | encoding | |||
) |
Definition at line 3071 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, xml_memory_management_function_storage< T >::deallocate, get_file_size(), make_parse_result(), pugi::status_file_not_found, pugi::status_io_error, pugi::status_ok, and pugi::status_out_of_memory.
Referenced by pugi::xml_document::load_file().
PUGI__FN xml_parse_status load_stream_data_noseek | ( | std::basic_istream< T > & | stream, | |
void ** | out_buffer, | |||
size_t * | out_size | |||
) | [inline] |
Definition at line 3132 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, xml_stream_chunk< T >::create(), xml_stream_chunk< T >::data, buffer_holder::data, xml_stream_chunk< T >::next, xml_stream_chunk< T >::size, pugi::status_io_error, pugi::status_ok, pugi::status_out_of_memory, T, and write().
Referenced by load_stream_impl().
PUGI__FN xml_parse_status load_stream_data_seek | ( | std::basic_istream< T > & | stream, | |
void ** | out_buffer, | |||
size_t * | out_size | |||
) | [inline] |
Definition at line 3182 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, buffer_holder::data, xml_memory_management_function_storage< T >::deallocate, end, buffer_holder::release(), pugi::status_io_error, pugi::status_ok, pugi::status_out_of_memory, and T.
Referenced by load_stream_impl().
PUGI__FN xml_parse_result load_stream_impl | ( | xml_document & | doc, | |
std::basic_istream< T > & | stream, | |||
unsigned int | options, | |||
xml_encoding | encoding | |||
) | [inline] |
Definition at line 3216 of file pugixml.cpp.
References load_stream_data_noseek(), load_stream_data_seek(), make_parse_result(), and pugi::status_ok.
Referenced by pugi::xml_document::load().
PUGI__FN const char_t* local_name | ( | const xpath_node & | node | ) |
Definition at line 6004 of file pugixml.cpp.
References find_char(), and qualified_name().
Referenced by xpath_ast_node::eval_string().
xml_parse_result make_parse_result | ( | xml_parse_status | status, | |
ptrdiff_t | offset = 0 | |||
) | [inline] |
Definition at line 1850 of file pugixml.cpp.
Referenced by load_file_impl(), load_stream_impl(), and xml_parser::parse().
void median | ( | I | first, | |
I | middle, | |||
I | last, | |||
const Pred & | pred | |||
) | [inline] |
Definition at line 5198 of file pugixml.cpp.
References median3().
Referenced by sort().
void median3 | ( | I | first, | |
I | middle, | |||
I | last, | |||
const Pred & | pred | |||
) | [inline] |
Definition at line 5191 of file pugixml.cpp.
References swap().
Referenced by median().
Definition at line 5076 of file pugixml.cpp.
References I.
Referenced by MosesTuning::Reference::CalcShortest(), lm::ngram::ShowSizes(), and xpath_first().
PUGI__FN const char_t* namespace_uri | ( | const xpath_node & | node | ) |
Definition at line 6069 of file pugixml.cpp.
References namespace_uri().
PUGI__FN const char_t* namespace_uri | ( | const xml_attribute & | attr, | |
const xml_node & | parent | |||
) |
Definition at line 6049 of file pugixml.cpp.
References namespace_uri_predicate::prefix, and PUGIXML_TEXT.
PUGI__FN const char_t* namespace_uri | ( | const xml_node & | node | ) |
Definition at line 6032 of file pugixml.cpp.
References PUGIXML_TEXT.
Referenced by xpath_ast_node::eval_string(), and namespace_uri().
PUGI__FN xpath_variable* new_xpath_variable | ( | xpath_value_type | type, | |
const char_t * | name | |||
) |
Definition at line 6187 of file pugixml.cpp.
References pugi::xpath_type_boolean, pugi::xpath_type_node_set, pugi::xpath_type_number, and pugi::xpath_type_string.
PUGI__FN T* new_xpath_variable | ( | const char_t * | name | ) | [inline] |
Definition at line 6171 of file pugixml.cpp.
References xml_memory_management_function_storage< T >::allocate, strlength(), and T.
Referenced by pugi::xpath_variable_set::add().
PUGI__FN unsigned int node_height | ( | xml_node | n | ) |
Definition at line 5625 of file pugixml.cpp.
Referenced by document_order_comparator::operator()().
PUGI__FN bool node_is_ancestor | ( | xml_node | parent, | |
xml_node | node | |||
) |
Definition at line 5663 of file pugixml.cpp.
PUGI__FN bool node_is_before | ( | xml_node | ln, | |
unsigned int | lh, | |||
xml_node | rn, | |||
unsigned int | rh | |||
) |
Definition at line 5637 of file pugixml.cpp.
Referenced by document_order_comparator::operator()().
PUGI__FN void node_output | ( | xml_buffered_writer & | writer, | |
const xml_node & | node, | |||
const char_t * | indent, | |||
unsigned int | flags, | |||
unsigned int | depth | |||
) |
Definition at line 2740 of file pugixml.cpp.
References ctx_special_pcdata, pugi::format_indent, pugi::format_raw, n, pugi::node_cdata, pugi::node_comment, pugi::node_declaration, pugi::node_doctype, pugi::node_document, pugi::node_element, node_output_attributes(), pugi::node_pcdata, pugi::node_pi, PUGIXML_TEXT, text_output(), text_output_cdata(), and xml_buffered_writer::write().
Referenced by pugi::xml_node::print(), and pugi::xml_document::save().
PUGI__FN void node_output_attributes | ( | xml_buffered_writer & | writer, | |
const xml_node & | node, | |||
unsigned int | flags | |||
) |
Definition at line 2725 of file pugixml.cpp.
References ctx_special_attr, PUGIXML_TEXT, text_output(), and xml_buffered_writer::write().
Referenced by node_output().
PUGI__FN void normalize_space | ( | char_t * | buffer | ) |
Definition at line 6074 of file pugixml.cpp.
References ct_space, PUGI__IS_CHARTYPE, and write().
Referenced by xpath_ast_node::eval_string().
PUGI__FN FILE* open_file_wide | ( | const wchar_t * | path, | |
const wchar_t * | mode | |||
) |
Definition at line 3253 of file pugixml.cpp.
References convert_path_heap(), and xml_memory_management_function_storage< T >::deallocate.
Referenced by pugi::xml_document::load_file(), and pugi::xml_document::save_file().
void partition | ( | I | begin, | |
I | middle, | |||
I | end, | |||
const Pred & | pred, | |||
I * | out_eqbeg, | |||
I * | out_eqend | |||
) | [inline] |
Definition at line 5146 of file pugixml.cpp.
Referenced by Moses::ChartTranslationOptionList::ApplyThreshold(), and sort().
PUGI__FN const char_t* qualified_name | ( | const xpath_node & | node | ) |
Definition at line 5999 of file pugixml.cpp.
Referenced by xpath_ast_node::eval_string(), and local_name().
PUGI__FN void recursive_copy_skip | ( | xml_node & | dest, | |
const xml_node & | source, | |||
const xml_node & | skip | |||
) |
Definition at line 2877 of file pugixml.cpp.
References pugi::node_cdata, pugi::node_comment, pugi::node_declaration, pugi::node_doctype, pugi::node_element, pugi::node_pcdata, and pugi::node_pi.
Referenced by pugi::xml_node::append_copy(), pugi::xml_node::insert_copy_after(), pugi::xml_node::insert_copy_before(), and pugi::xml_node::prepend_copy().
Definition at line 5087 of file pugixml.cpp.
References swap().
Referenced by Moses::GetContext(), TranslationAnalysis::PrintTranslationAnalysis(), and xpath_sort().
PUGI__FN double round_nearest | ( | double | value | ) |
Definition at line 5987 of file pugixml.cpp.
Referenced by xpath_ast_node::eval_string().
PUGI__FN double round_nearest_nzero | ( | double | value | ) |
Definition at line 5992 of file pugixml.cpp.
Referenced by xpath_ast_node::eval_number().
PUGI__FN bool save_file_impl | ( | const xml_document & | doc, | |
FILE * | file, | |||
const char_t * | indent, | |||
unsigned int | flags, | |||
xml_encoding | encoding | |||
) |
Definition at line 3273 of file pugixml.cpp.
Referenced by pugi::xml_document::save_file().
PUGI__FN bool set_value_buffer | ( | char_t *& | dest, | |
uintptr_t & | header, | |||
uintptr_t | header_mask, | |||
char(&) | buf[128] | |||
) |
Definition at line 2990 of file pugixml.cpp.
References strcpy_insitu().
Referenced by set_value_convert().
PUGI__FN bool set_value_convert | ( | char_t *& | dest, | |
uintptr_t & | header, | |||
uintptr_t | header_mask, | |||
bool | value | |||
) |
Definition at line 3026 of file pugixml.cpp.
References PUGIXML_TEXT, and strcpy_insitu().
PUGI__FN bool set_value_convert | ( | char_t *& | dest, | |
uintptr_t & | header, | |||
uintptr_t | header_mask, | |||
double | value | |||
) |
Definition at line 3018 of file pugixml.cpp.
References set_value_buffer().
PUGI__FN bool set_value_convert | ( | char_t *& | dest, | |
uintptr_t & | header, | |||
uintptr_t | header_mask, | |||
unsigned int | value | |||
) |
Definition at line 3010 of file pugixml.cpp.
References set_value_buffer().
PUGI__FN bool set_value_convert | ( | char_t *& | dest, | |
uintptr_t & | header, | |||
uintptr_t | header_mask, | |||
int | value | |||
) |
Definition at line 3002 of file pugixml.cpp.
References set_value_buffer().
Referenced by pugi::xml_text::set(), and pugi::xml_attribute::set_value().
Definition at line 5214 of file pugixml.cpp.
References I, insertion_sort(), median(), and partition().
Referenced by util::AllIntersection(), Moses::BackwardsEdge::BackwardsEdge(), Moses::Manager::CalcLatticeSamples(), Moses::calcNgramExpectations(), lm::ngram::SortedVocabulary::ComputeRenumbering(), conservative_sort(), Rule::CreateTarget(), Moses::SparseHieroReorderingFeature::EvaluateWhenApplied(), Moses::ChartTranslationOptions::EvaluateWithSourceContext(), sapt::TSA< TKN >::findBranches(), search::VertexNode::FinishRoot(), util::FirstIntersection(), Moses::getLatticeMBRNBest(), getoccs(), Moses::VectorIndexSorter< VAL, COMP, IDX_T >::GetOrder(), Moses::AlignmentInfo::GetSortedAlignments(), Moses::HypothesisStackNormal::GetSortedList(), Moses::HypothesisStackCubePruning::GetSortedList(), Moses::HypothesisStackNormal::GetSortedListNOTCONST(), Moses::Mmsapt::GetTargetPhraseCollectionLEGACY(), sapt::imTSA< TOKEN >::imTSA(), util::JointSort(), lookup_phrase(), lookup_source(), lookup_target(), main(), sapt::mkTokenIndex(), sapt::TsaSorter< TOKEN, SORTER >::operator()(), Counter::operator()(), Output(), outputPhrasePair(), print_evidence_list(), Moses::Parameter::PrintCredit(), Moses::FeatureRegistry::PrintFF(), Cache::prune(), Moses::ChartHypothesisCollection::PruneToSize(), Moses::Counter< unsigned >::Quantize(), xpath_node_set_raw::remove_duplicates(), util::stream::BlockSorter< Compare >::Run(), MosesTraining::Syntax::GHKM::ScfgRule::ScfgRule(), stringdist::StringDiff::Segment::Segment(), Moses::TranslationOptionCollection::Sort(), Moses::ChartHypothesisCollection::SortHypotheses(), Moses::BitmapContainer::SortHypotheses(), Moses::DottedRuleStackOnDisk::SortSavedNodes(), MosesTraining::HoleCollection::SortSourceHoles(), MosesTraining::Syntax::FilterRuleTable::StringCfgFilter::StringCfgFilter(), MosesTraining::Syntax::GHKM::StsgRule::StsgRule(), write_tokenindex(), and xpath_sort().
PUGI__NS_END PUGI__NS_BEGIN PUGI__FN bool starts_with | ( | const char_t * | string, | |
const char_t * | pattern | |||
) |
Definition at line 5545 of file pugixml.cpp.
PUGI__FN char_t* strconv_cdata | ( | char_t * | s, | |
char_t | endch | |||
) |
Definition at line 1635 of file pugixml.cpp.
References ct_parse_cdata, ENDSWITH, gap::flush(), PUGI__IS_CHARTYPE, and gap::push().
Referenced by xml_parser::parse_exclamation().
PUGI__FN char_t* strconv_comment | ( | char_t * | s, | |
char_t | endch | |||
) |
Definition at line 1614 of file pugixml.cpp.
References ct_parse_comment, ENDSWITH, gap::flush(), PUGI__IS_CHARTYPE, and gap::push().
Referenced by xml_parser::parse_exclamation().
PUGI__FN char_t* strconv_escape | ( | char_t * | s, | |
gap & | g | |||
) |
Definition at line 1490 of file pugixml.cpp.
References utf8_writer::any(), and gap::push().
Referenced by strconv_pcdata_impl< opt_eol, opt_escape >::parse(), strconv_attribute_impl< opt_escape >::parse_eol(), strconv_attribute_impl< opt_escape >::parse_simple(), strconv_attribute_impl< opt_escape >::parse_wconv(), and strconv_attribute_impl< opt_escape >::parse_wnorm().
PUGI__FN bool strcpy_insitu | ( | char_t *& | dest, | |
uintptr_t & | header, | |||
uintptr_t | header_mask, | |||
const char_t * | source | |||
) |
Definition at line 1414 of file pugixml.cpp.
References xml_allocator::allocate_string(), xml_allocator::deallocate_string(), strcpy_insitu_allow(), and strlength().
Referenced by pugi::xml_text::set(), pugi::xml_node::set_name(), pugi::xml_attribute::set_name(), pugi::xml_node::set_value(), pugi::xml_attribute::set_value(), set_value_buffer(), and set_value_convert().
bool strcpy_insitu_allow | ( | size_t | length, | |
uintptr_t | allocated, | |||
char_t * | target | |||
) | [inline] |
Definition at line 1400 of file pugixml.cpp.
References strlength().
Referenced by strcpy_insitu().
PUGI__FN bool strequal | ( | const char_t * | src, | |
const char_t * | dst | |||
) |
Definition at line 177 of file pugixml.cpp.
Referenced by pugi::xpath_variable_set::add(), pugi::xml_node::attribute(), pugi::xml_node::child(), pugi::xml_node::find_child_by_attribute(), pugi::xml_node::next_sibling(), xpath_string::operator!=(), xpath_string::operator==(), and pugi::xml_node::previous_sibling().
PUGI__FN bool strequalrange | ( | const char_t * | lhs, | |
const char_t * | rhs, | |||
size_t | count | |||
) |
Definition at line 189 of file pugixml.cpp.
Referenced by pugi::xml_node::first_element_by_path(), namespace_uri_predicate::operator()(), and xpath_lexer_string::operator==().
PUGI__FN xpath_string string_value | ( | const xpath_node & | na, | |
xpath_allocator * | alloc | |||
) |
Definition at line 5580 of file pugixml.cpp.
References xpath_string::append(), n, pugi::node_cdata, pugi::node_comment, pugi::node_document, pugi::node_element, pugi::node_pcdata, pugi::node_pi, and xpath_string_const().
Referenced by xpath_ast_node::eval_number(), and xpath_ast_node::eval_string().
PUGI__NS_END PUGI__NS_BEGIN PUGI__FN size_t strlength | ( | const char_t * | s | ) |
Definition at line 165 of file pugixml.cpp.
Referenced by xpath_string::append(), xpath_string::length(), pugi::xml_document::load(), new_xpath_variable(), pugi::xpath_variable::set(), strcpy_insitu(), strcpy_insitu_allow(), translate(), and xml_buffered_writer::write().
Definition at line 5069 of file pugixml.cpp.
References T.
Referenced by util::detail::JointIter< KeyIter, ValueIter >::DeepSwap(), Moses::LanguageModelKen< Model >::EvaluateWhenApplied(), lm::ngram::ExtendLoop(), MosesTraining::FlipAlignment(), median3(), util::stream::Sort< Compare, Combine >::Merge(), lm::ngram::RuleScore< M >::NonTerminal(), partition(), Moses::TranslationOptionList::PruneByThreshold(), Moses::LanguageModelKen< Model >::ReportHistoryOrder(), reverse(), and lm::ngram::WriteWordsWrapper::Write().
PUGI__FN void text_output | ( | xml_buffered_writer & | writer, | |
const char_t * | s, | |||
chartypex_t | type, | |||
unsigned int | flags | |||
) |
Definition at line 2697 of file pugixml.cpp.
References pugi::format_no_escapes, text_output_escaped(), and xml_buffered_writer::write().
Referenced by node_output(), and node_output_attributes().
PUGI__FN void text_output_cdata | ( | xml_buffered_writer & | writer, | |
const char_t * | s | |||
) |
Definition at line 2705 of file pugixml.cpp.
References xml_buffered_writer::write().
Referenced by node_output().
PUGI__FN void text_output_escaped | ( | xml_buffered_writer & | writer, | |
const char_t * | s, | |||
chartypex_t | type | |||
) |
Definition at line 2658 of file pugixml.cpp.
References PUGI__IS_CHARTYPEX, and xml_buffered_writer::write().
Referenced by text_output().
PUGI__FN char_t tolower_ascii | ( | char_t | ch | ) |
Definition at line 5575 of file pugixml.cpp.
Referenced by xpath_ast_node::eval_boolean().
PUGI__FN void translate | ( | char_t * | buffer, | |
const char_t * | from, | |||
const char_t * | to | |||
) |
Definition at line 6097 of file pugixml.cpp.
References find_char(), PUGI__DMC_VOLATILE, strlength(), and write().
PUGI__FN void truncate_zeros | ( | char * | begin, | |
char * | end | |||
) |
Definition at line 5810 of file pugixml.cpp.
Referenced by convert_number_to_mantissa_exponent().
Definition at line 5092 of file pugixml.cpp.
Referenced by lookup_phrase(), and xpath_node_set_raw::remove_duplicates().
PUGI__FN xpath_node xpath_first | ( | const xpath_node * | begin, | |
const xpath_node * | end, | |||
xpath_node_set::type_t | type | |||
) |
Definition at line 6280 of file pugixml.cpp.
References min_element().
Referenced by pugi::xpath_node_set::first(), and xpath_node_set_raw::first().
PUGI__NS_END PUGI__NS_BEGIN PUGI__FN xpath_node_set::type_t xpath_sort | ( | xpath_node * | begin, | |
xpath_node * | end, | |||
xpath_node_set::type_t | type, | |||
bool | rev | |||
) |
Definition at line 6265 of file pugixml.cpp.
References reverse(), and sort().
Referenced by pugi::xpath_node_set::sort(), and xpath_node_set_raw::sort_do().
PUGI__FN xpath_string xpath_string_const | ( | const char_t * | str | ) |
Definition at line 5538 of file pugixml.cpp.
Referenced by convert_number_to_string(), xpath_ast_node::eval_string(), and string_value().