/disk4/html/www/moses/doxygen/mosesdecoder/phrase-extract/extract-mixed-syntax/pugixml.cpp File Reference

#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_allocatorget_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 Tnew_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 Documentation

#define ENDSWITH ( c,
 )     ((c) == (e) || ((c) == 0 && endch == (e)))

#define PUGI__CHECK_ERROR ( err,
m   )     { if (*s == 0) PUGI__THROW_ERROR(err, m); }

#define PUGI__DMC_VOLATILE

Definition at line 91 of file pugixml.cpp.

Referenced by get_buffer_encoding(), and translate().

 
#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)

#define PUGI__IS_CHARTYPE_IMPL ( c,
ct,
table   )     (table[static_cast<unsigned char>(c)] & (ct))

Definition at line 984 of file pugixml.cpp.

#define PUGI__IS_CHARTYPEX ( c,
ct   )     PUGI__IS_CHARTYPE_IMPL(c, ct, chartypex_table)

#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) )

 
#define PUGI__POPNODE (  )     { cursor = cursor->parent; }

#define PUGI__PUSHNODE ( TYPE   )     { cursor = append_node(cursor, alloc, TYPE); if (!cursor) PUGI__THROW_ERROR(status_out_of_memory, s); }

#define PUGI__SCANFOR ( X   )     { while (*s != 0 && !(X)) ++s; }

#define PUGI__SCANWHILE ( X   )     { while ((X)) ++s; }

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]; }

#define PUGI__THROW_ERROR ( err,
m   )     return error_offset = m, error_status = err, static_cast<char_t*>(0)


Typedef Documentation

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.

Definition at line 159 of file pugixml.cpp.


Enumeration Type Documentation

enum ast_type_t

Enumerator:
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 

Definition at line 6715 of file pugixml.cpp.

enum axis_t

Enumerator:
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 

Definition at line 6776 of file pugixml.cpp.

enum chartype_t

Enumerator:
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.

Enumerator:
ctx_special_pcdata 
ctx_special_attr 
ctx_start_symbol 
ctx_digit 
ctx_symbol 

Definition at line 952 of file pugixml.cpp.

enum lexeme_t

Enumerator:
lex_none 
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 

Definition at line 6408 of file pugixml.cpp.

enum nodetest_t

Enumerator:
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.


Function Documentation

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

bool allow_insert_child ( xml_node_type  parent,
xml_node_type  child 
) [inline]

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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 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 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().

Here is the call graph for this function:

Here is the caller graph for this function:

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   
) [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().

Here is the call graph for this function:

Here is the caller graph for this function:

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   
) [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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

PUGI__FN bool convert_string_to_number ( const char_t *  begin,
const char_t *  end,
double *  out_result 
)

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().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename T >
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().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename I >
void copy_backwards ( I  begin,
I  end,
I  target 
) [inline]

Definition at line 5114 of file pugixml.cpp.

Referenced by insertion_sort().

Here is the caller graph for this function:

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.

Here is the call graph for this function:

template<typename T >
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().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

PUGI__FN const void* document_order ( const xpath_node &  xnode  ) 

Definition at line 5670 of file pugixml.cpp.

Referenced by document_order_comparator::operator()().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

xml_allocator& get_allocator ( const xml_node_struct *  node  )  [inline]

PUGI__FN xml_encoding get_buffer_encoding ( xml_encoding  encoding,
const void *  contents,
size_t  size 
)

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

PUGI__FN xml_encoding get_write_encoding ( xml_encoding  encoding  ) 

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

template<typename I , typename Pred , typename T >
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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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 
) [inline]

template<typename T >
PUGI__FN xml_parse_status load_stream_data_seek ( std::basic_istream< T > &  stream,
void **  out_buffer,
size_t *  out_size 
) [inline]

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 
) [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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

template<typename I , typename Pred >
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().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename I , typename Pred >
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().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename I , typename Pred >
I min_element ( I  begin,
I  end,
const Pred &  pred 
) [inline]

Definition at line 5076 of file pugixml.cpp.

References I.

Referenced by MosesTuning::Reference::CalcShortest(), lm::ngram::ShowSizes(), and xpath_first().

Here is the caller graph for this function:

PUGI__FN const char_t* namespace_uri ( const xpath_node &  node  ) 

Definition at line 6069 of file pugixml.cpp.

References namespace_uri().

Here is the call graph for this function:

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().

Here is the caller graph for this function:

PUGI__FN xpath_variable* new_xpath_variable ( xpath_value_type  type,
const char_t *  name 
)

template<typename T >
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().

Here is the call graph for this function:

Here is the caller graph for this function:

PUGI__FN unsigned int node_height ( xml_node  n  ) 

Definition at line 5625 of file pugixml.cpp.

Referenced by document_order_comparator::operator()().

Here is the caller graph for this function:

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()().

Here is the caller graph for this function:

PUGI__FN void node_output ( xml_buffered_writer writer,
const xml_node &  node,
const char_t *  indent,
unsigned int  flags,
unsigned int  depth 
)

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename I , typename Pred >
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.

References I, and swap().

Referenced by Moses::ChartTranslationOptionList::ApplyThreshold(), and sort().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

PUGI__FN void recursive_copy_skip ( xml_node &  dest,
const xml_node &  source,
const xml_node &  skip 
)

template<typename I >
void reverse ( I  begin,
I  end 
) [inline]

Definition at line 5087 of file pugixml.cpp.

References swap().

Referenced by Moses::GetContext(), TranslationAnalysis::PrintTranslationAnalysis(), and xpath_sort().

Here is the call graph for this function:

Here is the caller graph for this function:

PUGI__FN double round_nearest ( double  value  ) 

Definition at line 5987 of file pugixml.cpp.

Referenced by xpath_ast_node::eval_string().

Here is the caller graph for this function:

PUGI__FN double round_nearest_nzero ( double  value  ) 

Definition at line 5992 of file pugixml.cpp.

Referenced by xpath_ast_node::eval_number().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename I , typename Pred >
void sort ( I  begin,
I  end,
const Pred &  pred 
) [inline]

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

PUGI__FN char_t* strconv_escape ( char_t *  s,
gap g 
)

PUGI__FN bool strcpy_insitu ( char_t *&  dest,
uintptr_t &  header,
uintptr_t  header_mask,
const char_t *  source 
)

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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 
)

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==().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

PUGI__NS_END PUGI__NS_BEGIN PUGI__FN size_t strlength ( const char_t *  s  ) 

template<typename T >
void swap ( T lhs,
T rhs 
) [inline]

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

PUGI__FN char_t tolower_ascii ( char_t  ch  ) 

Definition at line 5575 of file pugixml.cpp.

Referenced by xpath_ast_node::eval_boolean().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

PUGI__FN void truncate_zeros ( char *  begin,
char *  end 
)

Definition at line 5810 of file pugixml.cpp.

Referenced by convert_number_to_mantissa_exponent().

Here is the caller graph for this function:

template<typename I >
I unique ( I  begin,
I  end 
) [inline]

Definition at line 5092 of file pugixml.cpp.

References I, and write().

Referenced by lookup_phrase(), and xpath_node_set_raw::remove_duplicates().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the caller graph for this function:


Generated on Thu Jul 6 00:31:39 2017 for Moses by  doxygen 1.5.9